--- /dev/null
+\r
+<html>\r
+<head>\r
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\r
+<script type="text/javascript" src="mimic/mbed.types.js"></script>\r
+<script type="text/javascript" src="mimic/MiMicCore.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.Mcu.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.DigitalOut.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.DigitalIn.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.AnalogOut.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.AnalogIn.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.BusOut.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.BusIn.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.BusInOut.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.PortOut.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.Portin.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.PwmOut.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.SPI.js"></script>\r
+<script type="text/javascript" src="mimic/mbed.SPISlave.js"></script>\r
+<script type="text/javascript">\r
+\r
+\r
+\r
+function log(v)\r
+{\r
+ if(v===undefined){\r
+ document.getElementById("console").value='';\r
+ }else{\r
+ document.getElementById("console").value+='['+(new Date())+']'+v+'\n';\r
+ }\r
+}\r
+\r
+/**ASYNCAPIのテスト*/\r
+function async()\r
+{\r
+ log();\r
+ log("ASYNC");\r
+ var mcu=new mbedJS.Mcu("ws://192.168.128.39/rpc/",\r
+ {\r
+ onNew:function(){\r
+ var pin=new mbedJS.PortIn(mcu,[mbedJS.PortName.Port0,0xffffffff],{\r
+ onNew:function(){\r
+ log("[PASS]onNew");\r
+ pin.read();\r
+ },\r
+ onRead:function(v)\r
+ {\r
+ log("[PASS]read:"+v);\r
+ mcu.close();\r
+ }});\r
+ },\r
+ onClose:function(){\r
+ log("[PASS]onClose");\r
+ },\r
+ onError:function(){\r
+ alert("Error");\r
+ }\r
+ });\r
+}\r
+\r
+/**\r
+ * Sync\r
+ */\r
+\r
+function sync()\r
+{\r
+ log();\r
+ var g=function*(){\r
+ try{\r
+ var mcu=new mbedJS.Mcu("ws://192.168.128.39/rpc/",g);\r
+ yield mcu.waitForNew();\r
+ var port=new mbedJS.PortIn(mcu,[mbedJS.PortName.Port0,0xffffffff],g);\r
+ log("new");\r
+ yield port.waitForNew();\r
+ log("waitfor");\r
+ var v=yield port.read();\r
+ log("read:"+v);\r
+ yield mcu.close();\r
+ log("close");\r
+ }catch(e){\r
+ mcu.shutdown();\r
+ alert(e);\r
+ throw e;\r
+ }\r
+ }();\r
+ g.next();\r
+ return;\r
+\r
+}\r
+\r
+\r
+\r
+</script>\r
+</head>\r
+<body>\r
+<h1>PortIn test</h1>\r
+<hr/>\r
+<button onclick="async();">ASYNC</button>\r
+<button onclick="sync();">SYNC</button>\r
+<textarea id="console" rows="15" cols="80"></textarea>\r
+</body>
\ No newline at end of file