Étape 6: Projet 2: « 2 fils » contrôleur d’affichage 7 segments
bit 1 = pin 3
bit 2 = broche 4
bit 3 = broche 5
bit 4 = pin 6
bit 5 = pin 10
bit 6 = broche 11
bit 7 = axe de 12
bit 8 = pin 13 (si vous souhaitez utiliser la virgule décimale)
Et la cathode de l’affichage à travers la résistance de 330 ohms et pouvoir fournir au sol
maintenant, ouvrez le seven_seg_demo.pde dans l’arduino IDE
Tout d’abord, vous voyez où nous définissons les broches de données et horloge
#define données 2
#define horloge 3
Ensuite, nous avons mis tous les modèles charater en binaire, c’est assez facile, Regardez le schéma ci-dessous, si vous avez besoin du type de segment moyen, ensuite vous devez le segment supérieur, si oui type dans un autre, continuez à faire ceci jusqu'à ce que vous couvrez tous les segments de 8, remarque mon petit plus à droite (8 bits) est toujours 0, c’est parce que j’ai jamais tourner à la virgule décimale.
octet zéro = B01111110 ;
octet, un = B00000110 ;
octet 2 = B11011010 ;
octet 3 = B11010110 ;
octet 4 = B10100110 ;
octet 5 = B11110100 ;
octet six = B11111100 ;
octet 7 = B01000110 ;
octet huit = B11111110 ;
octet neuf = B11110110 ;
ensuite dans la configuration du Sub, nous avons mis nos données et horloge épingles aux sorties
void setup()
{
pinMode (horloge, sortie) ; faire l’horloge à épingler une sortie
pinMode (données, sortie) ; faire de la broche de données un output3
}
puis dans la boucle Sub nous utilisons shiftOut pour afficher chaque attente de modèle (nombre) 1/2 seconde et visualisez la prochaine, 0 à 9, puisque son être dans la boucle Sub fonctionner il seront compter de 0 à 9 et répéter pour toujours.
void loop()
{
shiftOut (données, horloge, LSBFIRST, zéro) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, 1) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, 2) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, trois) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, quatre) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, 5) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, 6) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, 7) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, 8) ;
Delay(500) ;
shiftOut (données, horloge, LSBFIRST, 9) ;
Delay(500) ;
}