Polling to switch ON/OFF LED depending on Button Status
Dependencies: mbed
Fork of Amaldi_3_Exercise_LED-Button_Polling by
LED-Button-Polling.cpp@2:8cd95bea99dc, 2018-07-01 (annotated)
- 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?
User | Revision | Line number | New 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 |