Interrupt on user button press and timer exaple usage

Dependencies:   mbed

Committer:
marcozecchini
Date:
Wed Feb 20 15:53:32 2019 +0000
Revision:
0:2ca55e55f55d
Child:
1:2e6e3436fc61
Starting from here - Marco

Who changed what in which revision?

UserRevisionLine numberNew contents of line
marcozecchini 0:2ca55e55f55d 1 #include "mbed.h"
marcozecchini 0:2ca55e55f55d 2 /*
marcozecchini 0:2ca55e55f55d 3 * Button with interrupt example
marcozecchini 0:2ca55e55f55d 4 */
marcozecchini 0:2ca55e55f55d 5
marcozecchini 0:2ca55e55f55d 6 InterruptIn mybutton(USER_BUTTON);
marcozecchini 0:2ca55e55f55d 7 DigitalOut myled(LED1);
marcozecchini 0:2ca55e55f55d 8
marcozecchini 0:2ca55e55f55d 9 float delay = 1.0; // 1 sec
marcozecchini 0:2ca55e55f55d 10
marcozecchini 0:2ca55e55f55d 11 void pressed()
marcozecchini 0:2ca55e55f55d 12 {
marcozecchini 0:2ca55e55f55d 13 if (delay == 1.0)
marcozecchini 0:2ca55e55f55d 14 delay = 0.2; // 200 ms
marcozecchini 0:2ca55e55f55d 15 else
marcozecchini 0:2ca55e55f55d 16 delay = 1.0; // 1 sec
marcozecchini 0:2ca55e55f55d 17 }
marcozecchini 0:2ca55e55f55d 18
marcozecchini 0:2ca55e55f55d 19 int main()
marcozecchini 0:2ca55e55f55d 20 {
marcozecchini 0:2ca55e55f55d 21 mybutton.fall(&pressed);
marcozecchini 0:2ca55e55f55d 22 while (1) {
marcozecchini 0:2ca55e55f55d 23 myled = !myled;
marcozecchini 0:2ca55e55f55d 24 wait(delay);
marcozecchini 0:2ca55e55f55d 25 }
marcozecchini 0:2ca55e55f55d 26 }