Timeout

Dependencies:   mbed

Committer:
jangelgm
Date:
Thu Mar 09 21:44:09 2017 +0000
Revision:
0:2230d77b3015
Timeout

Who changed what in which revision?

UserRevisionLine numberNew contents of line
jangelgm 0:2230d77b3015 1 /*Program Example 9.6: Demonstrates Timeout, by triggering an event a fixed duration
jangelgm 0:2230d77b3015 2 after a button press.
jangelgm 0:2230d77b3015 3 */
jangelgm 0:2230d77b3015 4 #include "mbed.h"
jangelgm 0:2230d77b3015 5 Timeout Response; //create a Timeout, and name it "Response"
jangelgm 0:2230d77b3015 6 DigitalIn button (p5);
jangelgm 0:2230d77b3015 7 DigitalOut led1(LED1);
jangelgm 0:2230d77b3015 8 DigitalOut led2(LED2);
jangelgm 0:2230d77b3015 9 DigitalOut led3(LED3);
jangelgm 0:2230d77b3015 10 void blink() //this function is called at the end of the Timeout
jangelgm 0:2230d77b3015 11 {
jangelgm 0:2230d77b3015 12 led2 = 1;
jangelgm 0:2230d77b3015 13 wait(0.5);
jangelgm 0:2230d77b3015 14 led2=0;
jangelgm 0:2230d77b3015 15 }
jangelgm 0:2230d77b3015 16 int main()
jangelgm 0:2230d77b3015 17 {
jangelgm 0:2230d77b3015 18 while(1) {
jangelgm 0:2230d77b3015 19 if(button==1) {
jangelgm 0:2230d77b3015 20 Response.attach(&blink,2.0); // attach blink function to Response Timeout,
jangelgm 0:2230d77b3015 21 //to occur after 2 seconds
jangelgm 0:2230d77b3015 22 led3=1; //shows button has been pressed
jangelgm 0:2230d77b3015 23 } else {
jangelgm 0:2230d77b3015 24 led3=0;
jangelgm 0:2230d77b3015 25 }
jangelgm 0:2230d77b3015 26 led1=!led1;
jangelgm 0:2230d77b3015 27 wait(0.2);
jangelgm 0:2230d77b3015 28 }
jangelgm 0:2230d77b3015 29 }