Alle Arduino -tavlene har et spesifisert antall I/O -pinner, og hvis det er et stort antall enheter som skal kobles til Arduino -styret, kan mangelen på mangel på pinner oppstå. For å imøtekomme dette problemet er det skiftregistre som vi kan øke antall I/O -pinner i Arduino. Hvordan disse skiftregistrene fungerer og hvordan vi kan bruke dem med Arduino, la oss finne ut:
Hvordan skiftregistre fungerer
Som beskrevet ovenfor brukes skiftregisteret hovedsakelig for å løse pinmangel på mikrokontroller i tilfelle når et stort antall enheter skal kobles til mikrokontrolleren. Skiftregisteret forskyver dataene fra en bit til en annen med hensyn til pulsen i klokken til registeret, og dataene de skifter lagres i den. Det er tre hovedpinner i skiftregisteret: den ene er klokkepinnen, det andre er låsestift og den tredje er datapinnen.
PIN -konfigurasjonen av et enkelt skiftregister (74HC595) er gitt nedenfor i tabellen:
Pins kategori (fra venstre side av Grove) | PIN -tall | Representasjon | Beskrivelse |
---|---|---|---|
Utgangspinner | 1-7 og 15 | Q1 til Q7, Q0 | Pinner som enheten skal kobles til med kontrolleren |
Kraftpinner | 8 og 16 | GND, VCC | Pinner som vil slå opp skiftregisteret |
Seriell inngang | 14 | (Ds) serin | PIN som mottar dataene fra kontrolleren gjennom seriell kommunikasjon |
Output Aktiver | 1. 3 | OE | Denne pinnen er lav når spenningen er høy og omvendt |
Låsestift | 12 | (ST_CP) RCLK | Når denne pinnen er høy, sendes dataene til utgangspinnene og lagres også i minnet |
Klokkepinne | 11 | (SH_CP) | Klokkepinne for skiftregisteret |
Tilbakestill pin | 10 | (SH_CP) SRCLR | Pin bruker for å tilbakestille registeret ved å gi det lav tilstand |
Grensesnitt av andre registre | 9 | Q7S (QH ') | Når mer enn ett registre skal brukes, brukes denne pinnen |
Bruke skiftregister med Arduino
For å forklare hvordan vi kan bruke skiftregisteret med Arduino, har vi vist et eksempel på å koble flere lysdioder med Arduino UNO gjennom et skiftregister. Her er listen over komponenter som vi har brukt i dette eksemplet:
Vi har designet kretsen ved å bruke ovennevnte komponenter, og dens skjema er gitt nedenfor:
Maskinvareenhet for bruk av skiftregister med Arduino Uno
For å se hvordan kretsen vil se ut på brødplaten, har vi først laget maskinvarenheten som på bildet nedenfor:
For din forståelse har vi forklart tilkoblingene til komponentene som brukes i kretsløpene:
Arduino -kode for bruk av skiftregister med Arduino Uno
For å bruke skiftregister med Arduino må vi konfigurere det ved å programmere mikrokontrolleren, så nedenfor har vi gitt koden:
int sperre = 5; // pinner 5 av Arduino for sperrepinne av skiftregisterMaskinvaredemonstrasjon
Vi har implementert kretsen designet for å grensesnitt. For å demonstrere hvordan vi har vendt lysdiodene i et mønster, har vi gitt den animerte GIF nedenfor:
Konklusjon
Skiftregistre brukes mest når vi må øke I/O -pinnene til mikrokontrollerne, slik at vi kan grensesnitt flere enheter med det. For å demonstrere hvordan vi kan bruke skiftregisteret, grensesnitt 8 LED -er med Arduino Microcontroller ved bare å bruke sine 3 pinner. For ytterligere avklaring har vi gitt kretsskjema og implementering av maskinvare sammen med Arduino -skissen som ble brukt til å programmere kontrolleren.