+/**\r
+ * @fileOverview PwmOutクラスを定義します。\r
+ */\r
(function(){\r
var NS=mbedJS;\r
var MI=MiMicJS;\r
\r
/**\r
- * @name mbedJS.PwmOut\r
* PwmOutクラスです。\r
* <a href="https://mbed.org/handbook/PwmOut">mbed::PwmOut</a>と同等の機能を持ちます。\r
+ * @name mbedJS.PwmOut\r
* @constructor\r
* @param {mbedJS.Mcu} i_mcu\r
* インスタンスをバインドするMCUオブジェクトです。\r
* Generatorを指定した場合、コールバック関数の引数はyiledの戻り値として取得できます。\r
* <p>\r
* @return {mbedJS.PwmOut}\r
- * @example\r
+ * @example //Callback\r
+ * var mcu=new mbedJS.Mcu("ws://192.168.128.39/rpc/",\r
+ * {\r
+ * onNew:function(){\r
+ * var pin=new mbedJS.PwmOut(mcu,mbedJS.PinName.p21,{\r
+ * onNew:function(){\r
+ * pin.write(0.33);\r
+ * },\r
+ * onWrite:function()\r
+ * {\r
+ * pin.read();\r
+ * },\r
+ * onRead:function(v)\r
+ * {\r
+ * pin.period(1.0);\r
+ * },\r
+ * onPeriod:function(){\r
+ * pin.period_ms(1);\r
+ * },\r
+ * onPeriod_ms:function(){\r
+ * pin.period_us(10);\r
+ * },\r
+ * onPeriod_us:function(){\r
+ * pin.pulsewidth(3);\r
+ * },\r
+ * onPulsewidth:function(){\r
+ * pin.pulsewidth_ms(30);\r
+ * },\r
+ * onPulsewidth_ms:function(){\r
+ * pin.pulsewidth_us(40);\r
+ * },\r
+ * onPulsewidth_us:function(){\r
+ * mcu.close();\r
+ * }\r
+ * });\r
+ * },\r
+ * onClose:function(){\r
+ * },\r
+ * onError:function(){\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 pin=new mbedJS.PwmOut(mcu,mbedJS.PinName.p21,g);\r
+ * yield pin.waitForNew();\r
+ * yield pin.write(0.33);\r
+ * var v=yield pin.read();\r
+ * yield pin.period(1.0);\r
+ * yield pin.period_ms(1);\r
+ * yield pin.period_us(10);\r
+ * yield pin.pulsewidth(3);\r
+ * yield pin.pulsewidth_ms(30);\r
+ * yield pin.pulsewidth_us(40);\r
+ * yield mcu.close();\r
+ * }catch(e){\r
+ * mcu.shutdown();\r
+ * }}();\r
+ * g.next();\r
*/\r
var CLASS=function PwmOut(i_mcu,i_params,i_handler)\r
{\r
/** @private リモートインスタンスのオブジェクトIDです。*/\r
_oid:null,\r
/**\r
- * @name mbedJS.PwmOut#waitForNew\r
- * @function\r
* Generatorモードのときに使用する関数です。\r
* Generatorモードの時は、yieldと併用してnew PwmOut()の完了を待ちます。\r
+ * @name mbedJS.PwmOut#waitForNew\r
+ * @function\r
*/\r
waitForNew:function PwmOut_waitForNew()\r
{\r
} \r
},\r
/**\r
- * @name mbedJS.PwmOut#write\r
- * @function\r
* ピンに値を出力します。\r
* 関数の完了時にonWriteイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.PwmOut#write\r
+ * @function\r
* @param {float} i_value\r
* [0,1]の値を指定します。\r
* @return {int|none}\r
}\r
},\r
/**\r
- * @name mbedJS.PwmOut#read\r
- * @function\r
* ピンから値を読み込みます。\r
* 関数の完了時にonReadイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.PwmOut#read\r
+ * @function\r
* @return {int|float}\r
* <p>Callbackモードの時はRPCメソッドのインデクスを返します。</p>\r
* <p>Generatorモードの時はピンの値を返します。</p>\r
} \r
},\r
/**\r
- * @name mbedJS.PwmOut#period\r
- * @function\r
* PWMの周期を設定します。\r
* 関数の完了時にonPeriodイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.PwmOut#period\r
+ * @function\r
* @param {float} i_value\r
* 秒単位の周期を設定します。\r
* @return {int|none}\r
}\r
},\r
/**\r
- * @name mbedJS.PwmOut#period_ms\r
- * @function\r
* PWMの周期を設定します。\r
* 関数の完了時にonPeriod_msイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.PwmOut#period_ms\r
+ * @function\r
* @param {int} i_value\r
* ms単位の周期を設定します。\r
* @return {int|none}\r
}\r
},\r
/**\r
- * @name mbedJS.PwmOut#period_us\r
- * @function\r
* PWMの周期を設定します。\r
* 関数の完了時にonPeriod_usイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.PwmOut#period_us\r
+ * @function\r
* @param {int} i_value\r
* 整数値を指定します。\r
* @return {int|none}\r
}\r
},\r
/**\r
- * @name mbedJS.PwmOut#pulsewidth\r
- * @function\r
* PWMの周期を設定します。\r
* 関数の完了時にonPeriodイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.PwmOut#pulsewidth\r
+ * @function\r
* @param {float} i_value\r
* 秒単位の周期を設定します。\r
* @return {int|none}\r
}\r
},\r
/**\r
- * @name mbedJS.PwmOut#pulsewidth_ms\r
- * @function\r
* PWMの周期を設定します。\r
* 関数の完了時にonPulsewidth_msイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.PwmOut#pulsewidth_ms\r
+ * @function\r
* @param {int} i_value\r
* ms単位の周期を設定します。\r
- * @return {int|none}\r
- * <p>Callbackモードの時はRPCメソッドのインデクスを返します。</p>\r
- * <p>Generatorモードの時は戻り値はありません。</p>\r
+ * @return {int}\r
+ * Callbackモードの時はRPCメソッドのインデクスを返します。\r
*/\r
pulsewidth_ms:function PwmOut_pulsewidth_ms(i_value)\r
{\r
}\r
},\r
/**\r
- * @name mbedJS.PwmOut#pulsewidth_us\r
- * @function\r
* PWMの周期を設定します。\r
* 関数の完了時にonPulsewidth_usイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
+ * @name mbedJS.PwmOut#pulsewidth_us\r
+ * @function\r
* @param {int} i_value\r
* 整数値を指定します。\r
- * @return {int|none}\r
- * <p>Callbackモードの時はRPCメソッドのインデクスを返します。</p>\r
- * <p>Generatorモードの時は戻り値はありません。</p>\r
+ * @return {int}\r
+ * Callbackモードの時はRPCメソッドのインデクスを返します。\r
*/\r
pulsewidth_us:function PwmOut_pulsewidth_us(i_value)\r
{\r