BlinkButton2Sec done

Files at this revision

API Documentation at this revision

Comitter:
redona
Date:
Fri Nov 30 10:56:33 2018 +0000
Commit message:
completed BlinkButton2Sec

Changed in this revision

main.cpp Show annotated file Show diff for this revision Revisions of this file
mbed-os.lib Show annotated file Show diff for this revision Revisions of this file
diff -r 000000000000 -r bc51741ad0f9 main.cpp
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Fri Nov 30 10:56:33 2018 +0000
@@ -0,0 +1,40 @@
+#include "mbed.h"
+
+DigitalOut led1(LED1);
+InterruptIn button(USER_BUTTON);
+EventQueue queue(32 * EVENTS_EVENT_SIZE);
+Thread t;
+time_t seconds = time(NULL);
+
+void rise_handler_thread_context(void) {
+    if(seconds - time(NULL) > 2){
+          seconds = time(NULL); 
+        }
+   else {
+          led1 = !led1;
+          wait(1);
+          led1 = !led1;
+          wait(1);
+          led1 = !led1;
+          wait(1);
+          led1 = !led1;  
+          seconds = time(NULL); 
+        }
+}
+
+void rise_handler_iterrupt_context(void) {
+    queue.call(rise_handler_thread_context);
+}
+
+void fall_handler(void) {
+    printf("hello\n");
+}
+
+int main() {
+    // Start the event queue
+    t.start(callback(&queue, &EventQueue::dispatch_forever));
+    // The 'rise' handler will execute in IRQ context
+    button.rise(rise_handler_iterrupt_context);
+    // The 'fall' handler will execute in the context of thread 't'
+    button.fall(queue.event(fall_handler));
+}
diff -r 000000000000 -r bc51741ad0f9 mbed-os.lib
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mbed-os.lib	Fri Nov 30 10:56:33 2018 +0000
@@ -0,0 +1,1 @@
+https://github.com/armmbed/mbed-os/#bf6f2c3c6434a6de9eb9511feffa5948b3d1f20f