Skocz do zawartości

Wyświetlacz 8 cyfr 12V i PCF8574


Belferek

Pomocna odpowiedź

Dzień dobry,
Planuję budowę wyświetlacza 7 segmentowego o pojemności 8 cyfr i chciałbym zasięgnąć waszej opinii.

Do budowy wyświetlacza wykorzystam standardową taśmę LED (120 LED na 1m / 9,6W). Wyświetlacz ten będzie elementem urządzenia sterowanego przez Arduino UNO (ew. ESP8266 NodeMCU v2). Mam pewne obawy co do sterowania wyświetlaczem i tu liczę na Wasze wskazówki.

Na przykładzie jednego wyświetlacza (cyfry) chciałbym przedstawić swoją koncepcję układu.

Sterowanie chciałbym zrealizować przez multipleksowanie wyświetlaczy. Portów oczywiście braknie więc chcę wykorzystać ekspandery PCF8574 2 szt (jeden do obsługi wspólnej anody wyświetlaczy, a drugi do obsługi segmentów A-G i DP). Ponieważ wydajność prądowa PCF8574 jest za niska planuję zastosować dodatkowe tranzystory kluczujące BC328 (T2) / BC338 (T1).

Wspólne anody wyświetlaczy przez klucze tranzystorowe zasilane będą z modułu wykonawczego MOD-30 z tranzystorem MOSFET. Moduł ten będzie sterowany sygnałem PWM z Arduino (wspólna dla wszystkich cyfr regulacja jasności).

Na załączonym rysunku przedstawiam schemat poglądowy sterowania pojedynczym wyświetlaczem 7 segmentowym (pojedynczą cyfrą). Takich układów oczywiście będzie 8 (pojemność wyświetlacza 8 cyfr).

Co sądzicie o takim rozwiązaniu? Co można poprawić (i jak 🙂?

Gdyby zastąpić PCF8574 układem MAX7219 czy proponowane rozwiązanie kluczy tranzystorowych będzie właściwe?

Będę wdzięczny za wszelkie sugestie.

Pozdrawiam,

Link do komentarza
Share on other sites

Straszną rzeźbę sobie wymyśliłeś. A nie łatwiej by było po prostu wziąć na przykład taki HT16K33 i mieć wszystko od razu w jednym czipie sterowanym po I2C? Do tego jeszcze ci klawiaturę obsłuży.

[ Dodano: 12-12-2017, 00:40 ]

Ach, przepraszam, nie zwróciłem uwagi na moc.

Link do komentarza
Share on other sites

No właśnie moc. To będzie wyświetlacz gdzieś 130 x 25 cm 🙂. Sam układ HTK jaki wskazałeś wygląda ciekawie - nie znałem go. Pewnie też wymagałby kluczy tranzystorowych. Tylko czy moja propozycja kluczy jest właściwa?

Link do komentarza
Share on other sites

Zarówno HT16K33 jak i MAX7219 to są dedykowane układy do ledów, które mają w sobie wbudowane na wyjściach układy utrzymujące stały prąd — dlatego nie trzeba dodawać oporników do LED-ów nimi sterowanych. Nie mam pojęcia jak się zachowają gdy zamiast obciążenia dostaną na wyjściu taki tranzystor — podejrzewam, że pewnie nie najlepiej, ale brakuje mi wiedzy żeby taką sytuację przewidzieć — być może kto inny podpowie.

Link do komentarza
Share on other sites

Zarejestruj się lub zaloguj, aby ukryć tę reklamę.
Zarejestruj się lub zaloguj, aby ukryć tę reklamę.

jlcpcb.jpg

jlcpcb.jpg

Produkcja i montaż PCB - wybierz sprawdzone PCBWay!
   • Darmowe płytki dla studentów i projektów non-profit
   • Tylko 5$ za 10 prototypów PCB w 24 godziny
   • Usługa projektowania PCB na zlecenie
   • Montaż PCB od 30$ + bezpłatna dostawa i szablony
   • Darmowe narzędzie do podglądu plików Gerber
Zobacz również » Film z fabryki PCBWay

Nie tylko z T2 będą problemy. Jeśli ten MOD-30 to: https://botland.com.pl/przelaczniki-cyfrowe/3385-modul-wykonawczy-z-tranzystorem-n-mosfet-irfr4105z-mod-30.html użycie NMOS-a to raczej zły pomysł. Będzie miał ciężkie życie w układzie wtórnika źródłowego - ale pewnie uratują go diody i niskie napięcie na bramce (z arduino), więc po prostu nic nie zadziała (to ta lepsza opcja).

Więc pierwsze pytanie to ten nieszczęsny MOD-30, chodzi o podlinkowany moduł?

Kolejna sprawa to diody: jak listwa 120 diod ma się do wyświetlacza 8 cyfr? Może tylko ja nie rozumiem, ale 8 cyfr razy 7 segmentów to 56 diod. Więc to ma być 56 listw po 120 diodek, czy listwa pocięta na 56 fragmentów (dwie diody na segment), a może coś innego?

To ważne pytanie, bo od niego zależy pobór prądu oraz ewentualne napięcia.

Link do komentarza
Share on other sites

To w ogóle nie zdziała. Jeżeli taśma ma już w sobie oporniki dopasowujące zespoły LEDów do 12V, to multipleksowanie 1:8 obniży jasność wszystkiego w stosunku 1:8. To będzie ledwo widać. Musisz tu albo:

- użyć LEDów bez oporników,
- zostawiając multipleksowanie sterować to z zasilania 8 razy wyższego,
- zrobić wyświetlacz statyczny na 12V, czyli 64 wyjścia z 8 ekspanderów (lub 4 sztuk 16-bitowych) i 64 tranzystorki npn lub NMOS.

Pomijam fakty:

- Bezsensownego układu regulacji jasności. Ani to nie zdziała w tej konfiguracji ani nie jest potrzebne. Przecież mając multipleksowanie możesz modulować czas włączania poszczególnych cyfr synchronicznie z samym procesem wyświetlania. Wystarczy, że jeden timer będzie regularnie, np. co 2ms zgłaszał przerwanie i w nim będziesz zapalał kolejną cyfrę. Jednocześnie odpalasz inny timer (w trybie one-shot) zawsze na czas 0..1.9ms, który po odliczeniu wyłączy wszystko. Regulując czas tego drugiego timera masz zmiany jasności.

- Sterowania górnych tranzystorów. Oba nie zadziałają. NMOS nigdy się nie włączy a pnp nigdy nie wyłączy.

EDIT: Oczywiście da się skorzystać np. z MAX7219 i podłączyć mu drivery zamiast małych LEDów, ale nie widzę istotnej przewagi nad bezpośrednim sterowaniem pola wyświetlacza z procesora no może poza tym, że błąd w programie i zwis systemu objawiający się zatrzymaniem procesu multipleksowania zwykle niszczy lub bardzo przeciąża LEDy (bo dostają 8x większy prąd niż znamionowy). Zwykle w takich przypadkach dostawia się albo sprzętowy układ wykrywający zatrzymanie (jakiś podtrzymywany impulsami anod przerzutnik monostabilny) albo testuje się system na czymś małym i dorabia dobrze przetestowany watchdog w procku.

  • Pomogłeś! 1
Link do komentarza
Share on other sites

Dziękuję za konstruktywne uwagi - nie pomyślałem (za dużo pomysłów na raz i późna pora).

Kilka dodatkowych wyjaśnień.

Do budowy wyświetlacza planuję użyć pociętej na kawałki taśmy LED 5m (120 led/m 9,6W/m). Taśma ta umożliwia podział co 2,5cm i dla zbudowania pojedynczego segmentu wyświetlacza chcę użyć odcinka 7,5 cm taśmy czyli 9 LED. Taki odcinek (segment) z dokonanych przeliczeń będzie w stanie pobrać max. ok 60mA czyli pojedyncza cyfra max. ok. 420mA.

To ma być duuuży wyświetlacz.

Na module z MOSFETem chciałem zrealizować wspólną dla wszystkich 8 cyfr regulację jasności (taka jest wstępna koncepcja), ale to muszę jeszcze przemyśleć więc na razie o tym zapomnijmy.

Pozostaje kwestia kluczy tranzystorowych - czy proponowane rozwiązanie będzie właściwe?

Dołączam zaktualizowany schemat poglądowy.

Pozdrawiam,

Link do komentarza
Share on other sites

Nie, niczego nie podłączaj! Ten górny pnp będzie zawsze włączony a jego złącze BE będzie przez 1k pompować 12V do wyjścia ekspandera. Tego tak się nie robi. Pomyśl samodzielnie i nie dołączaj się do głupiego trendu "najwyżej coś spalę". Musisz dodać npn który przełoży sygnał ekspandera na prąd "zasysany" z plusa.

Link do komentarza
Share on other sites

Marku, daj się człowiekowi nauczyć na błędach - raz napisałeś, nie dotarło. Lepiej się zapamiętuje jak się najpierw trochę pomęczy. Na szczęście to raptem kilka elementów, a zdobyta wiedza bezcenna 🙂

Link do komentarza
Share on other sites

Dołącz do dyskusji, napisz odpowiedź!

Jeśli masz już konto to zaloguj się teraz, aby opublikować wiadomość jako Ty. Możesz też napisać teraz i zarejestrować się później.
Uwaga: wgrywanie zdjęć i załączników dostępne jest po zalogowaniu!

Anonim
Dołącz do dyskusji! Kliknij i zacznij pisać...

×   Wklejony jako tekst z formatowaniem.   Przywróć formatowanie

  Dozwolonych jest tylko 75 emoji.

×   Twój link będzie automatycznie osadzony.   Wyświetlać jako link

×   Twoja poprzednia zawartość została przywrócona.   Wyczyść edytor

×   Nie możesz wkleić zdjęć bezpośrednio. Prześlij lub wstaw obrazy z adresu URL.

×
×
  • Utwórz nowe...

Ważne informacje

Ta strona używa ciasteczek (cookies), dzięki którym może działać lepiej. Więcej na ten temat znajdziesz w Polityce Prywatności.