-
Path: news-archive.icm.edu.pl!agh.edu.pl!news.agh.edu.pl!newsfeed2.atman.pl!newsfeed.
atman.pl!.POSTED!not-for-mail
From: Piotrne <p...@p...onet.pl>
Newsgroups: pl.misc.elektronika
Subject: Wyświetlacz matrycowy
Date: Mon, 18 Aug 2014 01:47:41 +0200
Organization: ATMAN - ATM S.A.
Lines: 66
Message-ID: <lsreus$9uf$1@node1.news.atman.pl>
NNTP-Posting-Host: pc-nest01-138.sikornik.net
Mime-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
X-Trace: node1.news.atman.pl 1408319260 10191 91.123.216.138 (17 Aug 2014 23:47:40
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Sun, 17 Aug 2014 23:47:40 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 5.2; rv:24.0) Gecko/20100101 Thunderbird/24.4.0
Xref: news-archive.icm.edu.pl pl.misc.elektronika:669582
[ ukryj nagłówki ]Dawno temu kupiłem kilka wyświetlaczy matrycowych 5x7
(takich: http://www.farnell.com/datasheets/1519942.pdf).
Miały służyć jako wyświetlacz zegara z "ładniejszymi"
cyferkami niż 7-segmentowe. Ale z powodu pracochłonnego
sterowania zrobiłem tylko zegar na małym Atmelu z jednym
wyświetlaczem, z przewijanym tekstem.
Znalazłem te wyświetlacze w szafie i sprawdziłem, czy może
istnieje już jakiś wygodny w użyciu sterownik (żeby jednak
zrobić kompletny zegar). Znalazłem MAX6953 sterujący czterema
takimi wyświetlaczami. Ale jest według mnie zbyt skomplikowany
w obsłudze i trudno go kupić.
Znalazłem też kilka opisów projektów sterowania wieloma
wyświetlaczami 5x7 (np. cgh_SVRqchs na YT). Zwykle zastosowanych
jest kilka rejestrów przesuwnych, służących do wybierania
kolejnych kolumn. Diodami w rzędach sterują oddzielne wyjścia
mikrokontrolera. Przy 8 modułach 5x7 jest 40 kolumn,
co sprawia problemy: szybkość odświeżania oraz konieczność
stosowania dużych prądów chwilowych. Każda kolumna świeci przez
mniej niż 1/40 czasu i musi świecić odpowiednio jasno.
Dlatego chcę zrobić prosty (w montażu) i tani sterownik wyświetlacza.
Jedną matrycą 5x7 sterowałby jeden układ ATtiny2313 za ok. 5 zł.
Ogólna koncepcja: głównym zadaniem 2313 będzie multipleksowanie
pięciu kolumn i wyświetlanie 5x7 punktów, możliwie szybko (10 kHz?).
Dane do wyświetlania przesyłane byłyby szeregowo, np. przez
USART. Komunikacja z głównym procesorem byłaby jednokierunkowa
- procesor tylko wysyła dane ("bitmapę") do wyświetlacza.
Przy zastosowaniu wielu modułów, wszystkie wejścia RxD
są połączone, a każdy moduł 5x7 ma indywidualny numer 8-bitowy
nadany na stałe podczas programowania. Procesor wysyła "słowo
sterujące", numer modułu i 5 (lub 7) bajtów bitmapy. W razie
potrzeby można zrobić buforowanie i przesyłane dane tylko
zapamiętywać (a wyświetlać stare). Dopiero w chwili wysłania
ustalonego "słowa synchronizującego" (które dotrze do wszystkich
modułów jednocześnie) może nastąpić aktualizacja treści.
Takie rozwiązanie pozwoli na realizację precyzyjnego synchronizowania
wyświetlanej treści, "skalowalność" (w podstawowej wersji do 256
modułów) i małą ilość dodatkowych elementów (na każdy moduł 5x7
jeden układ 2313 i kilka rezystorów). Przy szybkości transmisji
250 kbps, 7 bajtach potrzebnych na przesłanie danych do jednego
modułu i 8 modułach daje to możliwość zmiany treści całego
wyświetlacza około 450 razy na sekundę.
Czy ktoś mógłby ocenić powyższą koncepcję (np. napisać, że da się
łatwiej używając ...)?
Drugi element to właściwy zegar. Skoro ma być "inny", to będzie
różnił się od zwykłych następująco:
- Zamiast zwykłego rezonatora kwarcowego (albo 50 Hz z sieci, DCF, GPS)
będzie miał układ DS32KHZ - generator 32768 Hz z kompensacją temperatury.
Jest tam termometr i zapisana funkcja częstotliwość = f(temperatura).
Generator automatycznie dokonuje korekty. Układ kosztuje 12 zł.
- Zegar będzie wyświetlał czas z rozdzielczością 0,1 sekundy
(a może 0,01 sekundy). M.in. do tego jest potrzebne dokładne
sterowanie wyświetlaczem.
- Zależnie od oprogramowania - wyświetlanie fontem "proporcjonalnym",
fragment wyświetlacza przeznaczony na "linijkę świetlną" pokazującą
dziesiąte części sekundy itp.
A może ktoś już zrobił coś podobnego?
P.
Następne wpisy z tego wątku
- 18.08.14 09:00 Zbych
- 18.08.14 19:26 Piotrne
- 18.08.14 20:19 Zbych
- 19.08.14 00:40 Marek Wodzinski
- 19.08.14 01:45 Piotrne
- 19.08.14 02:02 Jawi
- 19.08.14 12:47 janusz_k
- 19.08.14 19:51 Piotr Wyderski
- 20.08.14 02:14 Pszemol
- 20.08.14 09:33 Zbych
- 20.08.14 12:06 janusz_k
- 21.08.14 02:33 Pszemol
- 21.08.14 10:24 AlexY
- 21.08.14 11:15 janusz_k
- 22.08.14 19:29 Pszemol
Najnowsze wątki z tej grupy
- DS1813-10 się psuje
- Taki tam szkolny problem...
- LIR2032 a ML2032
- SmartWatch Multimetr bezprzewodowy
- olej psuje?
- Internet w lesie - Starlink
- Opis produktu z Aliexpress
- No proszę, a śmialiście się z hindusów.
- Zewnętrzne napięcie referencyjne LM385 1,2V -> 100mV dla ICL7106, Metex M-3800
- karta parkingowa
- Wl/Wyl (On/Off) bialy/niebieski
- I3C
- Pytanie o transformator do dzwonka
- międzymordzie USB 3.2 jako 2.0
- elektronicy powinni pomysleć o karierze elektryka
Najnowsze wątki
- 2024-11-25 Karty przedpłacone (podarunkowe) Google Play - pytanie do korzystających
- 2024-11-26 wina Tóska
- 2024-11-26 Rewolucja/Rewelacja!
- 2024-11-25 grupa ożyła ;)
- 2024-11-24 Być jak Clint
- 2024-11-24 Rura kanalizacja konceptu Franke = problem
- 2024-11-25 Wrocław => Lead Java EE Developer <=
- 2024-11-25 Warszawa => Business Development Manager - Network and Network Securit
- 2024-11-25 Kraków => Programista Full Stack (.Net Core) <=
- 2024-11-25 Lublin => Senior PHP Developer <=
- 2024-11-25 Karlino => Konsultant wewnętrzny SAP (FI/CO) <=
- 2024-11-25 Warszawa => ECM Specialist / Consultant <=
- 2024-11-25 Katowice => Regionalny Kierownik Sprzedaży (OZE) <=
- 2024-11-25 Warszawa => Senior Frontend Developer (React + React Native) <=
- 2024-11-25 Lublin => Inżynier Serwisu Sprzętu Medycznego <=