Panier d’achat

Aucun produit dans le panier.

Home Shop Cart0 Phone
SN74HC595N Registres À Décalage Compteur Tri-State 8-Bit

7.00 د.م.

7.00 د.م.

94 en stock

SN74HC595N Registres À Décalage Compteur Tri-State 8-Bit

7.00 د.م.

94 en stock

Icône liste de souhaits Ajouter à la liste de souhaitsAjouter à la liste de souhaits

Description

Tutoriel :Utilisation de registre à décalage 74HC595 avec Arduino


Qui est-il ? C’est un registre à décalage de 8 bits.

A quoi sert-il ? il sert à convertir une information série en parallèle. Mais on l’utilise aussi pour économiser le nombre de broche utilisée en sortie.
C’est d’ailleurs pour ce dernier cas que je vais présenter la chose.

En effet, au dessus de 3 sorties à piloter, il peut être intéressant d’utiliser ce composant afin d’économiser des broches sur votre carte de commande. Pourquoi 3, car c’est le nombre minimum de broche nécessaire au fonctionnement du composant.

Comment ça fonctione ? Afin de mieux comprendre le fonctionnment j’ai fait ces quelques images ci-dessous :


Spécification:

Texas Instruments
Registres à décalage compteur
RoHS:  Détails
Serial to Serial/Parallel
1
8 bit
PDIP-16
74HC
CMOS
5 / 10
3-State
200 ns, 40 ns, 34 ns
6 V
– 40 C
+ 85 C
Tube
Fonction: Tri-State 8-Bit
Plage de températures de fonctionnement: – 40 C to + 85 C
Série: SN74HC595
Largeur: 6.35 mm
Marque: Texas Instruments
Style de montage: Through Hole
Nombre de lignes de sortie: 10
Tension d’alimentation de fonctionnement: 2 V to 6 V
Type de produit: Counter Shift Registers

Fonctionnement:

74HC595 tutoriel avec arduino 1
74HC595 tutoriel avec arduino 2
74HC595 tutoriel avec arduino 3
74HC595 tutoriel avec arduino 4
74HC595 tutoriel avec arduino 5
74HC595 tutoriel avec arduino 6

Comme on peut le voir, il y a 2 grandes phases :
La première on place les données que l’on veut
La deuxième est la validation des données


Maintenant passons à la pratique

Dans cet exemple, le but sera d’allumer des LED car c’est le plus simple électriquement. En effet, on peut également piloter des moteurs, des relais, des électrovannes, … mais cela nécessite une interface de puissance, ce qui n’est pas le sujet de ce tutoriel.

cablage_74HC595 avec arduino
comme on peut le voir le schéma est très simple :
Nous avons d’une part le microcontroleur qui alimente et pilote le 74HC595
puis le 74HC595 qui fait le lien avec les LED
et enfin les LED

Il est tant, maintenant, de faire fonctionner tout ça.


Code

//constantes pour les broches de commande du 74HC595
int DS_pin = 8;   // broche de donnée
int STCP_pin = 9; // broche de validation de la donnée
int SHCP_pin = 10;// broche de validation compléte (latch)

boolean registre[8]; //c'est un tableau de 8 bit correspondant aux sorties du 74HC595 à l'état voulu
                      // pour se programme j'ai fait le choix du tableau car cela reste simple pour un tutoriel

void setup()
{
    //configure les broches en sortie
    pinMode(DS_pin,OUTPUT);
    pinMode(STCP_pin,OUTPUT);
    pinMode(SHCP_pin,OUTPUT);
}

//Cette fonction "écrit" le contenu du tableau dans le registre
//pour chaque bit, on met la brohe de validation du bit à 0, on place la broche de donnée à l'état contenu dans le tableau et ensuite on valide le bit
//à la fin on valide le tout
void EcrireRegistre()
{
  
  digitalWrite(STCP_pin, LOW);
  
  for (int i = 7; i>=0; i--)
  {
    digitalWrite(SHCP_pin, LOW);
    digitalWrite(DS_pin, registre[i] );
    digitalWrite(SHCP_pin, HIGH);
  }
  
  digitalWrite(STCP_pin, HIGH);
}


//Dans la boucle du programme plusieurs séquences différentes sont jouées
void loop()
{
   //Allume successivement les sorties
   for(int i = 0; i<8; i++)
   {
    registre[i] = HIGH;
    delay(300);
    EcrireRegistre();
   }

   //éteint successivement les sorties
   for(int i = 7; i>=0; i--)
   {
    registre[i] = LOW;
    delay(300);
    EcrireRegistre();
  
   }

   //séquence qui allume une LED sur 2 alternativement
    bool b = 0;
    for(int i = 0; i<4; i++)
    {
        
      for(int j = 0; j<8; j++)
      {
        registre[j] = j%2 xor b;
      }
      EcrireRegistre();
      b = not b;
      delay(300);
    }

    //remise à zéro de toutes les LED
    for(int j = 0; j<8; j++)
    {
      registre[j] = 0;
    }
    EcrireRegistre();
}

Plus d’information visite notre page Facebook.



			

Avis

Il n’y a pas encore d’avis.

Soyez le premier à laisser votre avis sur “SN74HC595N Registres À Décalage Compteur Tri-State 8-Bit”

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Tous les résultats de recherche
×