Simple example that shows how to embed a JavaScript interpreter and expose some mbed system functions to JS allowing a simple JavaScript program to blink a led.

Dependencies:   mbed v7

Revision:
0:ca3d04aad28e
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/main.cpp	Thu Oct 13 09:01:59 2016 +0000
@@ -0,0 +1,32 @@
+#include "mbed.h"
+
+#include "v7.h"
+
+DigitalOut led_green(LED1);
+
+enum v7_err js_set_led(struct v7 *v7, v7_val_t *res) {
+    led_green = !v7_get_bool(v7, v7_arg(v7, 0));
+    return V7_OK;
+}
+
+enum v7_err js_wait(struct v7 *v7, v7_val_t *res) {
+    wait(v7_get_double(v7, v7_arg(v7, 0)));
+    return V7_OK;
+}    
+
+int main() {  
+    struct v7 *v7 = v7_create();
+
+    v7_set_method(v7, v7_get_global(v7), "setLed", &js_set_led);
+    v7_set_method(v7, v7_get_global(v7), "wait", &js_wait);
+
+  v7_exec(v7,
+          "while(true) {" \
+          "  setLed(false);" \
+          "  wait(0.2); " \
+          "  setLed(true);" \
+          "  wait(0.8); " \
+          "}",
+          NULL);
+
+}