Use the button on Nucleo board in Interrupt mode

Dependencies:   mbed

Committer:
sjallouli
Date:
Mon Dec 28 23:04:25 2015 +0000
Revision:
0:1b77c1ffae11
Use the button in interrupt mode on the Nucleo board

Who changed what in which revision?

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