OSDN Git Service

5d6f1601aa48acd57187ca86d62ff9d25ab0e7ae
[mimic/MiMicSDK.git] / misc / mbedJS / mbddJS.API / test.PortIn.html
1 \r
2 <html>\r
3 <head>\r
4 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">\r
5 <script type="text/javascript" src="mbedJS/mbed.types.js"></script>\r
6 <script type="text/javascript" src="mbedJS/MiMicCore.js"></script>\r
7 <script type="text/javascript" src="mbedJS/mbed.Mcu.js"></script>\r
8 <script type="text/javascript" src="mbedJS/mbed.DigitalOut.js"></script>\r
9 <script type="text/javascript" src="mbedJS/mbed.DigitalIn.js"></script>\r
10 <script type="text/javascript" src="mbedJS/mbed.AnalogOut.js"></script>\r
11 <script type="text/javascript" src="mbedJS/mbed.AnalogIn.js"></script>\r
12 <script type="text/javascript" src="mbedJS/mbed.BusOut.js"></script>\r
13 <script type="text/javascript" src="mbedJS/mbed.BusIn.js"></script>\r
14 <script type="text/javascript" src="mbedJS/mbed.BusInOut.js"></script>\r
15 <script type="text/javascript" src="mbedJS/mbed.PortOut.js"></script>\r
16 <script type="text/javascript" src="mbedJS/mbed.Portin.js"></script>\r
17 <script type="text/javascript" src="mbedJS/mbed.PwmOut.js"></script>\r
18 <script type="text/javascript" src="mbedJS/mbed.SPI.js"></script>\r
19 <script type="text/javascript" src="mbedJS/mbed.SPISlave.js"></script>\r
20 <script type="text/javascript">\r
21 \r
22 \r
23 \r
24 function log(v)\r
25 {\r
26         if(v===undefined){\r
27                 document.getElementById("console").value='';\r
28         }else{\r
29                 document.getElementById("console").value+='['+(new Date())+']'+v+'\n';\r
30         }\r
31 }\r
32 \r
33 /**ASYNCAPIのテスト*/\r
34 function async()\r
35 {\r
36         log();\r
37         log("ASYNC");\r
38         var mcu=new mbedJS.Mcu("192.168.128.39",\r
39         {\r
40                 onNew:function(){\r
41                         var pin=new mbedJS.PortIn(mcu,[mbedJS.PortName.Port0,0xffffffff],{\r
42                         onNew:function(){\r
43                                 log("[PASS]onNew");\r
44                                 pin.read();\r
45                         },\r
46                         onRead:function(v)\r
47                         {\r
48                                 log("[PASS]read:"+v);\r
49                                 mcu.close();\r
50                         }});\r
51                 },\r
52                 onClose:function(){\r
53                         log("[PASS]onClose");\r
54                 },\r
55                 onError:function(){\r
56                         alert("Error");\r
57                 }\r
58         });\r
59 }\r
60 function async2()\r
61 {\r
62         log();\r
63         log("ASYNC2");\r
64         var mcu=new mbedJS.Mcu("192.168.128.39",\r
65         {\r
66                 onNew:function(){\r
67                         var pin=new mbedJS.PortIn(mcu,[mbedJS.PortName.Port0,0xffffffff],function(){\r
68                                 log("[PASS]onNew");\r
69                                 pin.read(function(v){\r
70                                         log("[PASS]read:"+v);\r
71                                         mcu.close();\r
72                                 });\r
73                         });\r
74                 },\r
75                 onClose:function(){\r
76                         log("[PASS]onClose");\r
77                 },\r
78                 onError:function(){\r
79                         alert("Error");\r
80                 }\r
81         });\r
82 }\r
83 /**\r
84  * Sync\r
85  */\r
86 \r
87 function sync()\r
88 {\r
89         log();\r
90         var g=function*(){\r
91         try{\r
92                 var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
93                 yield mcu.waitForNew();\r
94                 var port=new mbedJS.PortIn(mcu,[mbedJS.PortName.Port0,0xffffffff],g);\r
95                 log("new");\r
96                 yield port.waitForNew();\r
97                 log("waitfor");\r
98                 var v=yield port.read();\r
99                 log("read:"+v);\r
100                 yield mcu.close();\r
101                 log("close");\r
102         }catch(e){\r
103                 mcu.shutdown();\r
104                 alert(e);\r
105                 throw e;\r
106         }\r
107         }();\r
108         g.next();\r
109         return;\r
110 \r
111 }\r
112 \r
113 \r
114 \r
115 </script>\r
116 </head>\r
117 <body>\r
118 <h1>PortIn test</h1>\r
119 <hr/>\r
120 <button onclick="async();">ASYNC</button>\r
121 <button onclick="async2();">ASYNC2</button>\r
122 <button onclick="sync();">SYNC</button>\r
123 <textarea id="console" rows="15" cols="80"></textarea>\r
124 </body>