74hc595: allt om skiftregistret IC

El 74HC595-chipEftersom det härleds från sitt namn är det en tryckt krets som implementerar en CMOS-krets inuti. Specifikt är det ett skiftregister. För dem som fortfarande inte känner till dessa register är det i grunden en sekventiell digital krets, det vill säga dess värden i utgången beror helt enkelt på värdena på ingången och tidigare lagrade värden.

Det skiljer dem från kombinationer, att utgångarna bara beror på ingångens värde. Detta register består av en serie flip-flops eller flip-flops av D-typ som styrs av en klocksignal. De där flip flops är minnen som håller ett tidigare värde. Var och en lagrar lite och från sitt namn kan du också dra slutsatsen att den kan flytta dem. Genom att köra bitarna fram och tillbaka kan vi göra några ganska coola digitala operationer.

Skiftregistretyper

Skiftregisterdiagram

Enligt typ av förskjutning att de gör på bitarna de lagrar, kan registren vara av olika slag. De kan flytta åt vänster eller höger, vissa dubbelriktade, men ordningen är vad som kommer att avgöra typen, även i andra fall är de också katalogiserade baserat på hur ingångarna och utgångarna är:

  • Serien-serien: de där endast den första vippan tar emot data och de går i serie tills hela registret är fyllt. Den sista vippan är den som är direkt ansluten till utgången och genom vilken registret kommer att avslutas.
  • Parallellserie: bitarna går parallellt för att lagras samtidigt i alla flip-flops, men sedan går de ut i serie. De kan användas för att konvertera från serie till parallell och vice versa.
  • Serie-parallell: liknar den föregående, alla utgångar är tillgängliga samtidigt från alla flip-flops. Men data kommer bara in i den första i serien.
  • Parallell-parallell- Data går parallellt och går ut parallellt.

Bland de mest kända kretsarna har vi 74HC595, 74HC164, 74HC165, 74HC194, etc. 194 är universell, den kan konfigureras som vi vill. Å andra sidan har vi andra dubbelriktade som 165 och 164, så det rör sig åt vänster eller höger, som anges med riktningskontrollsignalen, men de har bara en konfiguration: parallella ingångar och seriell utgång och seriell ingång respektive parallell utgång.

l298n
Relaterad artikel:
L298N: modul för styrning av motorer för Arduino

Vad är ett skiftregister för?

Varför skifta bitar? Att skifta databitar kan vara mycket praktiskt. En anledning är att du måste flytta värdena för ett specifikt syfte. Men förskjutning innebär också att man utför vissa operationer på de lagrade bitarna. Till exempel är att flytta en uppsättning bitar åt vänster som att multiplicera dem med 2. Att förskjuta dem åt höger är som att dela med 2. Därför kan det vara väldigt praktiskt att göra binär multiplikation och delning ...

De används också för att generera pseudoslumpmässiga värden, för successiva approximationer som ofta används i analoga / digitala omvandlare, för att fördröja etc. Användningarna i logiska digitala kretsar det är ganska vanligt, så det är inte ovanligt att behöva använda dem i något projekt.

74HC595 Funktioner

74HC595 pin-out

El 74HC595 är en ganska enkel IC. Det är ett 8-bitars skiftregister, det vill säga det har 8 flip-flops för att lagra 8 bitar. Pin-out eller pins på detta chip kan ses på bilden ovan, med Vcc och GND för ström, och sedan de som är markerade som Q som är data. Resten motsvarar klock- / styrsignaler.

den ingången har den i serie och utdata parallellt. Därför, med en enda ingång, kan dessa 8 utgångar styras samtidigt. Du behöver bara tre stift från den använda mikrokontrollern (t.ex. Arduino) för att köra den. Dessa är Latch, Clock och Data. Spärren är stift 13 i det här fallet, även om det kan variera, så du bör konsultera tillverkarens datablad. Klockan kan vara 11 eller andra, och databiten är 14.

La klocktecken det matar kretsen för att bestämma takt eller rytm som den kommer att fungera med. Datautmatningen kommer att ändra chipets beteende. Till exempel, när man byter från LÅG till HÖG och genererar den nya klockpulsen genom att föra klockan från HÖG till LÅG, uppnås det att registrera den aktuella positionen där förskjutningen är belägen, det värde som matas in av denna datapinne. Om du upprepar detta 8 gånger har du spelat in alla 8 positionerna och har en byte lagrad (Q0-Q7).

Använd med Arduino

Arduino med 74hc595

För att göra det tydligare, kanske ett exempel med Arduino Det förklarar det för dig på ett mer intuitivt och grafiskt sätt än att börja lansera teoretiska data. Du kan till exempel skapa en enkel krets med Arduino och ett 74HC595 skiftregister för att spela med några lampor eller lysdioder. Ett annat något bättre och enklare alternativ är att använda en 7-segmentsdisplay för att läsa värdena från registret.

2n2222 transistor
Relaterad artikel:
2N2222 transistor: allt du behöver veta

Diagrammet är det du kan se i föregående bild, när Arduino är ansluten på det sättet med 74HC595 och displayen, Det återstår bara att programmera det med Arduino IDE och vi kommer att se skiftregistrets möjligheter. Koden skulle vara följande, med en serie binära koder 0bxxxxxxxx, där x bitar:

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);
                }
}

Datablad

anslagstavla

På marknaden hittar du olika 74HC595 chips från olika tillverkare. En av dem är de mytiska Texas Instruments eller Ti, men hur som helst, varje tillverkare bör erbjuda dig databladet att ladda ner från dess officiella webbplats. Du kan också hitta några andra som den i ON Semiconductor, sparkkul, STMicroelectronics, NXP, etc


Bli först att kommentera

Lämna din kommentar

Din e-postadress kommer inte att publiceras. Obligatoriska fält är markerade med *

*

*

  1. Ansvarig för uppgifterna: Miguel Ángel Gatón
  2. Syftet med uppgifterna: Kontrollera skräppost, kommentarhantering.
  3. Legitimering: Ditt samtycke
  4. Kommunikation av uppgifterna: Uppgifterna kommer inte att kommuniceras till tredje part förutom enligt laglig skyldighet.
  5. Datalagring: databas värd för Occentus Networks (EU)
  6. Rättigheter: När som helst kan du begränsa, återställa och radera din information.