74HC595 skiftregister



detta kommer att vara en Snabbstartsguide till 74HC595 skiftregister.

Skiftregister fungerar på ett ganska enkelt sätt, men kan ändras för att bli mycket komplicerad men mycket användbar.

Det grundläggande konceptet är du har 8 utgångsstift från 74HC595. För detta exempel kan bara säga att dessa skickas via ett motstånd till en LED. Så har vi stift Q0 genom Q7 som utdata stiften. Resten kan anses kontroll stift, deras exakta funktion beskrivs i tabellen ovan.

Vi kan kontrollera förskjutningen av registret med klocka pulser. Som vi höja signalen kommer att klocka pin till hög, klockan flyttas framåt ett steg. och när vi drar det låga och höga igen det skiftar en annan. Varje gång vi flytta klockan växla vi input till en annan av åtta register. Vi i huvudsak styr produktionen av var och en av de åtta stift en i taget, och när vi går en klocksignal vidare, vi växla till nästa produktionen stift till kontroll.

Så långt detta låter helt enkelt som en växel, som är verkligen vad det är, men här är viktigaste.

Vi kan använda lagring register klocka stiftet för att styra växeln "Master på/av". Hur detta används är huvudsakligen vi kan dra låg innan vi skickar våra register värderingar. Sedan skickar vi alla åtta registret värden, oavsett om de är höga eller låga, och när vi gjort vi dra lagring register klocka stiftet hög. Vad kommer att hända är det värde som du skickar kommer att lagras på varje utgångsstiftet, men inte aktiverats ännu. När du drar lagring register klocka pin hög alla utgångar blir då aktiva och som någonsin stift du tilldelat så hög tänds lysdioden.

En annan piggna är Master Reclear Pin. Vi kan använda detta stift att avmarkera alla våra utgångar och ställa allt till låga.

Så detta är bara ett enkelt exempel. Skiftregister kan vara ett bra verktyg när du har ont om utgångsstift, med 8 utgångar från endast ca 3 verkliga data ingångar. Det kan läggas till för vissa mycket komplicerat program, och de kan seriekopplas tillsammans för ännu fler alternativ för utdata.

Detta hjälper förhoppningsvis komma igång och ge dig lite kunskap på deras grundläggande koncept.

Jag har tagit ett prov arduino skiss och kopplingsschema från arduino webbplats som kommer att slå på varje LED ett i taget med tanke på Serial Monitor input (0-9)

-------------------------------------- CODE START --------------------------------------
/*
Skift Register exempel
för 74HC595 skiftregister

Denna skiss visar läser seriell in och används för att ställa in stiften
av ett 74HC595 skiftregister.

Hårdvara:
* 74HC595 skiftregister kopplade till stift 2, 3 och 4 i Arduino,
så detaljerat nedan.
* Lysdioder kopplat till var och en av utgångarna av skiftregister

Skapad 22 maj 2009
Skapad 23 Mar 2010
av Tom Igoe

*/

PIN ansluten till spärren stift (ST_CP) 74HC595
CONST int latchPin = 8;
PIN ansluten till klockan stift (SH_CP) 74HC595
CONST int clockPin = 12;
PIN ansluten till Data i (DS) av 74HC595
CONST int dataPin = 11;

void setup() {
ställa in stift att produktionen eftersom de behandlas i de viktigaste loopen
pinMode (latchPin, produktionen);
pinMode (dataPin, produktionen);
pinMode (clockPin, produktionen);
Serial.BEGIN(9600);
Serial.println("reset");
}

void loop() {
om (Serial.available() > 0) {
ASCII '0' och '9' tecken är
representeras av värdena 48 genom 57.
så om användaren anger ett nummer från 0 till 9 i ASCII,
Du kan dra ifrån 48 för att få det faktiska värdet:
int bitToSet = Serial.read() - 48.

Skriv till skiftregister med rätt lite högt:
registerWrite (bitToSet, hög);
}
}

Denna metod skickar bitar till skiftregister:

void registerWrite (int whichPin, int whichState) {
de bitar som du vill skicka
byte bitsToSend = 0;

stänga av utdata så att stiften inte tänds
medan du skiftande bitar:
digitalWrite (latchPin, låg);

Aktivera den nästa högsta biten i bitsToSend:
bitWrite (bitsToSend, whichPin, whichState);

flytta bitarna ut:
shiftOut (dataPin, clockPin, MSBFIRST, bitsToSend);

Aktivera utdata så att lamporna kan lysa upp:
digitalWrite (latchPin, hög);

}
--------------------------------------- CODE END ---------------------------------------

Jag ska försöka att komma tillbaka till detta att lägga till mer förklaring till denna kod.

Relaterade Ämnen

74HC595 skiftregister avmystifieras

preliminär förklaring/försiktighetsåtgärderAlltid hänvisa till de tekniska uppgiftsbladen innan du utför några tester på en integrerad krets.CMOS operationer:En viktig sak att komma ihåg är 74HC595 (HC) är CMOS-teknik. HC utsignaler bestäms av VDD. S...

ATTiny45/85 LCD Visa kontroll med ett skiftregister, programmerat i Arduino

kör Arduino på en ATTiny45 av 85 chip är en enorm kostnad-sparare för mini-projekt. Dock kan du inte ansluta en HD44780 kompatibel LCD-display som du kräver 6 utgångar, men du har bara 5. Problemet kan lösas genom att använda ett skiftregister till k...

Hur man använder en 74HC595 SKIFT Register med en AVR ATtiny13

om du har spelat med mikrokontroller och elektronik så du har förmodligen sett LED dot matrix-displayer och andra projekt som använder SKIFT register som 7-segment visar och mer. Detta instructable går över en snabb intro till 74HC595 8-bitars serail...

Multiplexering med Arduino och 74HC595

74HC595 är en lätt och billig (på cirka 60 cent styck) sätt att öka antalet digitala ut stiften på din Arduino. I denna tutorial ska jag visa dig hur man kör upp till 16 lysdioder med en 74HC595 med hjälp av en teknik som kallas multiplexing. I slutä...

Med hjälp av SKIFT registrera 74HC595 med ULN2803, UDN2981 och BC327

Hej, alla!I många situationer i dina projekt med microcontrollers kan du använda ett skiftregister som 74HC595 direkt med lysdioder och visar, men om du kolla databladet du kommer se att behöva ta hand med den maximala strömmen på varje utgång och äv...

Arduino 16 lysdioder med två 74HC595 SKIFT register (obegränsad stift)

Detta är min första instructable, hoppas du kommer att gilla den. Jag har spelat runt med lysdioder för ett tag och jag insåg att jag är ganska mycket begränsat med Arduino stift och kan inte göra stora projekt som kräver en hel del stift. Detta är s...

DIY Apple klockan

OK finns så det inget sådant som Apple klockan.Dock kan du göra din egen retrostil bubbla Visa klocka i en Apple hörsnäckorna fall.Jag ska visa dig hur man gör det bara sit tight.Steg 1: delar Du kommer att behöva vissa delar för detta projekt.1 x PC...

LED Dawn / Sunrise väckarklocka, nattlampa & säkerhet ljus - Arduino kompatibel

som nätterna förlängs successivt under hösten 2011, jag upptäckt glädjen med Arduino och trodde att det skulle vara ett bra sätt att genomföra något som jag har velat ha en lång stund - ett skonsamt sätt att vakna upp på en vintermorgon. Tyvärr, det...

Arduino Tutorial Bundle.: Arduino experimenterande Kit:. (ARDX)

Intresserad av att göra snyggt projekt med en Arduino men inte säker på var du ska börja?Här är ett lätt att följa guide på hur man ansluta och använda en uppsjö av elektroniska komponenter.(skamlös plugg)Vill du göra allt?Komplett kit med komponente...

Attiny85-shiftlcd riktning upptäckt

Detta instructable kombinerar några instructables projekt som jag har gjort till en. Det börjar med en 5v strömförsörjning jag breadboard med ett 9V batteri 7805 regulator, switch, 2 10uF elektrolytisk matcher, 103 keramiska cap och bara för visuell...

Android DiceBot

The Android DiceBot är en elektronisk tärning som passar i en Android statyett! Den har en 7-Segment display, ett 74HC595 skiftregister, en accelerometer och en ATmega328p (Arduino mikrokontroller) till alla passa in i en Android statyett. Jag kommer...

Arduino kontrollerade vindspel

De lugnande effekterna av chimes beror normalt på vinden, men denna wind chime är Arduino powered.Snarare än att vänta på vinden att blåsa, är det möjligt att väcka en serie av trimmad rören med hjälp av solenoider kontrolleras av en Arduino program...

Digital klocka med 7 Segment Display kontrolleras med hjälp av fjärrkontrollen

det finns sorter av digital klocka finns i vårt dagliga liv. Grundläggande digital klocka kommer att oftast ha några inbyggda funktioner som väckarklocka, kalender och termometer förutom display klockan information. Några av de förskott digital klock...

NIXIE rör DRIVRUTINSMODULER - del II

Detta Instructable är en uppföljning till nixie rör drivrutinsmodulen (del I) som jag postat här.Nixie förare ombord är avsedd att ta emot seriell indata från en extern mikrokontroller (Arduino, etc.) och output decimal information och rutten makt at...

Raspberry Pi 4 x 4 x 4 LED Cube

Jag har varit fascinerad av LED kuber ett tag nu, men har inte kunnat förmå mig att bygga en Arduino-baserad kub. De vänder snabbt och fint, ja, men skriva koden är en hemsk röra av bits och bytes. Raspberry Pi Python-baserade GPIO gränssnittet var m...

Arduino målövning

en snabb demo video för ditt nöje.Detta är en instructable ett mål praxis system för airsoft och nerf vapen. Systemet har utformats för att testa en shooter's reaktionstider och noggrannhet.Sam och jag har tänkt att göra detta projekt ett tag, och nä...

DIY 8 x 8 RGB ledde matrisen med Controller

Efter att de 8 x 8 ledde matrisen och Controller som en del av min DIY Arduino Word-klocka, hade jag att göra en RGB versionen av ledde matrisen.Till skillnad från ett svartvitt ledde matrisen använder en RGB LED-matris antingen gemensam anod eller g...

Arduino - minne spelet

En simpel memory-spel använder Arduino Uno.Steg 1: Steg 1: delar och verktyg4 knappar4 lysdioder1 74HC595 skiftregister1 Piezo2 (kanske en större) bakbord1 Arduino Uno1 220 Ω Res.Steg 2: Steg 2: TipsFörsök att sammanställa arduino och breadboard(s) t...

LEDDE matrisen med hjälp av SKIFT register

detta instructable är tänkt att vara en mer fullständig förklaring än andra tillgängliga online. Detta kommer bland annat ge mer hårdvara förklaring än finns i LED markeringsramen instructable av led555.MålDetta instructable presenterar begreppen med...