11.3

Dependencies:   TextLCD mbed

Committer:
Zvonimir_Belic
Date:
Thu Nov 24 19:04:12 2016 +0000
Revision:
0:ed1071ad2950
VT4_Beli?_Zvonimir

Who changed what in which revision?

UserRevisionLine numberNew contents of line
Zvonimir_Belic 0:ed1071ad2950 1 #include "mbed.h"
Zvonimir_Belic 0:ed1071ad2950 2 InterruptIn button(p30); // Interrupt on digital input p30
Zvonimir_Belic 0:ed1071ad2950 3 DigitalOut led1(LED1); // digital out to onboard LED1
Zvonimir_Belic 0:ed1071ad2950 4 Timer debounce; // define debounce timer
Zvonimir_Belic 0:ed1071ad2950 5 LocalFileSystem local("local"); // define local file system
Zvonimir_Belic 0:ed1071ad2950 6 void toggle(void); // function prototype
Zvonimir_Belic 0:ed1071ad2950 7 int main() {
Zvonimir_Belic 0:ed1071ad2950 8 debounce.start(); // start debounce timer
Zvonimir_Belic 0:ed1071ad2950 9 button.rise(&toggle); // attach the toggle function to the rising edge
Zvonimir_Belic 0:ed1071ad2950 10 }
Zvonimir_Belic 0:ed1071ad2950 11 void toggle() { // perform toggle if debounce time has elapsed
Zvonimir_Belic 0:ed1071ad2950 12 if (debounce.read_ms()>200) {
Zvonimir_Belic 0:ed1071ad2950 13 led1=!led1; // toggle LED
Zvonimir_Belic 0:ed1071ad2950 14 FILE* Logfile = fopen ("/local/log.txt","a"); // open file for appending
Zvonimir_Belic 0:ed1071ad2950 15 fprintf(Logfile,"time=%.3fs: setting led=%d\n\r",debounce.read(),led1.read());
Zvonimir_Belic 0:ed1071ad2950 16 fclose(Logfile); // close file
Zvonimir_Belic 0:ed1071ad2950 17 debounce.reset(); // reset debounce timer
Zvonimir_Belic 0:ed1071ad2950 18 }
Zvonimir_Belic 0:ed1071ad2950 19 }