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
[ Wikidébrouillard ] Compteur de passages

Compteur de passages

De Wikidebrouillard.

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

Sommaire

Présentation du projet Arduino

c'est dans cette partie que vous décrivez votre projet

Liste du matériel

Matériel nécessaire pour les capteurs infra-rouge : Kit infra-rouge

réalisation du projet

Explication

Schéma Fritzing

Code

int led2 = 2, led3 = 3, led4 = 4, led5 = 5, led6 = 6, led7 = 7, led8 = 8, reset = 10, unit = 0, mes = 0, capt = 9, etat = 0; // Définition des variables que l'on va utiliser

  // ************ Initialisation des réglages ************ //

void setup() {
  Serial.begin(9600);        // Ouverture du port série à 9600bps
  digitalWrite(reset, HIGH); // Active les résistances de pull-up internes afin de pouvoir détecter une pression sur le bouton reset
  pinMode(capt, INPUT);      // Défini la voie capt (la voie 9 de l'arduino) comme une entrée
  pinMode(led2, OUTPUT);     // Défini la voie led2 (la voie 2 de l'arduino) comme une sortie
  pinMode(led3, OUTPUT);     // Défini la voie led2 (la voie 3 de l'arduino) comme une sortie
  pinMode(led4, OUTPUT);     // Défini la voie led2 (la voie 4 de l'arduino) comme une sortie
  pinMode(led5, OUTPUT);     // Défini la voie led2 (la voie 5 de l'arduino) comme une sortie
  pinMode(led6, OUTPUT);     // Défini la voie led2 (la voie 6 de l'arduino) comme une sortie
  pinMode(led7, OUTPUT);     // Défini la voie led2 (la voie 7 de l'arduino) comme une sortie
  pinMode(led8, OUTPUT);     // Défini la voie led2 (la voie 8 de l'arduino) comme une sortie
}

  // ************ Fonction de remise à zéro ************ //

int raz()
{if(digitalRead(reset) == LOW) // Si le bouton reset est appuyé alors on remet à zéro
{unit = 0;
return 1;}
}

  // ************ Gestion de l'afficheur ************ //
  
void aff() {
switch (unit) {
  case 0 :
  {
  digitalWrite(led2, LOW);   // Fixe la led2 comme allumée
  digitalWrite(led3, LOW);   // Fixe la led3 comme allumée
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, LOW);   // Fixe la led5 comme allumée
  digitalWrite(led6, LOW);   // Fixe la led6 comme allumée
  digitalWrite(led7, LOW);   // Fixe la led7 comme allumée
  digitalWrite(led8, HIGH);  // Fixe la led8 comme éteinte
  }
  break;
  case 1 :
  {
  digitalWrite(led2, HIGH);  // Fixe la led2 comme éteinte
  digitalWrite(led3, LOW);   // Fixe la led3 comme allumée
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, HIGH);  // Fixe la led5 comme éteinte
  digitalWrite(led6, HIGH);  // Fixe la led6 comme éteinte
  digitalWrite(led7, HIGH);  // Fixe la led7 comme éteinte
  digitalWrite(led8, HIGH);  // Fixe la led8 comme éteinte
  }
  break;
  case 2 :
  {
  digitalWrite(led2, LOW);   // Fixe la led2 comme allumée
  digitalWrite(led3, LOW);   // Fixe la led3 comme allumée
  digitalWrite(led4, HIGH);  // Fixe la led4 comme éteinte
  digitalWrite(led5, LOW);   // Fixe la led5 comme allumée
  digitalWrite(led6, LOW);   // Fixe la led6 comme allumée
  digitalWrite(led7, HIGH);  // Fixe la led7 comme éteinte
  digitalWrite(led8, LOW);   // Fixe la led8 comme allumée
  }
  break; 
  case 3 :
  {
  digitalWrite(led2, LOW);   // Fixe la led2 comme allumée
  digitalWrite(led3, LOW);   // Fixe la led3 comme allumée
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, LOW);   // Fixe la led5 comme allumée
  digitalWrite(led6, HIGH);  // Fixe la led6 comme éteinte
  digitalWrite(led7, HIGH);  // Fixe la led7 comme éteinte
  digitalWrite(led8, LOW);   // Fixe la led8 comme allumée
  }
  break;
  case 4 :
  {
  digitalWrite(led2, HIGH);  // Fixe la led2 comme éteinte
  digitalWrite(led3, LOW);   // Fixe la led3 comme allumée
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, HIGH);  // Fixe la led5 comme éteinte
  digitalWrite(led6, HIGH);  // Fixe la led6 comme éteinte
  digitalWrite(led7, LOW);   // Fixe la led7 comme allumée
  digitalWrite(led8, LOW);   // Fixe la led8 comme allumée
  }
  break; 
  case 5 :
  {
  digitalWrite(led2, LOW);   // Fixe la led2 comme allumée
  digitalWrite(led3, HIGH);  // Fixe la led3 comme éteinte
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, LOW);   // Fixe la led5 comme allumée
  digitalWrite(led6, HIGH);  // Fixe la led6 comme éteinte
  digitalWrite(led7, LOW);   // Fixe la led7 comme allumée
  digitalWrite(led8, LOW);   // Fixe la led8 comme allumée
  }
  break;
  case 6 :
  {
  digitalWrite(led2, LOW);   // Fixe la led2 comme allumée
  digitalWrite(led3, HIGH);  // Fixe la led3 comme éteinte
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, LOW);   // Fixe la led5 comme allumée
  digitalWrite(led6, LOW);   // Fixe la led6 comme allumée
  digitalWrite(led7, LOW);   // Fixe la led7 comme allumée
  digitalWrite(led8, LOW);   // Fixe la led8 comme allumée
  }
  break;
   case 7 :
  {
  digitalWrite(led2, LOW);   // Fixe la led2 comme allumée
  digitalWrite(led3, LOW);   // Fixe la led3 comme allumée
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, HIGH);  // Fixe la led5 comme etéinte
  digitalWrite(led6, HIGH);  // Fixe la led6 comme eteinte
  digitalWrite(led7, HIGH);  // Fixe la led7 comme éteinte
  digitalWrite(led8, HIGH);  // Fixe la led8 comme éteinte
  }
  break;
   case 8 :
  {
  digitalWrite(led2, LOW);   // Fixe la led2 comme allumée
  digitalWrite(led3, LOW);   // Fixe la led3 comme allumée
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, LOW);   // Fixe la led5 comme allumée
  digitalWrite(led6, LOW);   // Fixe la led6 comme allumée
  digitalWrite(led7, LOW);   // Fixe la led7 comme allumée
  digitalWrite(led8, LOW);   // Fixe la led8 comme allumée
  }
  break;
   case 9 :
  {
  digitalWrite(led2, LOW);   // Fixe la led2 comme allumée
  digitalWrite(led3, LOW);   // Fixe la led3 comme allumée
  digitalWrite(led4, LOW);   // Fixe la led4 comme allumée
  digitalWrite(led5, LOW);   // Fixe la led5 comme allumée
  digitalWrite(led6, HIGH);  // Fixe la led6 comme éteinte
  digitalWrite(led7, LOW);   // Fixe la led7 comme allumée
  digitalWrite(led8, LOW);   // Fixe la led8 comme allumée
  }
  break; 
  default:
  raz(); // En cas de problème on force tout à 0
}
}

// ************ Fonction permettant de compter le nombre de passages ************ //
int compt(){
  if(unit < 10)
  {
  boolean mes = digitalRead(capt); // mesure du capteur
  delay(5);                        // Temps d'attente de 5ms
  boolean etat = mes;              // Retranscription de la mesure pas HIGH (état haut (1) ) ou LOW (état bas(0) )
  if (etat == LOW)                 // Si l'état est bas (bouton reset appuyé)
  {unit ++;                        // On rajoute +1 au nombre de passage unit++ == unit=unit+1
   delay(400);}                    // temps d'attente de 400ms pour ne pas créer de fausse mesures
  }
  else
  {unit = 0;}                      // Si il n'y a pas d'état bas alros on ne fait rien
}

// ************ Fonction principale ************ //
 
void loop() {
 do{
 aff();
 compt();
 }
 while (raz()!=1); // Temps que la remise à zéro n'est pas activée alors le programme de comptage et d'affichage sont lancés
}

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 ?
Portail des ExplorateursWikidébrouillardLéon DitFLOGPhoto mystèreJ'ai FaitPortraits
AR
CO

Compteur de passages

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