Basic example showing how to read a button with interrupt.

Dependencies:   mbed

Committer:
arostm
Date:
Tue Jun 06 15:20:36 2017 +0200
Revision:
1:eca2951a22e3
Parent:
0:105640b9dc00
Adding new mbed library

Who changed what in which revision?

UserRevisionLine numberNew contents of line
bcostm 0:105640b9dc00 1 #include "mbed.h"
bcostm 0:105640b9dc00 2
bcostm 0:105640b9dc00 3 DigitalOut red_led(LED1);
bcostm 0:105640b9dc00 4 DigitalOut blue_led(LED2);
bcostm 0:105640b9dc00 5 DigitalOut orange_led(LED3);
bcostm 0:105640b9dc00 6 DigitalOut green_led(LED4);
bcostm 0:105640b9dc00 7
bcostm 0:105640b9dc00 8 InterruptIn user_button(USER_BUTTON);
bcostm 0:105640b9dc00 9
bcostm 0:105640b9dc00 10 void button_pressed()
bcostm 0:105640b9dc00 11 {
bcostm 0:105640b9dc00 12 // LEDs ON
bcostm 0:105640b9dc00 13 green_led = 1;
bcostm 0:105640b9dc00 14 blue_led = 1;
bcostm 0:105640b9dc00 15 orange_led = 1;
bcostm 0:105640b9dc00 16 }
bcostm 0:105640b9dc00 17
bcostm 0:105640b9dc00 18 void button_released()
bcostm 0:105640b9dc00 19 {
bcostm 0:105640b9dc00 20 // LEDs OFF
bcostm 0:105640b9dc00 21 green_led = 0;
bcostm 0:105640b9dc00 22 blue_led = 0;
bcostm 0:105640b9dc00 23 orange_led = 0;
bcostm 0:105640b9dc00 24 }
bcostm 0:105640b9dc00 25
bcostm 0:105640b9dc00 26 int main() {
bcostm 0:105640b9dc00 27
bcostm 0:105640b9dc00 28 user_button.rise(&button_pressed);
bcostm 0:105640b9dc00 29 user_button.fall(&button_released);
bcostm 0:105640b9dc00 30
bcostm 0:105640b9dc00 31 while(1) {
bcostm 0:105640b9dc00 32 red_led = !red_led; // LED toggle
bcostm 0:105640b9dc00 33 wait(0.2);
bcostm 0:105640b9dc00 34 }
bcostm 0:105640b9dc00 35
bcostm 0:105640b9dc00 36 }