logo elektroda
logo elektroda
X
logo elektroda
REKLAMA
REKLAMA
Adblock/uBlockOrigin/AdGuard mogą powodować znikanie niektórych postów z powodu nowej reguły.

Atmega, 74HC595, duże wyświetlacze 7-segmentowe, pytanie dotyczące zasilania

hubert9999 12 Gru 2013 14:01 3252 9
REKLAMA
  • #1 13052546
    hubert9999
    Poziom 10  
    Posty: 7
    Ocena: 1
    Witam wszystkich serdecznie. Jako że na tym forum jest to mój pierwszy post (mimo, że forum przeglądam często i od dawna), to proszę o wybaczenie mi wszelkich gaf.

    Przejdę może od razu do sedna. Planuję zrobić coś na kształt tablicy wyników sportowych. Cały układ chcę zrobić na Atmedze 328p oraz wyświetlaczach 7-segmentowych o wysokości znaku 10 cm (wspólna anoda). Potrzebuję 10 pozycji (stoper, wyniki, sety), tak więc wykorzystam 10 takich wyświetlaczy. Sam pomysł na program już mam, gdyż w wolnej chwili robiłem zegar, z tym że do wyświetlania użyłem HD44780, tu jedyną różnicą jest sposób wyświetlania. Jednak jako że Atmegi programuję sobie w ArduinoIDE przez ISP, to użyłem sobie biblioteki pineapple, dzięki której sterowanie wyświetlaczami jest dziecinnie proste. Multipleksowanie zrobiłem przez rejestry 74HC595. Łącząc je szeregowo mogę podłączyć dowolnie dużo jak na moje potrzeby wyświetlaczy. Na małych wyświetlaczach (10 cm) wszystko działa super. Problem pojawił się dopiero, gdy przyszło podłączyć docelowy wyświetlacz. Na początek podłączam jeden dla uproszczenia.

    Problemem jest oczywiście zasilanie- wyświetlacz ten potrzebuje około 9V na segment, a jak wiadomo wyjścia cyfrowe atmegi dają jedynie 5V. Na początku próbowałem podłączyć zasilacz 9V w ten sposób, że zrobiłem wspólną masę z atmegą, a do anod podłączałem plusa. Jednak rejestry zaczęły się grzać a wyświetlacz też nie chodził do końca dobrze. Pierwsze co przyszło mi do głowy, to podłączenie każdego wyjścia sterującego rejestru do bazy tranzystora npn (BC337). Kolektor podłączam do katod wyświetlacza, zaś emiter do masy. Zewnętrzy zasilacz, do zasilania wyświetlaczy wpiąłem zaś tak, że plus idzie do wspólnej anody wyświeltacza, zaś minus idzie do wspólnej masy z Atmega. Oczywiście ze względu na to, że użyłem tranzystorów npn, musiałem w moim programie zmienić sposób sterowania na taki jak dla wspólnej katody.

    W internecie znalazłem schemat oddający mniej więcej to, co zrobiłem pomiędzy rejestrem a wyświetlaczem.

    Atmega, 74HC595, duże wyświetlacze 7-segmentowe, pytanie dotyczące zasilania

    Różnicą są tutaj użyte tranzystory. Do baz tranzystorów dałem rezystory 220 om.
    Po takim podłączeniu wszystko pięknie działa. Wszystko działa tak jak chciałem właściwie mógłbym już zabierać się do dalszej pracy i dodawać kolejne wyświetlacze jednak mam wątpliwości czy nie zrobiłem czegoś "nie tak". Czy taki sposób jest dopuszczalny i nie niesie ze sobą żadnych pułapek na dłuższą metę? Czy nie powinienem jeszcze czegoś dodać, może coś zmienić? Zastanawiam się również nad tym, czy nie mógłbym zamiast do każdego wyświetlacza używać 7 tranzystorów (nie używam wogóle DP) skorzystać z układu ULN2003. Na etapie składania w całość znacznie ułatwiłoby mi to pracę, gdybym miał jednego scalaka do każdego wyświetlacza. Bardzo proszę o pomoc.

    Pozdrawiam
  • REKLAMA
  • Pomocny post
    #2 13052593
    Gronczyński

    Poziom 20  
    Posty: 285
    Pomógł: 33
    Ocena: 51
    ULN2003 ma po 500mA na driver, jeśli taki prąd Ci wystarczy to można go zastosować.
    Jaki prąd pobiera każdy z tych dużych segmentów LED?
    Konto firmowe:
    Elegron - Hubert Gronczyński
    Leśna 16/7, Pionki, 26-670 | Tel.: 502XXXXXX (Pokaż) | Strona WWW: elegron.pl
  • Pomocny post
    #3 13052595
    conan02

    Poziom 30  
    Posty: 913
    Pomógł: 174
    Ocena: 91
    Schemat jest poprawny, do baz tranzystorów można dać rezystory o większej wartości (1k). Jeśli chodzi o oszczędność miejsca na płytce to oczywiście można użyć układu ULN, to są Darlingtony, więc rezystory można będzie podnieść do 4k7.
    Używałem podobnych wyświetlaczy, prąd na segment jest 20-25mA, diody są łączone szeregowo więc moc świecenia uzyskiwana jest przez wyższe napięcie.
    Konto firmowe:
    Komputer Serwis
    Lwowska 147, Nowy Sącz, 33-300 | Tel.: 602-XXX-XXX (Pokaż)
  • REKLAMA
  • #4 13052607
    Gronczyński

    Poziom 20  
    Posty: 285
    Pomógł: 33
    Ocena: 51
    Na dobrą sprawę to ULN2003 ma w sobie rezystory po 2,7kΩ na wejściach więc można go spokojnie podpiąć bezpośrednio pod wyjścia Atmegi i jeszcze zyskać troszeczkę placu.
    Konto firmowe:
    Elegron - Hubert Gronczyński
    Leśna 16/7, Pionki, 26-670 | Tel.: 502XXXXXX (Pokaż) | Strona WWW: elegron.pl
  • #5 13052623
    hubert9999
    Poziom 10  
    Posty: 7
    Ocena: 1
    Według datasheetu jest max 30mA na segment, więc prądu spokojnie wystarczy :) W takim razie chciałbym jeszcze zapytać, czy powinienem jeszcze pomyśleć o jakichś zabezpieczeniach od strony zasilania dla wyświetlaczy? Finalnie planuję dać zasilacz stabilizowany 9V, ale może coś jeszcze by się przydało?
  • REKLAMA
  • #6 13052645
    Gronczyński

    Poziom 20  
    Posty: 285
    Pomógł: 33
    Ocena: 51
    To czy coś jeszcze by się przydało, to już zależy od tego jak planujesz wszytko połączyć. Jakie odległości między sterownikiem, a wyświetlaczem. Na długich przewodach możesz siać zakłóceniami więc może się okazać że jakieś filtry EMC mogą być wskazane.
    Konto firmowe:
    Elegron - Hubert Gronczyński
    Leśna 16/7, Pionki, 26-670 | Tel.: 502XXXXXX (Pokaż) | Strona WWW: elegron.pl
  • REKLAMA
  • #7 13052652
    hubert9999
    Poziom 10  
    Posty: 7
    Ocena: 1
    Nie no przewody będą mieć max kilka cm...

    Jeszcze tylko ostatnie pytanko. Czy mogę podłączać te wyświetlacze bezpośrednio do zasilacza bez żadnych rezystorów? Według specyfikacji jest podane max 10V na segment a zasilacz ma 9 więc teoretycznie mogę zrobić tak (i właściwie tak zrobiłem i było ok). Chodzi mi tylko czy na dłuższą metę nie spalę niczego, jeśli przez cały czas będą świecić z prawie maksymalną jasnością?
  • #8 13057392
    Gronczyński

    Poziom 20  
    Posty: 285
    Pomógł: 33
    Ocena: 51
    hubert9999 napisał:
    Czy mogę podłączać te wyświetlacze bezpośrednio do zasilacza bez żadnych rezystorów?
    Co to za wyświetlacz, podaj symbol, bo tak to nikt nie zgadnie.
    Konto firmowe:
    Elegron - Hubert Gronczyński
    Leśna 16/7, Pionki, 26-670 | Tel.: 502XXXXXX (Pokaż) | Strona WWW: elegron.pl
  • #9 13058520
    hubert9999
    Poziom 10  
    Posty: 7
    Ocena: 1
    Wyświetlacze mają nazwę lts400au
  • #10 13058546
    krru
    Poziom 33  
    Posty: 1819
    Pomógł: 230
    Ocena: 214
    hubert9999 napisał:
    Jeszcze tylko ostatnie pytanko. Czy mogę podłączać te wyświetlacze bezpośrednio do zasilacza bez żadnych rezystorów?


    Zdecydowanie nie. Zauważ, że kropki składają się z mniejszej liczby diodek niż normalne segmenty, więc są na mniejsze napięcie.

    hubert9999 napisał:

    Według specyfikacji jest podane max 10V na segment a zasilacz ma 9 więc teoretycznie mogę zrobić tak (i właściwie tak zrobiłem i było ok).


    Należy to rozumieć jako "maksymalny spadek napięcia na segment przy dopuszczalnym prądzie (te 30mA) wynosi 10V". Producent gwarantuje, że nie trafi się taki segment, który będzie potrzebował 12V - ale nie znaczy że nie może być takiego który będzie miał 7V. I w szczególności kropki tak mają.
    Oczywiście teoretycznie można tak dobrać napięcie, że wyświetlacz będzie działał (bez kropek), ale wtedy jasność będzie bardzo zależała od temperatury i od indywidualnych cech danego egzemplarza. Jedna cyfra może się świecić jasno, a druga, obok prawie wcale, W domu będzie ok, a na zewnątrz ciemno. No i kwestia nagrzewania się. Po przekroczeniu pewnej temperatury prąd zacznie sam rosnąć, aż do zniszczenia czegoś (zasilacza albo wyświetlacza).

    Może użyj układów SCT2024 - funkcjonalnie podobny do 74595, ale ma 16 wyjść prądowych - od razu do LEDów i wytrzymuje 17V.

Podsumowanie tematu

✨ Użytkownik planuje stworzyć tablicę wyników sportowych z wykorzystaniem mikrokontrolera Atmega 328p oraz 10 dużych wyświetlaczy 7-segmentowych (wspólna anoda) o wysokości 10 cm. Do sterowania wyświetlaczami używa rejestrów 74HC595 oraz biblioteki pineapple w ArduinoIDE. Pojawiły się pytania dotyczące zasilania wyświetlaczy, w tym maksymalnego prądu na segment (30mA) oraz możliwości podłączenia ich bezpośrednio do zasilacza 9V. Użytkownicy forum sugerują zastosowanie układu ULN2003 do sterowania oraz rozważenie filtrów EMC w przypadku długich przewodów. Zwracają również uwagę na ryzyko przegrzania i nierównomiernego świecenia wyświetlaczy przy zasilaniu bliskim maksymalnego napięcia.
Podsumowanie AI na podstawie dyskusji. Może zawierać błędy.
REKLAMA