MTclockDouble: Exemple 2
Gestion par événements pour UNO, Nano, Mega
Flashs et bouton
Ce programme va faire flasher LED_BUILTIN quand un bouton est appuyé.
On va utiliser un bouton qui commande un métronome double, un événement sur deux va allumer la led, un événement sur deux va l'éteindre. C'est un exemple classique qui peut servir de base à des tâches comme programmer un ventilateur, un moteur...
Programme complet recommandé
Ce programme se fait complètement sous interruption, et libère loop qui peut être utilisé pour faire autre chose.
// Ce programme fait clignoter LED_BUILTIN quand un bouton est appuyé #include <MTobjects.h> // V1.0.4 Voir http://arduino.dansetrad.fr/MTobjects const uint8_t PIN_BUTTON = A0; // Bouton câblé entre GND et A0 // Le métronome fait clignotter la led void allume(void) { digitalWrite(LED_BUILTIN, HIGH); } void eteint(void) { digitalWrite(LED_BUILTIN, LOW); } MTdoubleClock Metronome(100 milli_secondes, 10 milli_secondes, allume, eteint, MT_INFINI, MT_OFF); // Le bouton active ou désactive le métronome void marche(void) { Metronome.start(); } void arret(void) { Metronome.stop(); eteint(); } MTbutton Bouton(PIN_BUTTON, marche, arret); void setup() { pinMode(LED_BUILTIN, OUTPUT); } void loop(){}