+/**\r
+ * @fileOverview BusInOutクラスを定義します。\r
+ */\r
(function(){\r
var NS=mbedJS;\r
var MI=MiMicJS;\r
\r
/**\r
- * @name mbedJS.BusInOut\r
* BusInOutクラスです。\r
* <a href="https://mbed.org/handbook/BusInOut">mbed::BusInOut</a>と同等の機能を持ちます。\r
+ * @name mbedJS.BusInOut\r
* @constructor\r
* @param {mbedJS.Mcu} i_mcu\r
* インスタンスをバインドするMCUオブジェクトです。\r
* Generatorを指定した場合、コールバック関数の引数はyiledの戻り値として取得できます。\r
* <p>\r
* @return {mbedJS.BusIn}\r
- * @example\r
+ * @example //Callback\r
+ * var mcu=new mbedJS.Mcu("ws://192.168.128.39/rpc/",\r
+ * {\r
+ * onNew:function(){\r
+ * var bus=new mbedJS.BusInOut(mcu,[mbedJS.PinName.P0_21,mbedJS.PinName.P0_22],{\r
+ * onNew:function(){\r
+ * bus.mode(mbedJS.PinMode.PullDown);\r
+ * },\r
+ * onMode:function()\r
+ * {\r
+ * bus.output();\r
+ * },\r
+ * onOutput:function()\r
+ * {\r
+ * bus.write(1);\r
+ * },\r
+ * onWrite:function()\r
+ * {\r
+ * bus.input();\r
+ * },\r
+ * onInput:function(){\r
+ * bus.read();\r
+ * },\r
+ * onRead:function(v)\r
+ * {\r
+ * mcu.close();\r
+ * }});\r
+ * },\r
+ * onClose:function(){\r
+ * },\r
+ * onError:function(){\r
+ * }\r
+ * });\r
+ * \r
+ * @example //Generator\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 bus=new mbedJS.BusInOut(mcu,[mbedJS.PinName.P0_21,mbedJS.PinName.P0_22],g);\r
+ * yield bus.waitForNew();\r
+ * yield bus.mode(mbedJS.PinMode.PullDown);\r
+ * yield bus.output();\r
+ * yield bus.write(1);\r
+ * yield bus.input();\r
+ * var v=yield bus.read();\r
+ * yield mcu.close();\r
+ * }catch(e){\r
+ * mcu.shutdown();\r
+ * }\r
+ * }();\r
+ * g.next();\r
*/\r
var CLASS=function BusInOut(i_mcu,i_params,i_handler)\r
{\r
/** @private リモートインスタンスのオブジェクトIDです。*/\r
_oid:null,\r
/**\r
- * @name mbedJS.BusInOut#waitForNew\r
- * @function\r
* Generatorモードのときに使用する関数です。\r
* Generatorモードの時は、yieldと併用してnew BusInOut()の完了を待ちます。\r
+ * @name mbedJS.BusInOut#waitForNew\r
+ * @function\r
*/\r
waitForNew:function BusInOut_waitForNew()\r
{\r
}\r
}, \r
/**\r
- * @name mbedJS.BusInOut#write\r
- * @function\r
* ピンに値を出力します。\r
* 関数の完了時にonWriteイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.BusInOut#write\r
+ * @function\r
* @param {int} i_value\r
- * @return {int|none}\r
- * <p>Callbackモードの時はRPCメソッドのインデクスを返します。</p>\r
- * <p>Generatorモードの時は戻り値はありません。</p>\r
+ * @return {int}\r
+ * Callbackモードの時はRPCメソッドのインデクスを返します。\r
*/\r
write:function BusInOut_write(i_value)\r
{\r
}\r
},\r
/**\r
- * @name mbedJS.BusInOut#read\r
- * @function\r
* ピンから値を読み込みます。\r
* 関数の完了時にonReadイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
- * @return {int|int}\r
- * <p>Callbackモードの時はRPCメソッドのインデクスを返します。</p>\r
- * <p>Generatorモードの時はピンの値を返します。</p>\r
+ * @name mbedJS.BusInOut#read\r
+ * @function\r
+ * @return {int}\r
+ * Callbackモードの時はRPCメソッドのインデクスを返します。\r
+ * @return {int}\r
+ * Generatorモードの時はピンの値を返します。\r
*/\r
read:function BusInOut_read()\r
{\r
}\r
},\r
/**\r
- * @name mbedJS.BusInOut#mode\r
- * @function\r
* ピンモードを設定します。\r
* 関数の完了時にonModeイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.BusInOut#mode\r
+ * @function\r
* @param {PinMode} i_value\r
* PinModeの値です。\r
- * @return {int|none}\r
- * <p>Callbackモードの時はRPCメソッドのインデクスを返します。</p>\r
+ * @return {int}\r
+ * Callbackモードの時はRPCメソッドのインデクスを返します。\r
*/\r
mode:function BusInOut_mode(i_value)\r
{\r
}\r
},\r
/**\r
- * @name mbedJS.BusInOut#input\r
- * @function\r
* ピンモードを設定します。\r
* 関数の完了時にonInputイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
- * @return {int|none}\r
- * <p>Callbackモードの時はRPCメソッドのインデクスを返します。</p>\r
+ * @name mbedJS.BusInOut#input\r
+ * @function\r
+ * @return {int}\r
+ * Callbackモードの時はRPCメソッドのインデクスを返します。\r
*/\r
input:function BusInOut_input()\r
{\r
}\r
},\r
/**\r
- * @name mbedJS.BusInOut#output\r
- * @function\r
* ピンモードを設定します。\r
* 関数の完了時にonOutputイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
- * @return {int|none}\r
- * <p>Callbackモードの時はRPCメソッドのインデクスを返します。</p>\r
+ * @name mbedJS.BusInOut#output\r
+ * @function\r
+ * @return {int}\r
+ * Callbackモードの時はRPCメソッドのインデクスを返します。\r
*/\r
output:function BusInOut_output()\r
{\r