Pour mieux suivre ce cours, voici un support sous forme de mémo
2 fonctions essentiels :
Zéro branchement
Fonctions :
analogWrite( pin, value ); : Permet d'envoyer une puissance de 0 à 5V (ou 3.3V) en mettant value de 0 à 255.
Pimp My R... ARDUINO : Avec une LED 3 couleurs, faire un fade mélangeant le rouge et bleu, le bleu et le vert et enfin le vert et le rouge. Et tout ça en boucle.
Dans l'absolu il faudrait un condensateur autour de l'interrupteur pour éviter les rebonds (faux positifs mécaniques).
bool isOn = digitalRead( pin ); : Permet de lire une valeur numérique sur une pinoche.
Objectif: Allumer la LED 13 si l'interrupteur est appuyé.
Mettre un delay(2500); dans le loop.
Utiliser le code la slide suivante, que constate-t-on ?
Nécessite la 13 et un interrupteur.
Objectif : Allumer la LED 1 seconde après avoir interrompu le programme. (Voir diapo suivantes).
L'interruption mais en pause la fonction loop(). Elle doit être très courte.
attachInterrupt(digitalPinToInterrupt( pin ), fonction, type );
Une fonction partagée entre l'interruption et le reste doit être déclarée volatile, exemple volatile bool isPressed;
Débugger, il faut utiliser 2 méthodes (au moins) :
Dans l'IDE Arduino, vous avez en haut à droite: Le monitor et serial plotter.
Pour fonctionner, on utilsera une librairie NodeJS capable de lire le port série.
Nécessite un capteur de mesure (LUX, db, hPa, ...).
Avec l'écran 7 segments de 4 chiffres faire un compteur de temps, objectif, appuyé sur l'interrupteur au bon moment.
Ajouter des LEDs pour indiquer la réussite du joueur ou non.
Envoyer des infos sur le port série.
Lire les données sur le port série de l'ordinateur.
Faire une petite IHM (page web, soft, ...) pour rendre le résultat plus sympa.
Faire un projet sur la forge, me rajouter en tant que membres. Mettre un schéma (Thinkercad), un README et le code source.
NE PAS APPELER LE PROJET docker_iot_... .
Utiliser la librairie SevSeg (Sketch ➡️ Include librairies ➡️ Manage librairies ➡️ Sevseg)
Utiliser un exemple (Files ➡️ Examples ➡️ Sevseg)
Peut-être transformer COMMON_ANODE en COMMON_CATHODE