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.