Korzystanie z 4 cyfrowej 7 segmentowej diody LED

9

Mam 7-segmentowy wyświetlacz, który ma 4 cyfry. Czego będę potrzebować, aby z tego skorzystać? Czy pojedynczy mikrokontroler może obsłużyć operację? Mam na myśli PIC16F690 ... Widziałem też układ MAXIM, który napędza tego rodzaju wyświetlacze ... czy jest to absolutnie wymagane?

Oto zdjęcie z arkusza danych, nie wiem dlaczego są 2 schematy pinów? wprowadź opis zdjęcia tutaj wprowadź opis zdjęcia tutaj

Oto link do arkusza danych

Sean87
źródło

Odpowiedzi:

16

Te dwa schematy to dwie wersje wyświetlacza, wspólna katoda u góry, wspólna anoda u dołu. Zakładam, że masz wspólną wersję katody.

Segmenty A..G, DP łączy się za pomocą rezystorów serii 8 z 8 pinami I / O mikrokontrolera. Wysunięcie szpilki spowoduje podświetlenie tej diody LED na wybranej cyfrze. Aby wybrać jedną z 4 cyfr, należy obniżyć odpowiednią wspólną katodę za pomocą tranzystora NPN, który ponownie napędza się z pinu we / wy za pomocą rezystora.

wprowadź opis zdjęcia tutaj

Jeśli twoje napięcie zasilania wynosi 5 V, a używasz czerwonych diod LED, możesz użyć rezystorów 150 Ω zamiast 330. Zmniejsz również wartości rezystora podstawowego tranzystora do 2,2 kΩ, a na przykład użyj tranzystorów BC337 s.

Aby sterować pełnym wyświetlaczem, najpierw ustaw niski pin na 12, napędzając jego tranzystor wysokim poziomem i ustaw I / O dla segmentów tej cyfry. Jakiś czas później wyłączasz styk 12 i segmenty, włączasz 9 i ponownie segmenty dla drugiej cyfry. I tak dalej. Jeśli przejdziesz od jednej cyfry do drugiej w czasie krótszym niż 2,5 ms, wówczas cały wyświetlacz zmienia się z częstotliwością 10 ms lub 100 Hz, co wystarcza, aby uniknąć zauważalnego migotania.

Możesz używać sterownika Maxim, takiego jak MAX7219 , ale to Damn Expensive ™: 12,80 dolara w 1 s w Digikey. Dobrą rzeczą jest to, że dba o multipleksowanie, więc wystarczy załadować go danymi segmentowymi dla 4 cyfr. Posiada również programową kontrolę jasności.

Sprawdziłem arkusz danych PIC16F690 i, w przeciwieństwie do innych mikrokontrolerów, jego wejścia / wyjścia nie wydają się być w stanie uzyskać 20 mA (co jest rozczarowujące). Potrzebujesz więc tranzystorów również na porcie 2:

wprowadź opis zdjęcia tutaj

R1 był jednym z oporników na porcie 2. Więc wstawiasz Q1 i R2 między nimi i powtarzasz to dla każdego z 8 segmentów. Uwaga, Q2 to PNP! Zrobi to dowolny tranzystor PNP ogólnego przeznaczenia.

stevenvh
źródło
Tylko jedno, czy zaleca się stosowanie sterownika przekaźnika takiego jak UNL2803 zamiast tranzystorów?
Sean87
Jest mniej więcej taki sam. 2803 ma diody zaciskowe, ale to tylko zaleta przy przełączaniu przekaźników lub silników. Jeśli kupisz 100 BC337 (zawsze są one przydatne) 4 z nich są tańsze niż 2803. Niestety nie ma odpowiednika PNP 2803, więc i tak będziesz musiał użyć tranzystorów. BTW, czy twój wyświetlacz jest wspólną katodą jak w mojej odpowiedzi lub wspólną anodą. Jeśli jest to ten ostatni, potrzebujesz 8 NPN dla segmentów, a wtedy 2803 może być lepszą opcją.
stevenvh
Wpadłem na pomysł, na szczęście jest to wspólna anoda, mam około 2803 żetonów, które wtedy wykorzystam. Dzięki jeszcze raz.
Sean87