jeudi 18 juillet 2013

[TUTO] Un bouton poussoir en minuteur

Le Matériel:

  • une plaque d'essai pour montage sans soudures,
  • des straps,
  • une LED rouge 5mm,
  • une résistance 1/4w de 200 Ohms environ,
  • un bouton poussoir pour CI,


Le Code:

___________________________________________________________________


// --- Déclaration des constantes utiles ---
const int APPUI=LOW; // constante pour tester état BP

// --- Déclaration des constantes des broches E/S numériques ---

const int BP=2; // Constante pour la broche 2
const int LED=3; // Constante pour la broche 3

// --- Déclaration des constantes des broches analogiques ---


// --- Déclaration des variables globales ---



// --- Déclaration des objets utiles pour les fonctionnalités utilisées ---


// ////////////////////////// 2. 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 1 seule fois au démarrage du programme --- 

// ------- Initialisation fonctionnalités utilisées -------  


// ------- Broches en sorties numériques -------  
 pinMode (LED,OUTPUT); // Broche LED configurée en sortie

// ------- Broches en entrées numériques -------  
 pinMode (BP,INPUT); // Broche BP configurée en entrée

// ------- Activation si besoin du rappel au + (pullup) des broches en entrées numériques -------  
 digitalWrite (BP,HIGH); // Rappel au + activé sur la broche BP configurée en entrée

// ------- Initialisation des variables utilisées -------  

// ----- LED éteinte au début
digitalWrite (LED,LOW); // éteint la LED

} // fin de la fonction setup()
// ********************************************************************************

////////////////////////////////// 3. FONCTION LOOP = Boucle sans fin = coeur du programme //////////////////
// la fonction loop() s'exécute sans fin en boucle aussi longtemps que l'Arduino est sous tension

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


// --- ici instructions à exécuter par le programme principal --- 

if (digitalRead(BP)==APPUI) { // si le BP est appuyé

   digitalWrite(LED,HIGH); //allume la LED
   delay (5000); // attend 5 secondes - le BP est inactif pendant ce temps
   digitalWrite (LED,LOW); // éteint la LED

} // fin si BP appuyé


} // fin de la fonction loop() - le programme recommence au début de la fonction loop sans fin
// ********************************************************************************

___________________________________________________________________

Aucun commentaire:

Enregistrer un commentaire