Wszystkie tablice Arduino są wyposażone w określoną liczbę pinów we/wy, a jeśli istnieje duża liczba urządzeń, które mają być połączone z płytą Arduino, może powstać problem braku pinów. Aby zaspokoić ten problem, istnieją rejestry zmian, przez które możemy zwiększyć liczbę pinów we/wy Arduino. Jak działają te rejestry zmian i jak możemy je wykorzystać z Arduino, dowiedzmy się:
Jak działają rejestry zmiany
Jak opisano powyżej, rejestr przesunięcia służy głównie do rozwiązania niedoboru pinu mikrokontrolera w przypadku, gdy duża liczba urządzeń ma być połączona z mikrokontrolerem. Rejestr przesunięcia przesuwa dane z jednego bitu na drugie w odniesieniu do impulsów zegara rejestru, a dane, które przesuwa, są w nim przechowywane. Istnieją trzy główne szpilki rejestru zmiany: jeden to pin zegarowy, drugi jest pinem zatrzasku, a trzeci.
Konfiguracja PIN pojedynczego rejestru zmiany (74HC595) podano poniżej w tabeli:
Kategoria pinów (od lewej strony gaju) | Liczby pin | Reprezentacja | Opis |
---|---|---|---|
Piny wyjściowe | 1-7 i 15 | Q1 do Q7, Q0 | Piny, przy których urządzenie ma być połączone z kontrolerem |
Pins Power | 8 i 16 | GND, VCC | Piny, które zasilą rejestr zmiany |
Wejście szeregowe | 14 | (DS) Serin | PIN, który odbiera dane od kontrolera poprzez komunikację szeregową |
Włącz wyjście | 13 | Oe | Ten pin jest niski, gdy napięcie jest wysokie i odwrotnie |
Pin | 12 | (ST_CP) RCLK | Gdy ten pin jest wysoki, dane są wysyłane do pinów wyjściowych i są również przechowywane w pamięci |
Pin ze zegarem | 11 | (Sh_cp) | Pin zegarowy dla rejestru zmiany |
Zresetować szpilkę | 10 | (Sh_cp) srclr | Używanie pinów do zresetowania rejestru, nadając mu niski stan |
Interfejs innych rejestrów | 9 | Q7s (qh ') | Gdy należy użyć więcej niż jednego rejestrów, ten szpilka jest używana |
Korzystanie z rejestru zmiany w Arduino
Aby wyjaśnić, w jaki sposób możemy użyć rejestru zmiany w Arduino, pokazaliśmy przykład łączenia wielu diod LED z Arduino Uno za pośrednictwem rejestru zmiany. Oto lista komponentów, których użyliśmy w tym przykładzie:
Zaprojektowaliśmy obwód za pomocą powyższych wymienionych komponentów, a jego schemat podano poniżej:
Zespół sprzętu do korzystania z rejestru Shift w Arduino Uno
Aby zobaczyć, jak będzie wyglądać obwód na tablicy chleba, po raz pierwszy stworzyliśmy montaż sprzętu, jak na zdjęciu poniżej:
Dla twojego zrozumienia wyjaśniliśmy połączenia komponentów używanych w obwodach:
Kod Arduino do korzystania z rejestru Shift w Arduino Uno
Aby użyć rejestru zmiany w Arduino, musimy go skonfigurować, programując mikrokontroler, więc poniżej podaliśmy kod:
int Latch = 5; // piny 5 Arduino dla pinu zatrzaskowego rejestru zmianyDemonstracja sprzętowa
Zaimplementowaliśmy obwód zaprojektowany do interfejsu rejestru zmiany 74HC595 w Arduino UNO zgodnie z zespołem sprzętowym, który opisaliśmy wcześniej. Aby zademonstrować, w jaki sposób obróciliśmy diody LED w wzorze, który podaliśmy poniżej animowanego GIF:
Wniosek
Rejestry zmiany biegów są używane głównie wtedy, gdy musimy zwiększyć piny we/wy mikrokontrolerów, abyśmy mogli z nim połączyć więcej urządzeń. Aby zademonstrować, w jaki sposób możemy użyć rejestru przesunięcia, interfejs 8 diod LED z mikrokontrolerem Arduino za pomocą tylko 3 pinów. W celu dalszego wyjaśnienia podaliśmy schemat obwodu i jego wdrożenie sprzętu wraz z szkicem Arduino używanym do zaprogramowania kontrolera.