Spaceship Interface

Transcription

Spaceship Interface
Spaceship
Interface
Dans ce projet, vous allez concevoir un circuit qui aurait pu être utilisé dans un film de science-fiction dans
les années 1970. Quand la carte Arduino recevra un signal par le bouton poussoir, une LED verte
s’éteindra et 2 autres LED commenceront à clignoter.
Objectif : utiliser les entrées de la carte Arduino, concevoir un programme
Temps de réalisation estimé : 45 minutes
Difficulté : 1/5
Guillaume CHERRIER - 2015
Partie 1 : Le circuit
Matériel nécessaire pour la réalisation de ce TP :
 Une carte Arduino (ou Sparkfun)
 Un ordinateur équipé du logiciel Arduino
 Une breadboard
 3 LED
 3 résistances de 220 ohms (rouge rouge marron)
 Une résistance de 10k ohms (marron noir orange)
 Des câbles
 Un bouton
Ci-dessous se trouve le schéma du montage que vous allez devoir réaliser.
N’oubliez pas de faire vérifier votre montage avant sa mise sous tension afin d’éviter toute détérioration du
matériel. En cas de problème, n’hésitez pas à faire appel à un assistant.
Partie 2 : Le code
Chaque programme Arduino est composé de 2 fonctions principales qui seront exécutées par la carte
Arduino. Chaque fonction a un nom unique et est délimitée par des crochets. La fonction setup() sera
exécutée lors du démarrage et la fonction loop() sera exécutée en boucle jusqu’à l’arrêt de la carte.
 Étape 1 :
Ouvrez le logiciel Arduino. Les deux fonctions setup() et loop() y sont déjà présentes.
Créez une variable de type entier (int) en dehors des deux fonctions que nous nommerons switchstate (le
nom n’a pas d’importance) et que nous initialiserons à 0. Cette variable contiendra l’état du bouton (s’il est
enfoncé ou pas).
Nous allons maintenant configurer les broches de la carte Arduino à l’intérieur de la fonction setup(). Pour
cela, nous allons utiliser la fonction pinMode() afin de déterminer si les broches de la carte Arduino sont
des entrées (INPUT) ou des sorties (OUTPUT).
Les LED seront connectées aux bornes 3, 4 et 5 de la carte qui seront configurées en sorties tandis que
l’interrupteur sera sur la borne 2 en tant qu’entrée.
Maintenant que les entrées et sorties ont été configurées, nous allons entrer dans le vif du sujet.
Pour commencer, il va falloir récupérer l’état de l’interrupteur, et pour cela, nous allons utiliser la fonction
digitalRead() qui va nous retourner 0 ou 1.
En fonction de l’état de l’interrupteur, nous allons allumer ou éteindre certaines LED. Pour arriver à nos
fins, on va utiliser une condition et la fonction digitalWrite() qui enverra 0 ou 5 volts sur les broches de
sortie.
Pour information, HIGH correspond à l’état haut, soit 5 volts et LOW, l’état bas ou 0 volts.
Si le bouton n’est pas pressé, la LED connectée sur la borne 3 de la carte Arduino sera allumée
contrairement aux LED connectées aux bornes 4 et 5.
Il faut maintenant gérer le cas où notre bouton serait enfoncé (condition non respectée) :
A ce stade, lorsque l’on appuie sur le bouton, la LED verte s’éteint et l’une des deux rouges s’allume.
Nous voulons maintenant faire en sorte que les deux LED rouges clignotent.
Pour cela, il va falloir utiliser une autre fonction appelée delay() qui permet de faire une pause dans le
programme.
Votre code doit maintenant ressembler à ceci :
 Étape 2 :
Nous allons maintenant transférer le code vers la carte Arduino afin de tester notre programme.
Afin de lancer la vérification du code source, cliquez sur le bouton n°1 (voir schéma ci-dessous). Si
aucune erreur n’a été trouvée par le logiciel (voir console tout en bas du logiciel Arduino), vous pouvez
lancer le transfert en cliquant sur le bouton n°2.
Le TP 2 est maintenant terminé ! Nous espérons qu’il vous a plu.
Si vous avez des suggestions d’amélioration, n’hésitez pas à en parler à un assistant.

Documents pareils