OSDN Git Service

548b4be8277ae6b67815a7bc9222b51c6648953d
[mimic/MiMicSDK.git] / misc / mbedJS / mbddJS.API / test.PwmOut.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.PwmOut(mcu,mbedJS.PinName.p21,{\r
42                         onNew:function(){\r
43                                 log("[PASS]onNew");\r
44                                 pin.write(0.33);\r
45                         },\r
46                         onWrite:function()\r
47                         {\r
48                                 log("[PASS]onwrite:");\r
49                                 pin.read();\r
50                         },\r
51                         onRead:function(v)\r
52                         {\r
53                                 log("[PASS]onread:"+v);\r
54                                 pin.period(1.0);\r
55                         },\r
56                         onPeriod:function(){\r
57                                 log("[PASS]onPeriod:");\r
58                                 pin.period_ms(1);\r
59                         },\r
60                         onPeriod_ms:function(){\r
61                                 log("[PASS]onPeriod_ms:");\r
62                                 pin.period_us(10);\r
63                         },\r
64                         onPeriod_us:function(){\r
65                                 log("[PASS]onPeriod_us:");\r
66                                 pin.pulsewidth(3);\r
67                         },\r
68                         onPulsewidth:function(){\r
69                                 log("[PASS]onPulseWidth:");\r
70                                 pin.pulsewidth_ms(30);\r
71                         },\r
72                         onPulsewidth_ms:function(){\r
73                                 log("[PASS]onPulseWidth_ms:");\r
74                                 pin.pulsewidth_us(40);\r
75                         },\r
76                         onPulsewidth_us:function(){\r
77                                 log("[PASS]onPulseWidth_us:");\r
78                                 mcu.close();\r
79                         }\r
80                         });\r
81                 },\r
82                 onClose:function(){\r
83                         log("[PASS]onClose");\r
84                 },\r
85                 onError:function(){\r
86                         alert("Error");\r
87                 }\r
88         });\r
89 }\r
90 function async2()\r
91 {\r
92         log();\r
93         log("ASYNC2");\r
94         var mcu=new mbedJS.Mcu("192.168.128.39",\r
95         {\r
96                 onNew:function(){\r
97                         var pin=new mbedJS.PwmOut(mcu,mbedJS.PinName.p21,function(){\r
98                                 log("[PASS]onNew");\r
99                                 pin.write(0.33,function(){\r
100                                         log("[PASS]onwrite:");\r
101                                         pin.read(function(v)\r
102                                         {\r
103                                                 log("[PASS]onread:"+v);\r
104                                                 pin.period(1.0,function(){\r
105                                                         log("[PASS]onPeriod:");\r
106                                                         pin.period_ms(1,function(){\r
107                                                                 log("[PASS]onPeriod_ms:");\r
108                                                                 pin.period_us(10,function(){\r
109                                                                         log("[PASS]onPeriod_us:");\r
110                                                                         pin.pulsewidth(3,function(){\r
111                                                                                 log("[PASS]onPulseWidth:");\r
112                                                                                 pin.pulsewidth_ms(30,function(){\r
113                                                                                         log("[PASS]onPulseWidth_ms:");\r
114                                                                                         pin.pulsewidth_us(40,function(){\r
115                                                                                                 log("[PASS]onPulseWidth_us:");\r
116                                                                                                 mcu.close();\r
117                                                                                         });\r
118                                                                                 });\r
119                                                                         });\r
120                                                                 });\r
121                                                         });\r
122                                                 });\r
123                                         });\r
124                                 });\r
125                         });\r
126                 },\r
127                 onClose:function(){\r
128                         log("[PASS]onClose");\r
129                 },\r
130                 onError:function(){\r
131                         alert("Error");\r
132                 }\r
133         });\r
134 }\r
135 /**\r
136  * Sync\r
137  */\r
138 function sync()\r
139 {\r
140         log();\r
141         var g=function*(){\r
142         try{\r
143                 var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
144                 yield mcu.waitForNew();\r
145                 var pin=new mbedJS.PwmOut(mcu,mbedJS.PinName.p21,g);\r
146                 log("new");\r
147                 yield pin.waitForNew();\r
148                 log("waitfor");\r
149                 yield pin.write(0.33);\r
150                 log("[PASS]write:");\r
151                 var v=yield pin.read();\r
152                 log("[PASS]read:"+v);\r
153                 yield pin.period(1.0);\r
154                 log("[PASS]period:");\r
155                 yield pin.period_ms(1);\r
156                 log("[PASS]period_ms:");\r
157                 yield pin.period_us(10);\r
158                 log("[PASS]period_us:");\r
159                 yield pin.pulsewidth(3);\r
160                 log("[PASS]pulseWidth:");\r
161                 yield pin.pulsewidth_ms(30);\r
162                 log("[PASS]pulseWidth_ms:");\r
163                 yield pin.pulsewidth_us(40);\r
164                 log("[PASS]pulseWidth_us:");\r
165                 yield mcu.close();\r
166         }catch(e){\r
167                 mcu.shutdown();\r
168                 alert(e);\r
169                 throw e;\r
170         }\r
171         }();\r
172         g.next();\r
173         return;\r
174 \r
175 }\r
176 \r
177 \r
178 \r
179 </script>\r
180 </head>\r
181 <body>\r
182 <h1>Pwm test</h1>\r
183 <hr/>\r
184 <button onclick="async();">ASYNC</button>\r
185 <button onclick="async2();">ASYNC</button>\r
186 <button onclick="sync();">SYNC</button>\r
187 <textarea id="console" rows="15" cols="80"></textarea>\r
188 </body>