Marco Zecchini
/
Example_interrupt_button_timer
Interrupt on user button press and timer exaple usage
main.cpp
- Committer:
- marcozecchini
- Date:
- 2019-02-23
- Revision:
- 2:2a43e5048e22
- Parent:
- 1:2e6e3436fc61
File content as of revision 2:2a43e5048e22:
#include "mbed.h" /* * Button with interrupt example */ InterruptIn mybutton(USER_BUTTON); DigitalOut myled(LED1); Timer t; float delay = 5.0; // 1 sec void pressed() { t.stop(); printf("You pressed after %f seconds\n", t.read()); if (delay == 5.0) delay = 0.2; // 200 ms else delay = 5.0; // 1 sec t.reset(); t.start(); } int main() { t.start(); mybutton.fall(&pressed); while (1) { myled = !myled; //toggle the led wait(delay); } } /* * Timeout version */ /* DigitalOut led1(LED1); DigitalOut led2(LED2); Timeout timeout; void flip() { led2 = !led2; } int main() { led2 = 1; timeout.attach(&flip, 2.0); // setup flipper to call flip after 2 seconds // spin in a main loop. flipper will interrupt it to call flip while(1) { led1 = !led1; wait(0.2); } } */