Polling to switch ON/OFF LED depending on Button Status

Dependencies:   mbed

Fork of Amaldi_3_Exercise_LED-Button_Polling by Amaldi

Committer:
pinofal
Date:
Sun Jul 01 11:30:52 2018 +0000
Revision:
2:8cd95bea99dc
Parent:
1:832dfb4ba1af
Button Polling

Who changed what in which revision?

UserRevisionLine numberNew contents of line
pinofal 1:832dfb4ba1af 1 // Tested: NUCLE-L476RG
pinofal 1:832dfb4ba1af 2
pinofal 1:832dfb4ba1af 3 #include "mbed.h"
pinofal 1:832dfb4ba1af 4
pinofal 1:832dfb4ba1af 5 // crea oggetti Button, LED e serialPC
pinofal 1:832dfb4ba1af 6 DigitalIn myButton(USER_BUTTON);
pinofal 1:832dfb4ba1af 7 DigitalOut myLed(LED1);
pinofal 1:832dfb4ba1af 8 Serial pc(USBTX, USBRX);
pinofal 1:832dfb4ba1af 9
pinofal 1:832dfb4ba1af 10
pinofal 1:832dfb4ba1af 11 /********/
pinofal 1:832dfb4ba1af 12 /* MAIN */
pinofal 1:832dfb4ba1af 13 /********/
pinofal 1:832dfb4ba1af 14 int main()
pinofal 1:832dfb4ba1af 15 {
pinofal 2:8cd95bea99dc 16 // imposta velocità della comunicazione con il PC
pinofal 2:8cd95bea99dc 17 pc.baud(921600);
pinofal 2:8cd95bea99dc 18
pinofal 2:8cd95bea99dc 19 // messaggio di benvenuto
pinofal 2:8cd95bea99dc 20 pc.printf("\r\nHallo Amaldi Students - Exercise 3 \r\n");
pinofal 1:832dfb4ba1af 21
pinofal 2:8cd95bea99dc 22 //imposta il funzionamento del pulsante come "PullDown": Aperto = '0'. L'altra modalità di funzinamento è PullUp
pinofal 2:8cd95bea99dc 23 myButton.mode(PullDown);
pinofal 1:832dfb4ba1af 24
pinofal 2:8cd95bea99dc 25 // POLLING: replica sul LED myLED lo stato del pulsante myButton
pinofal 2:8cd95bea99dc 26 while(true)
pinofal 2:8cd95bea99dc 27 {
pinofal 2:8cd95bea99dc 28 if (myButton == 1)
pinofal 2:8cd95bea99dc 29 {
pinofal 2:8cd95bea99dc 30 // Button is pressed
pinofal 2:8cd95bea99dc 31 myLed = 1; // Accendi LED
pinofal 2:8cd95bea99dc 32 }
pinofal 2:8cd95bea99dc 33 else
pinofal 2:8cd95bea99dc 34 {
pinofal 2:8cd95bea99dc 35 // Button i released
pinofal 2:8cd95bea99dc 36 myLed = 0; // Spegni LED
pinofal 2:8cd95bea99dc 37 }
pinofal 1:832dfb4ba1af 38 }
pinofal 1:832dfb4ba1af 39 }
pinofal 1:832dfb4ba1af 40