OSDN Git Service

ドキュメントの修正
authornyatla <nyatla@47198e57-cb75-475f-84c4-a814cd6f29e0>
Fri, 4 Jul 2014 11:27:13 +0000 (11:27 +0000)
committernyatla <nyatla@47198e57-cb75-475f-84c4-a814cd6f29e0>
Fri, 4 Jul 2014 11:27:13 +0000 (11:27 +0000)
git-svn-id: http://svn.osdn.jp/svnroot/mimic/trunk@383 47198e57-cb75-475f-84c4-a814cd6f29e0

misc/mbedJS/mbddJS.API/mbedJS.jsdoc.xml
misc/mbedJS/mbddJS.API/mbedJS/MiMicCore.js
misc/mbedJS/mbddJS.API/mbedJS/mbed.I2C.js
misc/mbedJS/mbddJS.API/mbedJS/mbed.I2CSlave.js
misc/mbedJS/mbddJS.API/mbedJS/mbed.Mcu.js
misc/mbedJS/mbddJS.API/mbedJS/mbed.Memory.js
misc/mbedJS/mbddJS.API/mbedJS/mbed.Serial.js
misc/mbedJS/mbddJS.API/test.MCU.html

index cbfd11e..acdd427 100644 (file)
                <source file="${SRC_ROOT}\mbed.SPISlave.js" />\r
                <source file="${SRC_ROOT}\mbed.types.js" />\r
                <source file="${SRC_ROOT}\MiMicCore.js" />              \r
+               <source file="${SRC_ROOT}\mbed.Memory.js" />            \r
+               <source file="${SRC_ROOT}\mbed.Serial.js" />            \r
+               <source file="${SRC_ROOT}\mbed.I2C.js" />\r
+               <source file="${SRC_ROOT}\mbed.I2CSlave.js" />\r
        </jsdoctoolkit>\r
     </target>\r
 </project>\r
index 4ad4b93..dd413c1 100644 (file)
@@ -18,7 +18,7 @@ var MiMicJS={};
         * 配列要素、又は値がすべてInt値でない場合に例外を起こします。\r
         * @name MiMicJS.assertInt\r
         * @function\r
-        * @params {[array]} v\r
+        * @param {[array]} v\r
         * テストする配列\r
         */\r
        NS.assertInt=function assertInt(v){\r
@@ -36,7 +36,7 @@ var MiMicJS={};
         * 配列要素、、又は値がすべて数値でない場合に例外を起こします。\r
         * @name MiMicJS.assertNumber\r
         * @function\r
-        * @params {[array]} v\r
+        * @param {[array]} v\r
         * テストする配列\r
         */\r
        NS.assertNumber=function assertNumber(v){\r
@@ -197,6 +197,8 @@ var MiMicJS={};
        };\r
        /**\r
         * ByteArrayをBinarayStringに変換します。\r
+        * @name MiMicJS.byteArray2bstr\r
+        * @function\r
         * @param v\r
         * @return {String}\r
         */\r
@@ -212,6 +214,8 @@ var MiMicJS={};
        /**\r
         * UInt32ArrayをBinarayStringに変換します。\r
         * 出力はLittleEndianの配列です。\r
+        * @name MiMicJS.uintArray2bstr\r
+        * @function\r
         * @param v\r
         * UInt32の配列\r
         * @return {String}\r
index 31b1e8a..39ce756 100644 (file)
@@ -52,37 +52,72 @@ var MI=MiMicJS;
  * <p>\r
  * @return {mbedJS.I2C}\r
  * @example //Callback\r
+ * var st=0;\r
  * var mcu=new mbedJS.Mcu("192.168.128.39",\r
  * {\r
  *   onNew:function(){\r
- *     var pin=new mbedJS.I2C(mcu,mbedJS.PinName.A0,{\r
+ *     var i2c=new mbedJS.I2C(mcu,[mbedJS.PinName.p28,mbedJS.PinName.p27],{\r
  *     onNew:function(){\r
- *       pin.read();\r
+ *       i2c.frequency(100000);\r
  *     },\r
- *     onRead:function(v)\r
+ *     onFrequency:function()\r
  *     {\r
- *       pin.read_u16();\r
+ *       i2c.start();\r
  *     },\r
- *     onRead_u16:function(v){\r
+ *     onStart:function(){\r
+ *       st=0;\r
+ *       i2c.write(1);\r
+ *     },\r
+ *     onWrite:function(v){\r
+ *       if(st==0){\r
+ *         i2c.write(0,[1,2,3],false);\r
+ *         st++;\r
+ *       }else{\r
+ *         i2c.read(1);\r
+ *         st=0;\r
+ *       }\r
+ *     },\r
+ *     onRead:function(v){\r
+ *       if(st==0){\r
+ *         i2c.read(1,2,false);\r
+ *         st++;\r
+ *       }else{\r
+ *         i2c.stop();\r
+ *         }\r
+ *     },\r
+ *     onStop:function(){\r
  *       mcu.close();\r
- *     }});\r
+ *     }\r
+ *     });\r
+ *   },\r
+ *   onClose:function(){\r
  *   },\r
- *   onClose:function(){},\r
- *   onError:function(){}\r
+ *   onError:function(){\r
+ *     alert("Error");\r
+ *   }\r
  * });\r
  * @example //Generator\r
  * var g=function*(){\r
  * try{\r
+ *   var v;\r
  *   var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
  *   yield mcu.waitForNew();\r
- *   var pin=new mbedJS.I2C(mcu,mbedJS.PinName.A0,g);\r
- *   yield pin.waitForNew();\r
- *   var v=yield pin.read();\r
- *   v=yield pin.read_u16();\r
+ *   var i2c=new mbedJS.I2C(mcu,[mbedJS.PinName.p28,mbedJS.PinName.p27],g);\r
+ *   yield i2c.waitForNew();\r
+ *   yield i2c.frequency(100000);\r
+ *   yield i2c.start();\r
+ *   yield i2c.write(1);\r
+ *   yield i2c.write(0,[1,2,3],false);\r
+ *   yield i2c.read(1);\r
+ *   yield i2c.read(1,2,false);\r
+ *   yield i2c.stop();\r
  *   yield mcu.close();\r
  * }catch(e){\r
  *   mcu.shutdown();\r
- * }}();\r
+ *   alert(e);\r
+ *   throw e;\r
+ * }\r
+ * }();\r
  * g.next();\r
  */\r
 var CLASS=function I2C(i_mcu,i_params,i_handler)\r
index 5c68a02..7ab644f 100644 (file)
@@ -60,35 +60,77 @@ var MI=MiMicJS;
  * var mcu=new mbedJS.Mcu("192.168.128.39",\r
  * {\r
  *   onNew:function(){\r
- *     var pin=new mbedJS.I2CSlave(mcu,mbedJS.PinName.A0,{\r
+ *     var i2c=new mbedJS.I2CSlave(mcu,[mbedJS.PinName.p28,mbedJS.PinName.p27],{\r
  *     onNew:function(){\r
- *       pin.read();\r
+ *       i2c.frequency(100000);\r
  *     },\r
- *     onRead:function(v)\r
+ *     onFrequency:function()\r
  *     {\r
- *       pin.read_u16();\r
+ *       i2c.address(1);\r
  *     },\r
- *     onRead_u16:function(v){\r
+ *     onAddress:function()\r
+ *     {\r
+ *       i2c.receive();\r
+ *     },\r
+ *     onReceive:function(){\r
+ *       st=0;\r
+ *       i2c.write(1);\r
+ *     },\r
+ *     onWrite:function(v){\r
+ *       if(st==0){\r
+ *         i2c.write([1,2,3]);\r
+ *         st++;\r
+ *       }else{\r
+ *         i2c.read();\r
+ *         st=0;\r
+ *       }\r
+ *     },\r
+ *     onRead:function(v){\r
+ *       if(st==0){\r
+ *         i2c.read(2,false);\r
+ *         st++;\r
+ *       }else{\r
+ *         log("[PASS]onRead:"+v.ret+":"+v.data);\r
+ *         i2c.stop();\r
+ *       }\r
+ *       },\r
+ *     onStop:function(){\r
  *       mcu.close();\r
- *     }});\r
+ *     }\r
+ *     });\r
  *   },\r
- *   onClose:function(){},\r
- *   onError:function(){}\r
+ *   onClose:function(){\r
+ *   },\r
+ *   onError:function(){\r
+ *     alert("Error");\r
+ *   }\r
  * });\r
  * @example //Generator\r
  * var g=function*(){\r
  * try{\r
- *   var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
- *   yield mcu.waitForNew();\r
- *   var pin=new mbedJS.I2CSlave(mcu,mbedJS.PinName.A0,g);\r
- *   yield pin.waitForNew();\r
- *   var v=yield pin.read();\r
- *   v=yield pin.read_u16();\r
- *   yield mcu.close();\r
+ *     var v;\r
+ *     var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
+ *     yield mcu.waitForNew();\r
+ *     var i2c=new mbedJS.I2CSlave(mcu,[mbedJS.PinName.p28,mbedJS.PinName.p27],g);\r
+ *     yield i2c.waitForNew();\r
+ *     yield i2c.frequency(100000);\r
+ *     yield i2c.address(1);\r
+ *     v=yield i2c.receive();\r
+ *     v=yield i2c.write(1);\r
+ *     v=yield i2c.write([1,2,3]);\r
+ *     v=yield i2c.read();\r
+ *     v=yield i2c.read(2,false);\r
+ *     log("[PASS]onRead:"+v.ret+":"+v.data);\r
+ *     yield i2c.stop();\r
+ *     yield mcu.close();\r
  * }catch(e){\r
- *   mcu.shutdown();\r
- * }}();\r
+ *     mcu.shutdown();\r
+ *     alert(e);\r
+ *     throw e;\r
+ * }\r
+ * }();\r
  * g.next();\r
+ * return;\r
  */\r
 var CLASS=function I2CSlave(i_mcu,i_params,i_handler)\r
 {\r
@@ -115,6 +157,11 @@ CLASS.prototype=
 {\r
        /** @private */\r
        RPC_NS:"mbedJS:I2CSlave",\r
+       /**\r
+        * mbedJS.Serial#receiveの戻り値の種類です。\r
+        * NoData,ReadAddressed,WriteGeneral,WriteAddressedがあります。\r
+        * @name mbedJS.I2CSlave#RxStatus\r
+        */     \r
        RxStatus:{\r
                NoData:0,ReadAddressed:1,WriteGeneral:2,WriteAddressed:3},\r
        /** @private 最後にコールしたAPIです。*/\r
index beaf4b3..6f1346b 100644 (file)
@@ -45,10 +45,22 @@ var MI=MiMicJS;
  * var mcu=new mbedJS.Mcu("192.168.128.39",\r
  * {\r
  *   onNew:function(){\r
+ *     mcu.getInfo();\r
+ *   },\r
+ *   onGetInfo:function(v){\r
+ *     log("[PASS]onGetInfo:"+v.version+","+v.platform+","+v.mcu.name+","+v.mcu.eth+","+v.memory.free);\r
+ *     var pin=new mbedJS.DigitalIn(mcu,mbedJS.PinName.P0_22,{\r
+ *       onNew:function(){\r
+ *         mcu.disposeObject(pin._oid);\r
+ *       }});\r
+ *   },\r
+ *   onDisposeObject:function(v){\r
+ *     mcu.close();\r
  *   },\r
  *   onClose:function(){\r
  *   },\r
  *   onError:function(){\r
+ *     alert("Error");\r
  *   }\r
  * });\r
  * @example //Generator\r
@@ -180,7 +192,7 @@ CLASS.prototype=
        },\r
        /**\r
         * Mcuの情報を返します。\r
-        * @name mbedJS.Mcu#rpc\r
+        * @name mbedJS.Mcu#getInfo\r
         * @function\r
         * @return {HashMap}\r
         * 情報を格納した連想配列です。\r
index 2b54284..e230b64 100644 (file)
@@ -44,7 +44,121 @@ var MI=MiMicJS;
  * <p>\r
  * @return {mbedJS.Memory}\r
  * @example //Callback\r
+ * var s=0;\r
+ * var mcu=new mbedJS.Mcu("192.168.128.39",\r
+ * {\r
+ *   onNew:function(){\r
+ *     var mem=new mbedJS.Memory(mcu,{\r
+ *     onNew:function(){\r
+ *       s=0;\r
+ *       mem.write(0x20080000,1);\r
+ *     },\r
+ *     onWrite:function(){\r
+ *       log("[PASS]onWrite:"+s);\r
+ *       switch(s){\r
+ *       case 0:\r
+ *         mem.read(0x20080000,1);\r
+ *         break;\r
+ *       case 1:\r
+ *         mem.read(0x20080001,1);\r
+ *         break;\r
+ *       case 2:\r
+ *         mem.read(0x20080000,8);\r
+ *         break;\r
+ *       }\r
+ *     },\r
+ *     onRead:function(v){\r
+ *       log("[PASS]onRead:"+s);\r
+ *       switch(s){\r
+ *       case 0:\r
+ *         mem.write(0x20080001,[2]);\r
+ *         break;\r
+ *       case 1:\r
+ *         mem.write(0x20080004,[10,20,30]);\r
+ *         break;\r
+ *       case 2:\r
+ *         mem.write32(0x20080000,0xff);\r
+ *         s=-1;\r
+ *       }\r
+ *       s++;\r
+ *     },\r
+ *     onWrite32:function(){\r
+ *       log("[PASS]onWrite32:"+s);\r
+ *       switch(s){\r
+ *       case 0:\r
+ *         mem.read32(0x20080000);\r
+ *         break;\r
+ *       case 1:\r
+ *         mem.read32(0x20080004,4);\r
+ *         break;\r
+ *       case 2:\r
+ *         mem.read32(0x20080000,16);\r
+ *         break;\r
+ *       }\r
+ *     },\r
+ *     onRead32:function(v){\r
+ *       log("[PASS]onRead32:"+s);\r
+ *       switch(s){\r
+ *       case 0:\r
+ *         mem.write32(0x20080004,[2]);\r
+ *         break;\r
+ *       case 1:\r
+ *         mem.write32(0x20080004,[10,20,30]);\r
+ *         break;\r
+ *       case 2:\r
+ *         mcu.close();\r
+ *       }\r
+ *       s++;\r
+ *     }      \r
+ *     });\r
+ *   },\r
+ *   onClose:function(){\r
+ *     log("[PASS]onClose");\r
+ *   },\r
+ *   onError:function(){\r
+ *     alert("Error");\r
+ *   }\r
+ * });\r
  * @example //Generator\r
+ * var g=function*(){\r
+ * try{\r
+ *     var v;\r
+ *     var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
+ *     yield mcu.waitForNew();\r
+ *     var mem=new mbedJS.Memory(mcu,g);\r
+ *     yield mem.waitForNew();\r
+ *     yield mem.write(0x20080000,1);\r
+ *     log("[PASS]onWrite:");\r
+ *     v=yield mem.read(0x20080000,1);\r
+ *     log("[PASS]onRead:"+v);\r
+ *     v=yield mem.read(0x20080001,1);\r
+ *     log("[PASS]onRead:"+v);\r
+ *     v=yield mem.read(0x20080000,8);\r
+ *     log("[PASS]onRead:"+v);\r
+ *     yield mem.write(0x20080001,[2]);\r
+ *     log("[PASS]onWrite:");\r
+ *     yield mem.write(0x20080004,[10,20,30]);\r
+ *     log("[PASS]onWrite:");\r
+ *     yield mem.write32(0x20080000,0xff);\r
+ *     log("[PASS]onWrite32:");\r
+ *     v=yield mem.read32(0x20080000);\r
+ *     log("[PASS]onRead32:"+v);\r
+ *     v=yield mem.read32(0x20080004,4);\r
+ *     log("[PASS]onRead32:"+v);\r
+ *     v=yield mem.read32(0x20080000,16);\r
+ *     log("[PASS]onRead32:"+v);\r
+ *     yield mem.write32(0x20080004,[2]);\r
+ *     log("[PASS]onWrite32:");\r
+ *     yield mem.write32(0x20080004,[10,20,30]);\r
+ *     log("[PASS]onWrite32:");\r
+ *     mcu.close();\r
+ *     }catch(e){\r
+ *     mcu.shutdown();\r
+ *     alert(e);\r
+ *     throw e;\r
+ * }\r
+ * }();\r
+ * g.next();\r
  */\r
 var CLASS=function Memory(i_mcu,i_handler)\r
 {\r
index ee29dba..0f6e0fb 100644 (file)
@@ -73,7 +73,74 @@ var MI=MiMicJS;
  * <p>\r
  * @return {mbedJS.Serial}\r
  * @example //Callback\r
+ * var mcu=new mbedJS.Mcu("192.168.128.39",\r
+ * {\r
+ *   onNew:function(){\r
+ *     var uart=new mbedJS.Serial(mcu,[mbedJS.PinName.p9,mbedJS.PinName.p10],{\r
+ *     onNew:function(){\r
+ *       uart.baud(115200);\r
+ *     },\r
+ *     onBaud:function()\r
+ *     {\r
+ *       uart.send_break();\r
+ *     },\r
+ *     onSend_break:function(){\r
+ *       uart.format(8,uart.Parity.None,1);\r
+ *     },\r
+ *     onFormat:function(){\r
+ *       uart.readable();\r
+ *     },\r
+ *     onReadable:function(v){\r
+ *       uart.writeable();\r
+ *     },\r
+ *     onWriteable:function(v){\r
+ *       uart.putc(32);\r
+ *     },\r
+ *     onPutc:function(v){\r
+ *       uart.getc();\r
+ *     },\r
+ *     onGetc:function(v){\r
+ *       uart.puts("1234");\r
+ *     },\r
+ *     onPuts:function(v){\r
+ *       uart.gets(5);\r
+ *     },\r
+ *     onGets:function(v){\r
+ *       mcu.close();\r
+ *     }\r
+ *     });\r
+ *   },\r
+ *   onClose:function(){\r
+ *   },\r
+ *   onError:function(){\r
+ *     alert("Error");\r
+ *   }\r
+ * });\r
  * @example //Generator\r
+ * var g=function*(){\r
+ * try{\r
+ *   var v;\r
+ *   var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
+ *   yield mcu.waitForNew();\r
+ *   var uart=new mbedJS.Serial(mcu,[mbedJS.PinName.p9,mbedJS.PinName.p10],g);\r
+ *   yield uart.waitForNew();\r
+ *   yield uart.baud(115200);\r
+ *   yield uart.send_break();\r
+ *   yield uart.format(8,uart.Parity.None,1);\r
+ *   v=yield uart.readable();\r
+ *   v=yield uart.writeable();\r
+ *   v=yield uart.putc(32);\r
+ *   v=yield uart.getc();\r
+ *   v=yield uart.puts("1234");\r
+ *   v=yield uart.gets(5);\r
+ *   yield mcu.close();\r
+ * }catch(e){\r
+ *   mcu.shutdown();\r
+ *   alert(e);\r
+ *   throw e;\r
+ * }\r
+ * }();\r
+ * g.next();\r
  */\r
 var CLASS=function Serial(i_mcu,i_params,i_handler)\r
 {\r
@@ -101,10 +168,10 @@ CLASS.prototype=
        /** @private */\r
        RPC_NS:"mbedJS:Serial",\r
        /**\r
-        * @namespace\r
-        * @name mbedJS.Serial#Parity\r
         * mbedJS.Serial#format関数に指定する値の種類です。\r
         * None,Odd,Even,Forced1,Forced0があります。\r
+        * @name mbedJS.Serial#Parity\r
+        * @field\r
         */\r
     Parity:{\r
        None:0,Odd:1,Even:2,Forced1:3,Forced0:4\r
index 28df36d..ad3fe54 100644 (file)
@@ -57,10 +57,15 @@ function sync()
 {\r
        var g=function*(){\r
 try{\r
-log(1);\r
+log();\r
                var mcu=new mbedJS.Mcu("192.168.128.39",g);\r
 log(2);\r
+var v;\r
                yield mcu.waitForNew();\r
+               v=yield mcu.disposeObject(0);\r
+               log(v);\r
+               v=yield mcu.getInfo();\r
+               log("[PASS]onGetInfo:"+v.version+","+v.platform+","+v.mcu.name+","+v.mcu.eth+","+v.memory.free);\r
                yield mcu.close();\r
 log(3);\r
 }catch(e){\r