VT4_Dean_Fraj

Dependencies:   mbed

Committer:
dfraj
Date:
Thu Nov 24 18:07:25 2016 +0000
Revision:
0:5d08506cf3e3
VT_Dean_Fraj

Who changed what in which revision?

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