Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/LocalSettings.php on line 193

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/LocalSettings.php on line 197

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338

Warning: putenv() has been disabled for security reasons in /home/users4/d/debrouilloweb/www/wikidebrouillard/includes/parser/Parser.php on line 2338
[ Wikidébrouillard ] Compteur binaire 8 bits

Compteur binaire 8 bits

De Wikidebrouillard.

(Code)
Ligne 21 : Ligne 21 :
===Code===
===Code===
<pre>
<pre>
-
mettre le code entre ces deux balises
+
const int BP = 11;
-
//attention à bien documenter le cod
+
const int LED[8]={3,4,5,6,7,8,9,10}; // déclare un tableau de 8 constantes de broches
 +
// la broche 2 correspond au bit de poids faible (index 0 du tableau)
 +
// la broche 9 correspond au bit de poids fort (index 8 du tableau)
 +
// --- Déclaration des variables globales ---
 +
int compteur=0; //variable de comptage
 +
int buttonState = 1;
 +
int lastButtonState = 1;
 +
int var = 1;
 +
 
 +
//**************** FONCTION SETUP = Code d'initialisation *****
 +
// La fonction setup() est exécutée en premier et 1 seule fois, au démarrage du programme
 +
 
 +
void setup() 
 +
{ // debut de la fonction setup()
 +
 
 +
  // --- ici instructions à exécuter au démarrage ---
 +
  pinMode (BP, INPUT);
 +
 
 +
 
 +
 
 +
  // ------- Broches en sortie ------- 
 +
 
 +
  // met les 8 broches en sortie
 +
  for (int i=0; i<=7; i++)
 +
  {
 +
    pinMode(LED[i], OUTPUT); //met la broche en sortie
 +
  }
 +
 
 +
  attachInterrupt(0, Reagir, RISING);
 +
}
 +
 
 +
void Reagir()
 +
{
 +
  var = !var;
 +
}
 +
 
 +
void loop()
 +
{
 +
 
 +
 
 +
  while (var==HIGH)
 +
  {
 +
    buttonState = digitalRead (BP);
 +
 
 +
 
 +
 
 +
    if (buttonState != lastButtonState)
 +
    {
 +
      if (buttonState == 0 )
 +
      {
 +
        compteur++;
 +
 
 +
 
 +
        if (compteur>=256) compteur=0;
 +
      }
 +
 
 +
      for (int i=0; i<=7; i++)
 +
      {
 +
        digitalWrite(LED[i],bitRead(compteur,i));
 +
      }
 +
      lastButtonState = buttonState;
 +
    }
 +
 
 +
 
 +
  }
 +
 
 +
  while (var == LOW )
 +
  {
 +
    for (int i=0; i<=7; i++) { // boucle de défilement des 8 bits / broches
 +
 
 +
      // met la broche LED[i] dans l'état du bit de rang i de la variable compteur
 +
      digitalWrite(LED[i],bitRead(compteur,i));
 +
    }
 +
 
 +
    compteur=compteur+1; //incrémente i
 +
    if (compteur>=256) compteur=0; // RAZ variable compteur 255 ==> 0
 +
 
 +
      delay (250); // pause fixant la vitesse du comptage
 +
  }
 +
}
-
e !
 
</pre>
</pre>

Version du 12 janvier 2014 à 01:36

Article incomplet en cours de rédaction
Modèle:Vidéo

Sommaire

Présentation du projet arduino

Ce programme réalise un affichage d'un compteur binaire sur 8 LEDs. Chaque LED visualise directement l'état d'un bit de l'octet utilisé pour le comptage. On peut le faire manuellement ou automatiquement en utilisant un interrupteur, pour passer d'un mode à l'autre.

Liste du matériel

réalisation du projet

Explication

Schéma Fritzing

Code

const int BP = 11;
const int LED[8]={3,4,5,6,7,8,9,10}; // déclare un tableau de 8 constantes de broches
// la broche 2 correspond au bit de poids faible (index 0 du tableau)
// la broche 9 correspond au bit de poids fort (index 8 du tableau)
// --- Déclaration des variables globales ---
int compteur=0; //variable de comptage
int buttonState = 1;
int lastButtonState = 1;
int var = 1;

//**************** FONCTION SETUP = Code d'initialisation *****
// La fonction setup() est exécutée en premier et 1 seule fois, au démarrage du programme

void setup()   
{ // debut de la fonction setup()

  // --- ici instructions à exécuter au démarrage --- 
  pinMode (BP, INPUT);



  // ------- Broches en sortie -------  

  // met les 8 broches en sortie
  for (int i=0; i<=7; i++) 
  { 
    pinMode(LED[i], OUTPUT); //met la broche en sortie 
  }

  attachInterrupt(0, Reagir, RISING);
}

void Reagir()
{
  var = !var;
}

void loop()
{


  while (var==HIGH)
  {
    buttonState = digitalRead (BP);



    if (buttonState != lastButtonState)
    {
      if (buttonState == 0 ) 
      {
        compteur++;


        if (compteur>=256) compteur=0;
      }

      for (int i=0; i<=7; i++) 
      { 
        digitalWrite(LED[i],bitRead(compteur,i));
      }
      lastButtonState = buttonState;
    }


  }

  while (var == LOW )
  {
    for (int i=0; i<=7; i++) { // boucle de défilement des 8 bits / broches

      // met la broche LED[i] dans l'état du bit de rang i de la variable compteur
      digitalWrite(LED[i],bitRead(compteur,i));
    }

    compteur=compteur+1; //incrémente i
    if (compteur>=256) compteur=0; // RAZ variable compteur 255 ==> 0

      delay (250); // pause fixant la vitesse du comptage
  }
}

Liens avec d'autres projets arduino

chercher ici : http://wikidebrouillard.org/index.php/Catégorie:Arduino

Pour aller plus loin

Liens avec le quotidien

quelles peuvent être les applications technologique de ce montage, ou est-ce qu'on retrouve des programme qui y ressemble ?
AR
CO

Compteur binaire 8 bits

Rechercher

Page Discussion Historique
Powered by MediaWiki
Creative Commons - Paternite Partage a l

© Graphisme : Les Petits Débrouillards Grand Ouest (Patrice Guinche - Jessica Romero) | Développement web : Libre Informatique