74hc595: alles over het schuifregister IC

El 74HC595-chipZoals het uit zijn naam is afgeleid, is het een gedrukte schakeling die binnenin een CMOS-schakeling implementeert. Concreet is het een schuifregister. Voor degenen die deze registers nog steeds niet kennen, is het in feite een sequentieel digitaal circuit, dat wil zeggen dat de waarden in de uitvoer eenvoudigweg afhangen van de waarden van de invoer en eerdere opgeslagen waarden.

Dat onderscheidt ze van combinaties, dat de outputs alleen afhangen van de waarde van de input. Dit register bestaat uit een reeks D-type flip-flops of flip-flops die worden aangestuurd door een kloksignaal. Die flip flops zijn herinneringen die een eerdere waarde behouden. Elk slaat een beetje op en uit de naam kun je ook afleiden dat het ze kan verschuiven. Door de bits van de ene naar de andere kant te laten lopen, kunnen we behoorlijk interessante digitale bewerkingen uitvoeren.

Schuifregistratietypen

Schuifregister diagram

Volgens type verplaatsing dat ze doen op de bits die ze opslaan, kunnen de registers van verschillende typen zijn. Ze kunnen naar links of rechts bewegen, sommige zijn bidirectioneel, maar de volgorde bepaalt het type, zelfs in andere gevallen zijn ze ook gecatalogiseerd op basis van hoe de inputs en outputs zijn:

  • Serie-serie: die waarbij alleen de eerste flip-flop gegevens ontvangt en ze in serie gaan totdat het volledige register is gevuld. De laatste flip-flop is degene die rechtstreeks op de uitgang is aangesloten en waardoor het register wordt verlaten.
  • Parallelle serie: de bits gaan parallel om tegelijkertijd in alle flip-flops te worden opgeslagen, maar gaan dan in serie uit. Ze kunnen worden gebruikt om van serie naar parallel te converteren en vice versa.
  • Serie-parallel: vergelijkbaar met de vorige, alle uitgangen zijn tegelijkertijd toegankelijk vanaf alle flip-flops. Maar de gegevens worden alleen ingevoerd door de eerste in reeks.
  • Parallel-parallel: Gegevens gaan parallel en gaan parallel uit.

Een van de bekendste circuits hebben we de 74HC595, 74HC164, 74HC165, 74HC194, enz. De 194 is universeel, hij kan naar wens worden geconfigureerd. Aan de andere kant hebben we andere bidirectionele zoals 165 en 164, daarom beweegt het naar links of rechts, zoals gespecificeerd met het richtingsregelsignaal, maar ze hebben slechts één configuratie: parallelle ingangen en seriële uitgang, en seriële ingang en parallel output.

l298n
Gerelateerd artikel:
L298N: module om motoren voor Arduino aan te sturen

Waar is een ploegendienst voor?

Waarom bits verschuiven? Het verschuiven van databits kan erg praktisch zijn. Een reden is dat u de waarden voor een specifiek doel moet verschuiven. Maar verschuiven omvat ook het uitvoeren van enkele bewerkingen op de opgeslagen bits. Een reeks bits bijvoorbeeld naar links verschuiven is als vermenigvuldigen met 2. Ze naar rechts verschuiven is als delen door 2. Daarom kunnen ze bij binaire vermenigvuldiging en deling erg praktisch zijn ...

Ze worden ook gebruikt om pseudo-willekeurige waarden te genereren, voor opeenvolgende benaderingen die veel worden gebruikt in analoge / digitale converters, om te vertragen, enz. Het gebruik in logische digitale schakelingen het komt vrij vaak voor, dus het is niet ongebruikelijk dat u ze in een project moet gebruiken.

74HC595 Kenmerken

74HC595 pin-out

El 74HC595 is een redelijk rechttoe rechtaan IC. Het is een 8-bits schuifregister, dat wil zeggen, het heeft 8 flip-flops om 8 bits op te slaan. De pin-out of pinnen van deze chip zijn te zien in de afbeelding hierboven, met Vcc en GND voor stroom, en vervolgens die gemarkeerd als Q, wat de gegevens zijn. De rest komt overeen met klok- / stuursignalen.

De input heeft het in serie en output parallel. Daarom kunnen deze 8 uitgangen met één enkele ingang tegelijkertijd worden aangestuurd. Je hebt maar drie pinnen van de gebruikte microcontroller (bijvoorbeeld: Arduino) nodig om deze aan te sturen. Dat zijn Latch, Clock en Data. De vergrendeling is in dit geval pin 13, hoewel deze kan variëren, dus u dient het gegevensblad van uw fabrikant te raadplegen. De klok kan 11 of iets anders zijn, en de databit is 14.

La klok teken het zal het circuit voeden om de beat of het ritme te bepalen waarop het zal werken. De gegevensuitvoer verandert het gedrag van de chip. Als u bijvoorbeeld van LAAG naar HOOG overschakelt en de nieuwe klokpuls genereert door de klok van HOOG naar LAAG door te geven, wordt bereikt dat de huidige positie waar de verplaatsing zich bevindt, de waarde die door deze gegevenspin wordt ingevoerd, wordt geregistreerd. Als je dit 8 keer herhaalt, heb je alle 8 posities geregistreerd en heb je één byte opgeslagen (Q0-Q7).

Gebruik met Arduino

Arduino met de 74hc595

Om het duidelijker te maken, misschien een voorbeeld met Arduino Het legt het u op een meer intuïtieve en grafische manier uit dan het starten van theoretische gegevens. Je kunt bijvoorbeeld een eenvoudig circuit maken met Arduino en een 74HC595 schuifregister om met wat lampjes of LED's te spelen. Een andere iets betere en eenvoudigere optie is om een ​​7-segment display te gebruiken om de waarden uit het register te lezen.

2n2222 transistor
Gerelateerd artikel:
2N2222-transistor: alles wat u moet weten

Het diagram is het diagram dat je in de vorige afbeelding kunt zien, zodra de Arduino op die manier is verbonden met de 74HC595 en het display, Het blijft alleen om het te programmeren met de Arduino IDE en we zullen de mogelijkheden van het schuifregister zien. De code zou de volgende zijn, met een reeks binaire codes 0bxxxxxxxx, waarbij x bits:

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

Data papier

prikbord

Op de markt vind je verschillende 74HC595-chips van verschillende fabrikanten. Een daarvan is de mythische Texas Instruments of Ti, maar hoe het ook zij, elke fabrikant zou u de datasheet moeten aanbieden om te downloaden van de officiële website. Je kunt er ook een aantal vinden zoals die in ON Semiconductor, vonkplezier, STMicroelectronics, NXP, enz.


Wees de eerste om te reageren

Laat je reactie achter

Uw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *

*

*

  1. Verantwoordelijk voor de gegevens: Miguel Ángel Gatón
  2. Doel van de gegevens: Controle SPAM, commentaarbeheer.
  3. Legitimatie: uw toestemming
  4. Mededeling van de gegevens: De gegevens worden niet aan derden meegedeeld, behalve op grond van wettelijke verplichting.
  5. Gegevensopslag: database gehost door Occentus Networks (EU)
  6. Rechten: u kunt uw gegevens op elk moment beperken, herstellen en verwijderen.