Ce este SIPO Shift Register: circuit, lucru, tabel de adevăr și aplicațiile sale

Încercați Instrumentul Nostru Pentru Eliminarea Problemelor





În general, un registru poate fi definit ca un dispozitiv folosit pentru a stoca datele binare, dar dacă doriți să stocați mai mulți biți de date, atunci se utilizează un set de flip flops care sunt conectate în serie. Datele care sunt stocate în registre pot fi deplasate prin utilizarea registrelor de deplasare fie pe partea dreaptă, fie pe partea stângă prin furnizarea de impulsuri CLK. Registrul de deplasare este un grup de papuci flip-flop folosit pentru a stoca mai mulți biți de date. În mod similar, un registru de deplasare cu n-biți poate fi format prin simpla conectare a n flip-flop oriunde fiecare flip-flop stochează pur și simplu un singur bit de date. Odată ce registrul deplasează biții în partea dreaptă, acesta este registrul de deplasare la dreapta, în timp ce dacă se deplasează în partea stângă, atunci este cunoscut sub numele de registru de deplasare la stânga. Acest articol discută o privire de ansamblu asupra unuia dintre tipurile de registru de deplasare, și anume seriale în paralel, registrul de deplasare sau Registrul de deplasare SIPO .


Ce este SIPO Shift Register?

Registrul de deplasare care permite intrarea în serie ieșire paralelă este cunoscut sub numele de registru de deplasare SIPO. În registrul SIPO, termenul SIPO înseamnă intrare serială ieșire paralelă. În acest tip de registru de deplasare, datele de intrare sunt date în serie bit cu bit. Pentru fiecare impuls de ceas, datele de intrare la toate FF-urile pot fi deplasate cu o singură poziție. O/p la fiecare flip-flop poate fi recepţionat în paralel.



Schema circuitului

The Schema circuitului registrului de deplasare SISO este prezentat mai jos. Acest circuit poate fi construit cu 4 flip-flop-uri D care sunt conectate așa cum se arată în diagramă în care semnalul CLR este dat suplimentar la semnalul CLK tuturor FF-urilor o RESET. În circuitul de mai sus, prima ieșire FF este dată celei de-a doua intrări FF. Toate aceste patru flip-flop D sunt conectate între ele în serie, deoarece același semnal CLK este dat fiecărui flip-flop.

  Diagrama registrului de schimbare SIPO
Diagrama registrului de schimbare SIPO

Funcționarea registrului de schimb SIPO

Funcționarea registrului de schimb SIPO este; că preia datele seriale de intrare de la primul flip flop din partea stângă și generează o ieșire de date paralele. Circuitul registrului de deplasare SIPO pe 4 biți este prezentat mai jos. Funcționarea acestui registru de deplasare este, mai întâi, toate bistabilele din circuitul de la FF1 la FF4 trebuie RESET, astfel încât toate ieșirile FF-urilor precum QA la QD să fie la nivelul zero logic, astfel încât să nu existe o ieșire de date paralele.



Construcția registrului de deplasare SIPO este prezentată mai sus. În diagramă, prima ieșire flip flop „QA” este conectată la a doua intrare flip flop „DB”. Cea de-a doua ieșire de flip-flop „QB” este conectată la a treia intrare de flip-flop DC, iar a treia ieșire de flip-flop „QC” este conectată la a patra intrare de flip-flop „DD. Aici, QA, QB, QC și QD sunt date de ieșire.

Inițial, toată ieșirea va deveni zero, deci fără impuls CLK; toate datele vor deveni zero. Să luăm un exemplu de intrare de date pe 4 biți, cum ar fi 1101. Dacă aplicăm primul impuls de ceas „1” la primul flip flop, datele care trebuie introduse în FF și QA devin „1”, iar toate ieșirile rămânând ca QB , QC și QD vor deveni zero. Deci prima ieșire de date este „1000”

Dacă aplicăm al doilea impuls de ceas ca „0” la primul flip flop, atunci QA devine „0”, QB devine „0”, QC devine „0” și QD devine „0”. Deci, a doua ieșire de date va deveni „0100” datorită procesului de schimbare la dreapta.

Dacă aplicăm al treilea impuls de ceas ca „1” la primul flip flop, atunci QA devine „1”, QB devine „0”, QC devine „1” și QD devine „0”. Deci, a treia ieșire de date va deveni „1011” datorită procesului de schimbare la dreapta.
Dacă aplicăm al patrulea impuls de ceas ca „1” la primul flip flop, atunci QA devine „1”, QB devine „1”, QC devine „0” și QD devine „1”. Deci, a treia ieșire de date va deveni „1101” datorită procesului de schimbare la dreapta.

Tabelul de adevăr al registrului de schimbare SIPO

Tabelul de adevăr al registrului de deplasare SIPO este prezentat mai jos.

  Tabelul de adevăr al registrului de schimbare SIPO
Tabelul de adevăr al registrului de schimbare SIPO

Diagrama de sincronizare

The diagrama de timp a registrului de deplasare SIPO este prezentat mai jos.

  Diagrama de sincronizare
Diagrama de sincronizare

Aici folosim un semnal CLK i/p cu margine pozitivă. Într-un prim impuls de ceas, datele de intrare devin QA = „1” și toate celelalte valori precum QB, QC și QD devin „0”. Deci rezultatul va deveni „1000”. În al doilea impuls de ceas, ieșirea va deveni „0101”. În al treilea impuls de ceas, ieșirea va deveni „1010”, iar în al patrulea impuls de ceas, ieșirea va deveni „1101”.

Cod Verilog SIPO Shift Register

Codul Verilog pentru registrul de schimbare SIPO este prezentat mai jos.

modul sipomod(clk,clear, si, po);
input clk, si,clear;
ieșire [3:0] po;
reg [3:0] tmp;
reg [3:0] po;
întotdeauna @(posedge clk)
ÎNCEPE
dacă (clar)
tmp <= 4’b0000;
altfel
tmp <= tmp << 1;
tmp[0] <= da;
po = tmp;
Sfârşit
modul final

74HC595 IC SIPO Shift Register Circuit și funcționarea acestuia

Un circuit integrat 74HC595 este un registru de deplasare serial pe 8 biți în paralel, deci folosește intrări în serie și oferă ieșiri paralele. Acest IC include 16 pini și este disponibil în diferite pachete precum SOIC, DIP, TSSOP și SSOP.

Configurația pinului 74HC595 este prezentată mai jos, unde fiecare pin este discutat mai jos.

Pinii de la 1 la 7 și 15 (QB la QH și QA): Aceștia sunt pinii o/p care sunt utilizați pentru a conecta dispozitive de ieșire, cum ar fi afișaje cu 7 segmente și LED-uri.

Pin8 (GND): Acest pin GND este pur și simplu conectat la pinul GND al sursei de alimentare a microcontrolerului.

Pin9 (QH): Acest pin este folosit pentru a se conecta la pinul SER al unui alt circuit integrat și pentru a oferi același semnal CLK ambelor circuite integrate, astfel încât acestea să funcționeze ca un singur circuit integrat, inclusiv 16 ieșiri.

Pin16 (Vcc): Acest pin este folosit pentru a se conecta la microcontroler, altfel sursa de alimentare, deoarece este un IC de nivel logic de 5V.

Pin14 (BE): Este Pinul Serial i/p unde datele sunt introduse în serie în acest pin.

Pin11 (SRCLK): Pinul CLK al registrului de comutare este cel care funcționează ca CLK pentru registrul de schimbare, deoarece semnalul CLK este dat prin acest pin.

Pin12 (RCLK): Pinul Register CLK este folosit pentru a observa o/ps-urile dispozitivelor care sunt conectate la aceste circuite integrate.

Pin10 (SRCLR): Este PIN-ul CLR al registrului de schimbare. Acest pin este folosit în principal atunci când trebuie să ștergem stocarea registrului.

Pin13 (OE): Este pinul de activare o/p. Odată ce acest pin este setat la HIGH, atunci registrul de deplasare este setat la o condiție de impedanță ridicată și o/ps nu sunt transmise. Dacă setăm acest pin la scăzut, putem obține o/ps.

74HC595 IC  Funcționează

Schema circuitului 74HC595 IC pentru controlul LED-urilor este prezentată mai jos. Cei 3 pini ai registrului de deplasare sunt necesari pentru a fi conectați la Arduino precum pinii 11, 12 și 14. Toate cele opt LED-uri vor fi conectate pur și simplu la acest IC de registru de deplasare.

Componentele necesare pentru proiectarea acestui circuit includ în principal un IC cu registru de schimbare 74HC595, Arduino UNO, sursă de alimentare de 5 V, panou, 8 LED-uri, rezistențe de 1 KΩ - 8 și fire de conectare.

  74HC595 Schema circuitului registrului de schimbare IC
74HC595 Schema circuitului registrului de schimbare IC

În primul rând, pinul serial i/p al registrului de schimbare trebuie să se conecteze la pinul-4 al Arduino Uno. După aceea, conectați atât pinii CLK, cât și cei de blocare, cum ar fi pinii 11 și 12 ai IC, la pinii 5 și, respectiv, 6 ai Arduino Uno. LED-urile sunt conectate folosind rezistențe de limitare a curentului de 1KΩ la pinii 8-o/p ai circuitului integrat. O sursă de alimentare separată de 5V este utilizată pentru 74HC595 IC cu GND comun la Arduino înainte de a furniza 5V de la Arduino.

Cod

Codul simplu pentru activarea a 8 LED-uri ON într-o serie este prezentat mai jos.

int latchPin = 5;
int clkPin = 6;
int dataPin = 4;
octet LED = 0;
void setup()
{
Serial.begin(9600);
pinMode(latchPin, OUTPUT);
pinMode(dataPin, OUTPUT);
pinMode(clkPin, OUTPUT);
}
buclă goală ()
{
int i=0;
LED = 0;
shiftLED();
întârziere (500);
pentru (i = 0; i < 8; i++)
{
set de biți (LED, i);
Serial.println(LED);
shiftLED();
întârziere (500);
}
}
void shiftLED()
{
digitalWrite(latchPin, LOW);
shiftOut(dataPin, clkPin, MSBFIRST, LED);
digitalWrite(latchPin, HIGH);
}

Funcționarea acestui circuit de registru de deplasare este, la început, toate cele 8 LED-uri vor fi stinse, deoarece LED-ul variabilă de octet este setat la zero. Acum, fiecare bit este setat la 1 cu funcția „bitSet” și este deplasat cu funcția „shiftOut”. De asemenea, fiecare LED va fi aprins din aceeași serie. Dacă doriți să opriți LED-ul, atunci puteți utiliza funcția „bitClear”.

74HC595 Shift Register IC este utilizat în diferite aplicații precum servere, control LED, control industrial, aparate electronice, comutatoare de rețea etc.

Aplicații

The aplicații ale registrului de deplasare a ieșirii paralele a intrării în serie este prezentat mai jos.

  • În general, registrul de deplasare este folosit pentru stocarea datelor temporare, folosite ca inel & Johnson Contor de inele .
  • Acestea sunt folosite pentru transferul de date și manipulare.
  • Aceste flip flops sunt utilizate în principal în liniile de comunicație ori de câte ori este necesară o linie de date demultiplexată în numeroase linii paralele, deoarece acest registru de deplasare este utilizat pentru a schimba datele din serie în paralel.
  • Acestea sunt folosite pentru criptarea și decriptarea datelor.
  • Acest registru de deplasare este utilizat în CDMA pentru generarea codului PN sau a numărului de secvență pseudo-zgomot.
  • Le putem folosi pentru a ne urmări datele!
  • Registrul de deplasare SIPO este utilizat în diverse aplicații digitale pentru conversia datelor.
  • Uneori, acest tip de registru de deplasare este pur și simplu conectat la microprocesor odată ce sunt necesari alți pini GPIO.
  • Aplicația practică a acestui registru de deplasare SIPO este de a oferi datele de ieșire ale microprocesorului unui indicator de la distanță.

Astfel, aceasta este o prezentare generală a SIPO Registrul de deplasare – circuit, lucru, tabel de adevăr și diagramă de timp cu aplicații. Cele mai frecvent utilizate componente ale registrului de deplasare SIPO sunt 74HC595, 74LS164, 74HC164/74164, SN74ALS164A, SN74AHC594, SN74AHC595 și CD4094. Aceste registre sunt foarte rapide în utilizare, datele pot fi convertite foarte ușor din serie în paralel, iar designul lor este simplu. Iată o întrebare pentru tine, ce este registrul de deplasare PISO.