74HC164 SKIFT Register och din Arduino (2 / 9 steg)
Steg 2: Grundläggande ledningar och drift
74HC164 är en 14 pin chip, den har 4 input stift, 8 utgångsstift, makt och marken, så låt oss börja från toppen.
Stift 1 och 2 är både seriella ingångar, de är setup som en logisk och-grind, vilket innebär att de båda måste vara logic hög (dvs 5 volt) för lite ses som en 1, en låg stat (0 volt) på antingen kommer att läsa som en nolla. Vi behöver verkligen detta och det är lättare att hantera i programvara, så välj en och knyta till V + så den alltid läser högt. Jag väljer att använda en jumper från stift 1 till stift 14 (V +) eftersom du kan bara pop en skärbräda bygel över chipet. En återstående seriell in (pin 2 i min scheman) kommer att gå till digitala stift 2 av arduino.
Stift 3,4,5 och 6 i 74HC164 är de första 4 byte av utdata
Stift 7 ansluter till marken
Hoppa till höger, stift 8 är klockan pin, detta är hur skiftregister vet nästa seriell bit är redo att läsa, detta bör vara ansluten till digital stift 3 på arduino.
Stift 9 är att klara hela registret på en gång, om det går låg, har du möjlighet att använda det, men ingenting i detta outgrundlig gör, så kopplar den till V +
stift 10, 11 12 och 13 är de senaste 4 byte av utdata
stift 14 är chips makt
Operation
Först måste du ange den seriell in i registret (digital stift 2 på arduino) hög eller låg, nästa måste du flip clock pin (digital pin 3) från låg till hög, skiftregister kommer att läsa data på den seriell ingången och flytta produktionen stift 1, upprepa 8 gånger och du har ställt in alla 8 utgångar.
Detta kan göras för hand med för loopar och digital skriver i arduino IDE, men eftersom detta är en mycket vanlig hårdvara nivå communications (SPI) har en funktion som gör det åt dig.
shiftOut (dataPin, clockPin, bitOrder, värde)
Bara berätta det där data och klocka stiften är anslutna till arduino, vilket sätt att skicka data och vad på Skicka och dess tagit hand om för dig (hands)