Go Down

Topic: Vos remarques sur ce sketch (Read 5839 times) previous topic - next topic

franck29

Je suis sur ce site justement.

J'ai réussi à modifier le programme avec la Led et le Bouton. J'ai rajouté une seconde Led et j'ai
fait en sorte que le bouton non enfoncé = led verte allumé et bouton enfoncé = led rouge allumé.

Code: [Select]

// Déclaration des constantes

const int bouton = 2;     
const int led_verte = 3;
const int led_rouge = 4;     

// Déclaration des variables

int etatBouton = 0;                   // variable pour le statu du bouton

// Initialisation du programme

void setup() {
 
  pinMode(led_verte, OUTPUT);         
  pinMode(led_rouge, OUTPUT); 
  pinMode(bouton, INPUT);     
}

// Fonction loop: coeur du programme ce répétant sans cesse

void loop() {

  etatBouton = digitalRead(bouton);    // on lit l'état du bouton, enfoncé ou pas

  if (etatBouton == HIGH) {            // si bouton non enfoncé (pin 2 niveau haut) on allume la led verte
    digitalWrite(led_verte, HIGH);
    digitalWrite(led_rouge, LOW);
  }
  if (etatBouton == LOW) {             // si bouton enfoncé (pin 2 niveau bas) on allume la led rouge                                                       
    digitalWrite(led_verte, LOW);
    digitalWrite(led_rouge, HIGH);
  }
 
}


L'écriture vous semble correct?

Je viens de comprendre aussi à quoi serve les fonctions "digitalWrite" et "digitalRead". Elle permette de lire
l'état d'une Pin ou de changer son état.

Par contre, en début de programme nous n'avons pas à inclure une bibliothèques. Cela signifie t'il que c'est
deux fonctions donnée en exemple font partie du langage naturel du C?



papybricol

Non, pas dans le C de base,  mais elles sont dans le "paquet" Arduino de base, surajouté au C.
comme d'autres fonctions, instructions:
http://arduino.cc/en/Reference/HomePage

Les bibliothèques, en option, correspondent à des usages spécifiques, fonction des "shields", capteurs ou actuateurs ajoutés à la carte Arduino.
http://arduino.cc/en/Reference/Libraries (les plus courantes)

L'écriture est correcte (attention: point de vue d'un bricoleur  :smiley-roll-sweat: sans formation académique!)
Au début ne cherche pas à faire un code plus compacte, mais moins facile à appréhender.



...ils embarquèrent la logique, coupèrent les cordons, alors, libérés de leurs chaînes, une immensité s'ouvrait devant eux...

68tjs

Quote
Cela signifie t'il que c'est deux fonctions donnée en exemple font partie du langage naturel du C?

Jette un oeil dans le répertoire de l'IDE et tu auras tous les fichiers ajoutés par "Arduino" et qui constituent la "bibliothèque arduino"

chez moi sous Linux c'est :
arduino/hardware/arduino/cores/arduino

sous Win ce ne doit pas être trop différent.

Listage :
Arduino.h  HardwareSerial.cpp  IPAddress.h  Platform.h   Server.h    Udp.h        USBDesc.h        wiring.c          wiring_shift.c
binary.h   HardwareSerial.h    main.cpp     Printable.h  Stream.cpp  USBAPI.h     WCharacter.h     wiring_digital.c  WMath.cpp
CDC.cpp    HID.cpp             new.cpp      Print.cpp    Stream.h    USBCore.cpp  WInterrupts.c    wiring_private.h  WString.cpp
Client.h   IPAddress.cpp       new.h        Print.h      Tone.cpp    USBCore.h    wiring_analog.c  wiring_pulse.c    WString.h

Go Up