El 74HC595 kiipNagu selle nimest järeldatakse, on see trükitud vooluring, mis rakendab CMOS-ahelat sees. Täpsemalt on see vahetuste register. Neile, kes neid registreid veel ei tunne, on see põhimõtteliselt järjestikune digitaalne vooluring, see tähendab, et selle väärtused väljundis sõltuvad lihtsalt sisendväärtustest ja varasematest salvestatud väärtustest.
See eristab neid kombineeritud ettevõtetest, et väljundid sõltuvad ainult sisendi väärtusest. See register koosneb seeriast D-tüüpi plätusid või plätusid, mida juhib kellasignaal. Need plätud on mälestused mis hoiavad eelmist väärtust. Igaüks neist natuke salvestab ja selle nime järgi võite järeldada ka seda, et see võib neid nihutada. Bitte ühelt küljelt teisele juhtides saame teha üsna huvitavaid digitaaloperatsioone.
Vahetusregistri tüübid
Vastavalt nihkumise tüüp mida nad teevad salvestatud bittidel, võivad registrid olla erinevat tüüpi. Nad on võimelised liikuma vasakule või paremale, mõned kahesuunalised, kuid tüübi määrab järjekord, isegi muudel juhtudel on need kataloogitud ka sisendite ja väljundite põhjal:
- Seeria-seeria: need, milles andmeid saab ainult esimene flip-flop, ja need liiguvad järjestikku, kuni täielik register on täidetud. Viimane flip-flop on see, mis on otse väljundiga ühendatud ja mille kaudu registrist väljutakse.
- Paralleelsarjad: bitid lähevad paralleelselt sisse, et neid saaks korraga hoida kõigis plätudes, kuid seejärel kustutatakse neid järjestikku. Neid saab kasutada seeriast paralleelseks ja vastupidi teisendamiseks.
- Seeria-paralleelne: sarnaselt eelmisele on kõigile väljunditele korraga juurdepääs kõigist papudest. Kuid andmed sisestatakse alles seeria esimese järgi.
- Paralleelselt paralleelselt: Andmed liiguvad paralleelselt ja kustuvad paralleelselt.
Tuntumate vooluringide seas on meil 74HC595, 74HC164, 74HC165, 74HC194, jne. 194 on universaalne, seda saab konfigureerida nii nagu meie soovime. Teisest küljest on meil ka teisi kahesuunalisi, näiteks 165 ja 164, nii et see liigub vasakule või paremale, nagu on ette nähtud suuna juhtimissignaaliga, kuid neil on ainult üks konfiguratsioon: paralleelsed sisendid ja jadaväljund ning jadaliides sisend ja paralleelväljund.
Milleks on vahetuste register?
Miks vahetada bitti? Andmebittide nihutamine võib olla väga praktiline. Üks põhjus on see, et peate väärtusi konkreetsel eesmärgil nihutama. Kuid nihutamine hõlmab ka mõne toimingu tegemist salvestatud bittidega. Näiteks bittide komplekti nihutamine vasakule tähendab nende korrutamist 2-ga. Nihutamine paremale on sama nagu jagamine 2-ga. Seetõttu võivad binaarse korrutamise ja jagamise tegemiseks olla väga praktilised ...
Neid kasutatakse ka pseudojuhuslike väärtuste loomiseks, järjestikuste lähenduste jaoks, mida analoog- / digitaalmuundurites laialdaselt kasutatakse, viivitamiseks jne. Kasutused aastal loogika digitaalsed ahelad see on üsna tavaline, nii et pole haruldane, et neid tuleb mõnes projektis kasutada.
74HC595 funktsioonid
El 74HC595 on üsna sirgjooneline IC. See on 8-bitine nihkeregister ehk 8 bitti salvestamiseks on sellel 8 flip-floppi. Selle kiibi väljavõtet või tihvte saab näha ülaltoodud pildil koos Vcc ja GND toiteallikaga ning seejärel Q-ga tähistatud andmetega. Ülejäänud vastavad kella / juhtimissignaalidele.
The sisendil on see järjestikku ja väljund paralleelselt. Seetõttu saab ühe sisendiga neid 8 väljundit korraga juhtida. Selle juhtimiseks vajate ainult kolme mikrokontrolleri kontakti (nt: Arduino). Need on riiv, kell ja andmed. Riiv on sel juhul tihvt 13, ehkki see võib varieeruda, seega peaksite tutvuma tootja andmelehega. Kell võib olla 11 või muu ja andmebitt on 14.
La kella märk see toidab vooluringi, et määrata löögi või rütm, milles see töötab. Andmete väljund muudab kiibi käitumist. Näiteks kui vahetate LOW-lt HIGH-ile ja genereerite uue kella impulsi, liigutades kella HIGH-lt LOW-le, siis saavutatakse see, kui registreeritakse praegune asend, kus nihe asub, selle andme tihvti sisestatud väärtus. Kui kordate seda 8 korda, olete salvestanud kõik 8 positsiooni ja salvestanud ühe baidi (Q0-Q7).
Kasutage koos Arduinoga
Võib-olla selle selgemaks muutmiseks näide Arduinost See selgitab seda teile intuitiivsemal ja graafilisemal viisil kui teoreetiliste andmete käivitamise alustamine. Näiteks saate mõne tulega või valgusdioodiga mängimiseks luua lihtsa vooluringi Arduino ja 74HC595 nihkeregistriga. Teine mõnevõrra parem ja lihtsam variant on registrist väärtuste lugemiseks kasutada 7-segmendilist ekraani.
Diagramm on see, mida näete eelmisel pildil, kui Arduino on selliselt ühendatud 74HC595 ja ekraan, Jääb vaid programmeerida see Arduino IDE-ga ja näeme nihkeregistri võimalusi. Kood oleks järgmine, binaarkoodide reaga 0bxxxxxxxx, kus x bitti:
const int latchPin = 8; // Pin conectado al Pin 12 del 74HC595 (Latch) const int dataPin = 9; // Pin conectado al Pin 14 del 74HC595 (Data) const int clockPin = 10; // Pin conectado al Pin 11 del 74HC595 (Clock) int i =0; const byte numeros[16] = { 0b11111100, 0b01100000, 0b11011010, 0b11110010, 0b01100110, 0b10110110, 0b10111110, 0b11100000, 0b11111110, 0b11100110, 0b11101110, 0b00111110, 0b10011100, 0b01111010, 0b10011110, 0b10001110 }; void setup() { Serial.begin(9600); pinMode(latchPin, OUTPUT); pinMode(clockPin, OUTPUT); pinMode(dataPin, OUTPUT); } void loop() { for (i=0;i<16;i++) { delay(1000); digitalWrite(latchPin, LOW); shiftOut(dataPin, clockPin, LSBFIRST, numeros[i]); digitalWrite(latchPin, HIGH); } }
Teabelehe
Turult leiate erinevate tootjate erinevad 74HC595 kiibid. Üks neist on müütilised Texas Instruments või Ti, kuid olgu see nii, peaks iga tootja pakkuma teile allalaadimiseks andmelehte oma ametlikul veebisaidil. Võite leida ka teisi sarnaseid SEES pooljuht, sädelust, STMicroelectronics, NXP jne.