[ASTUCE] Deux afficheurs 7 segments sans décodeur BCD

Informations et questions sur les composants tiers de la boutique (émetteur/récepteur RF, capteurs...)

[ASTUCE] Deux afficheurs 7 segments sans décodeur BCD

Message non lude Mow » Jeu 16 Jan 2014 00:44

Utiliser deux afficheurs 7 segments (à anode commune) avec un arduino UNO sans décodeur BCD.

- MATÉRIEL -

Arduino UNO
2 afficheurs 7 segments
2 transistors

- PRINCIPE -

Les transistors vont allumer à tour de rôle les afficheurs.
À chaque alternance on affiche le chiffre de l'afficheur allumé.
La rapidité de changements (10 ms) donne l'illusion que les deux afficheurs fonctionnent en même temps.

- MONTAGE -

Relier les broches des deux afficheurs ensemble.
Broche 1 du premier afficheur à la broche 1 du second afficheur, broche 2 sur 2 etc...

Image

Relier les broches des afficheurs à l'arduino.
Les Broches 1 sur le PIN D2 de l'arduino par exemple.

Image

Tableau de correspondance afficheur / arduino :
(viewtopic.php?f=38&t=914)

Code: Tout sélectionner
Afficheurs   Arduino
1      2
2      8
4      7
9      5
10      6
12      4
13      9
14      3


Relier l'alimentation de chaque afficheur (broche 3,5,11,16) à travers un transistor.
Relier les transistors aux PIN D11 et D12.

- CODE -

La librairie à décompresser et ajouter dans le répertoire library de arduino ( C:\Program Files (x86)\Arduino\libraries )

Code permettant d'afficher 4 et 6 sur les afficheurs
Code: Tout sélectionner
#include <Double7.h>
Double7 d;

void setup() { }

void loop()
{   
   d.afficher(4, 6);     
}


Code permettant de compter de 0 à 99. Un afficheur affiche les unités l'autre les dizaines.
Code: Tout sélectionner
#include <Double7.h>

/*
 * Double afficheur 7 segments
 */

Double7 d;

int compte, compte2 =0;
unsigned long previousTime;

void setup()
{
 
}

void loop()

  unsigned long currentTime = millis();
 
  if ( currentTime > previousTime + 250)
  {
      // on incrémente le compteur
      compte++;
     
      if ( compte > 9)
      {
        compte2++;
        compte =0;
        if ( compte2 > 9)
        {
          compte2 =0;
        }
      }
           
      previousTime = currentTime;
   }
   
   d.afficher(compte2, compte);     
}
Fichiers joints
double7segments_bb.jpg
double7segments_bb.jpg (113.53 Kio) Vu 1309 fois
double7_cablage1.jpg
double7_cablage1.jpg (81.65 Kio) Vu 1309 fois
Mow
 
Messages: 1
Inscription: Jeu 16 Jan 2014 00:32

Re: [ASTUCE] Deux afficheurs 7 segments sans décodeur BCD

Message non lude Bemolu » Jeu 20 Mar 2014 22:56

Sympa comme idée. Si tu veux 'économiser' quelques sorties arduino pour d'autres usages, tu peux utiliser ta technique en intercalant un registre à décalage entre l'arduino et les 7-segments.
Cordialement
Bemolu
 
Messages: 63
Inscription: Mer 8 Fév 2012 21:19


Retourner vers Composants tiers

Qui est en ligne

Utilisateurs parcourant ce forum: Yahoo [Bot] et 1 invité