* MiMicJsAPIのバージョン文字列。\r
* @name MiMicJS#VERSION\r
*/\r
- NS.VERSION="MiMicJsAPI/2.0.2";\r
+ NS.VERSION="MiMicJsAPI/2.0.3";\r
/**\r
* 配列要素、又は値がすべてInt値でない場合に例外を起こします。\r
* @name MiMicJS.assertInt\r
var NS=MiMicJS; \r
/**\r
* 引数が1個のパターン。\r
- * @name MiMicJS.MiMicException.2\r
+ * @name MiMicJS.MiMicException:2\r
* @function\r
* @param {object} e\r
* eのクラスにより、動作が異なる。\r
* @constructor\r
* @name MiMicJS.MiMicException\r
* @param ...\r
- * 詳細は、MiMicException.nを参照。\r
+ * 詳細は、MiMicException:nを参照。\r
*/\r
NS.MiMicException=function MiMicException(/*...*/)\r
{\r
}catch(e){\r
throw new MI.MiMicException(e);\r
} \r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.AnalogIn#dispose\r
+ * @function\r
+ */\r
+ dispose:function AnalogIn_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
+\r
}\r
NS.AnalogIn=CLASS;\r
}());
\ No newline at end of file
MI._assertYield.call(_t);\r
_t._lc=CLASS.write;\r
MI.assertInt(i_value);\r
- return _t._mcu.rpc(_t.RPC_NS+":write_fx",_t._oid+","+i_value,\r
+ return _t._mcu.rpc(_t.RPC_NS+":write_u16",_t._oid+","+i_value,\r
function(j){\r
if(cb){cb();}\r
if(_t._gen){_t._gen.next();}\r
}catch(e){\r
throw new MI.MiMicException(e);\r
}\r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.AnalogOut#dispose\r
+ * @function\r
+ */\r
+ dispose:function AnalogOut_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
}\r
+\r
}\r
NS.AnalogOut=CLASS;\r
}());
\ No newline at end of file
}catch(e){\r
throw new MI.MiMicException(e);\r
} \r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.BusIn#dispose\r
+ * @function\r
+ */\r
+ dispose:function BusIn_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
+\r
}\r
NS.BusIn=CLASS;\r
}());
\ No newline at end of file
}catch(e){\r
throw new MI.MiMicException(e);\r
}\r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.BusInOut#dispose\r
+ * @function\r
+ */\r
+ dispose:function BusInOut_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
+\r
}\r
NS.BusInOut=CLASS;\r
}());
\ No newline at end of file
}catch(e){\r
throw new MI.MiMicException(e);\r
}\r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.BusOut#dispose\r
+ * @function\r
+ */\r
+ dispose:function BusOut_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
}\r
+\r
}\r
NS.BusOut=CLASS;\r
}());
\ No newline at end of file
}catch(e){\r
throw new MI.MiMicException(e);\r
}\r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.DigitalIn#dispose\r
+ * @function\r
+ */\r
+ dispose:function DigitalIn_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
}\r
NS.DigitalIn=CLASS;\r
}());
\ No newline at end of file
}catch(e){\r
throw new MI.MiMicException(e);\r
}\r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.DigitalOut#dispose\r
+ * @function\r
+ */\r
+ dispose:function DigitalOut_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
}\r
+\r
}\r
NS.DigitalOut=CLASS;\r
}());
\ No newline at end of file
},\r
/**\r
* 引数が3個の場合\r
- * @name mbedJS.I2C#read.1\r
+ * @name mbedJS.I2C#read:1\r
* @function\r
* @param {int} address\r
* 8ビットのI2CSlaveアドレスです。\r
*/\r
/**\r
* 引数が1個の場合\r
- * @name mbedJS.I2C#read.2\r
+ * @name mbedJS.I2C#read:2\r
* @function\r
* @param {int} ack\r
* indicates if the byte is to be acknowledged (1 = acknowledge)\r
* @name mbedJS.I2C#read\r
* @function\r
* @param ...\r
- * 詳細はmbedJS.I2C#read.Nを参照してください。\r
+ * 詳細はmbedJS.I2C#read:Nを参照してください。\r
*/ \r
read:function I2C_read(/*...*/)\r
{\r
},\r
/**\r
* 引数が3個の場合\r
- * @name mbedJS.I2C#write.1\r
+ * @name mbedJS.I2C#write:1\r
* @function\r
* @param {int} address\r
* 8ビットのI2CSlaveアドレスです。\r
*/\r
/**\r
* 引数が1個の場合\r
- * @name mbedJS.I2C#write.2\r
+ * @name mbedJS.I2C#write:2\r
* @function\r
* @param {int} data\r
* 送信データを指定します。\r
* @name mbedJS.I2C#write\r
* @function\r
* @param ...\r
- * 詳細はmbedJS.I2C#write.Nを参照してください。\r
+ * 詳細はmbedJS.I2C#write:Nを参照してください。\r
*/ \r
write:function I2C_write(/*...*/)\r
{\r
}catch(e){\r
throw new MI.MiMicException(e);\r
} \r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.I2C#dispose\r
+ * @function\r
+ */\r
+ dispose:function I2C_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
+\r
}\r
NS.I2C=CLASS;\r
}());
\ No newline at end of file
throw new MI.MiMicException(e);\r
} \r
}\r
-CLASS.prototype=\r
-{\r
+/**\r
+ * mbedJS.Serial#receiveの戻り値の種類です。\r
+ * NoData,ReadAddressed,WriteGeneral,WriteAddressedがあります。\r
+ * @name mbedJS.I2CSlave#RxStatus\r
+ */\r
+CLASS.RxStatus={\r
+ NoData:0,ReadAddressed:1,WriteGeneral:2,WriteAddressed:3\r
+}\r
+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
_lc:null,\r
/** @private Generatorモードの場合にGeneratorオブジェクトを保持します。*/\r
},\r
/**\r
* 引数が2個の場合\r
- * @name mbedJS.I2CSlave#read.1\r
+ * @name mbedJS.I2CSlave#read:1\r
* @function\r
* @param {int} length\r
* 読み出すデータの長さです。256未満の値を指定してください。\r
*/\r
/**\r
* 引数が0個の場合\r
- * @name mbedJS.I2CSlave#read.2\r
+ * @name mbedJS.I2CSlave#read:2\r
* @function\r
* @return {int}\r
* Callbackモードの時はRPCメソッドのインデクスを返します。\r
* @name mbedJS.I2CSlave#read\r
* @function\r
* @param ...\r
- * 詳細はmbedJS.I2CSlave#read.Nを参照してください。\r
+ * 詳細はmbedJS.I2CSlave#read:Nを参照してください。\r
*/ \r
read:function I2CSlave_read(/*...*/)\r
{\r
} \r
},\r
/**\r
- * 引数が3個の場合\r
- * @name mbedJS.I2CSlave#write.1\r
+ * 引数が1個(byte array)の場合\r
+ * @name mbedJS.I2CSlave#write:1\r
* @function\r
* @param {byte[]} data\r
* 送信するデータを格納したバイト配列です。\r
* Generatorモードの時は成功/失敗フラグを返します。ACK:0(成功),NACK:それ以外です。\r
*/\r
/**\r
- * 引数が1個の場合\r
- * @name mbedJS.I2CSlave#write.2\r
+ * 引数が1個(int)の場合\r
+ * @name mbedJS.I2CSlave#write:2\r
* @function\r
* @param {int} data\r
* 送信データを指定します。\r
* @name mbedJS.I2CSlave#write\r
* @function\r
* @param ...\r
- * 詳細はmbedJS.I2CSlave#write.Nを参照してください。\r
+ * 詳細はmbedJS.I2CSlave#write:Nを参照してください。\r
*/ \r
write:function I2CSlave_write(/*...*/)\r
{\r
}catch(e){\r
throw new MI.MiMicException(e);\r
} \r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.I2CSlave#dispose\r
+ * @function\r
+ */\r
+ dispose:function IC2Slave_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
+ \r
}\r
NS.I2CSlave=CLASS;\r
}());
\ No newline at end of file
* @function\r
*/\r
close:function MCU_close(){\r
- if(this._gen && this._lc){throw new MI.MiMicException(MI.Error.NG_YIELD_NOT_COMPLETED);}\r
+ MI._assertYield.call(this);\r
this._lc=CLASS.close;\r
this._rpc.close();\r
},\r
getInfo:function(){\r
try{\r
var _t=this;\r
- if(this._gen && this._lc){throw new MI.MiMicException(MI.Error.NG_YIELD_NOT_COMPLETED);}\r
+ MI._assertYield.call(_t);\r
+ var cb=MI._getCb(arguments,_t._event.onGetInfo);\r
_t._lc=CLASS.getInfo;\r
return _t.rpc(_t.RPC_NS+":getInfo","",\r
- function (j)\r
- {\r
- var r=j.result;\r
- var v={version:r[0],platform:r[1],mcu:{name:r[3],eth:r[2]},memory:{free:r[4]}};\r
- if(_t._event.onGetInfo){_t._event.onGetInfo(v);}\r
- if(_t._gen){_t._gen.next(v);}\r
- _t._lc=null;\r
- }\r
+ function (j)\r
+ {\r
+ var r=j.result;\r
+ var v={version:r[0],platform:r[1],mcu:{name:r[3],eth:r[2]},memory:{free:r[4]}};\r
+ if(cb){cb(v);}\r
+ if(_t._gen){_t._gen.next(v);}\r
+ _t._lc=null;\r
+ }\r
);\r
}catch(e){\r
throw new MI.MiMicException(e);\r
disposeObject:function(i_oid){\r
try{\r
var _t=this;\r
- if(this._gen && this._lc){throw new MI.MiMicException(MI.Error.NG_YIELD_NOT_COMPLETED);}\r
+ MI._assertYield.call(_t);\r
+ var cb=MI._getCb(arguments,_t._event.onDisposeObject);\r
_t._lc=CLASS.disposeObject;\r
return _t.rpc(_t.RPC_NS+":disposeObject",i_oid,\r
- function (j)\r
- {\r
- var v=j.result[0]?true:false;\r
- if(_t._event.onDisposeObject){_t._event.onDisposeObject(v);}\r
- if(_t._gen){_t._gen.next(v);}\r
- _t._lc=null;\r
- }\r
+ function (j)\r
+ {\r
+ var v=j.result[0]?true:false;\r
+ if(cb){cb(v);}\r
+ if(_t._gen){_t._gen.next(v);}\r
+ _t._lc=null;\r
+ }\r
+ );\r
+ }catch(e){\r
+ throw new MI.MiMicException(e);\r
+ } \r
+ },\r
+ /**\r
+ * 内部関数です.\r
+ * ペリフェラルクラスから_dispose.apply(this,arguments)でコールしてください。\r
+ * @private\r
+ */\r
+ _dispose:function(){\r
+ try{\r
+ var _t=this;\r
+ MI._assertYield.call(_t);\r
+ var cb=MI._getCb(arguments,_t._event.onDispose);\r
+ _t._lc=_t.dispose;//CLASS.disposeが使えないんでIDに関数そのものを使う\r
+ return _t._mcu.rpc(_t._mcu.RPC_NS+":disposeObject",_t._oid,\r
+ function (j)\r
+ {\r
+ var v=j.result[0]?true:false;\r
+ if(cb){cb(v);}\r
+ if(_t._gen){_t._gen.next(v);}\r
+ _t._lc=null;\r
+ }\r
);\r
}catch(e){\r
throw new MI.MiMicException(e);\r
} \r
} \r
+ \r
}\r
NS.Mcu=CLASS;\r
}());
\ No newline at end of file
}catch(e){\r
throw new MI.MiMicException(e);\r
} \r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.PortIn#dispose\r
+ * @function\r
+ */\r
+ dispose:function PortIn_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
}\r
NS.PortIn=CLASS;\r
}());
\ No newline at end of file
}catch(e){\r
throw new MI.MiMicException(e);\r
}\r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.PortOut#dispose\r
+ * @function\r
+ */\r
+ dispose:function PortOut_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
}\r
}\r
NS.PortOut=CLASS;\r
MI._assertYield.call(_t);\r
_t._lc=CLASS.period_ms;\r
MI.assertInt(i_value);\r
- return _t._mcu.rpc(_t.RPC_NS+":period_ms",_t._oid+","+Math.round(i_value),\r
+ return _t._mcu.rpc(_t.RPC_NS+":period_ms",_t._oid+","+i_value,\r
function(j){\r
if(cb){cb();}\r
if(_t._gen){_t._gen.next();}\r
MI._assertYield.call(_t);\r
_t._lc=CLASS.period_us;\r
MI.assertInt(i_value);\r
- return _t._mcu.rpc(_t.RPC_NS+":period_us",_t._oid+","+Math.round(i_value),\r
+ return _t._mcu.rpc(_t.RPC_NS+":period_us",_t._oid+","+i_value,\r
function(j){\r
if(cb){cb();}\r
if(_t._gen){_t._gen.next();}\r
MI._assertYield.call(_t);\r
_t._lc=CLASS.pulsewidth_ms;\r
MI.assertInt(i_value);\r
- return _t._mcu.rpc(_t.RPC_NS+":pulsewidth_ms",_t._oid+","+Math.round(i_value),\r
+ return _t._mcu.rpc(_t.RPC_NS+":pulsewidth_ms",_t._oid+","+i_value,\r
function(j){\r
if(cb){cb();}\r
if(_t._gen){_t._gen.next();}\r
MI._assertYield.call(_t);\r
_t._lc=CLASS.pulsewidth_us;\r
MI.assertInt(i_value);\r
- return _t._mcu.rpc(_t.RPC_NS+":pulsewidth_us",_t._oid+","+Math.round(i_value),\r
+ return _t._mcu.rpc(_t.RPC_NS+":pulsewidth_us",_t._oid+","+i_value,\r
function(j){\r
if(cb){cb();}\r
if(_t._gen){_t._gen.next();}\r
}catch(e){\r
throw new MI.MiMicException(e);\r
}\r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.PwmOut#dispose\r
+ * @function\r
+ */\r
+ dispose:function PwmOut_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
}\r
NS.PwmOut=CLASS;\r
}());
\ No newline at end of file
} \r
}, \r
/**\r
- * ピンに値を出力します。\r
+ * SPI Slaveに値を書き込み、戻り値を返します。\r
* 関数の完了時にonWriteイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
* @name mbedJS.SPI#write\r
}\r
},\r
/**\r
- * ピンに値を出力します。\r
+ * frequencyに値を設定します。\r
* 関数の完了時にonFrequencyイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
* @name mbedJS.SPI#frequency\r
}\r
}, \r
/**\r
- * ピンに値を出力します。\r
- * 関数の完了時にonFrequencyイベントが発生します。\r
+ * formatに値を設定します。\r
+ * 関数の完了時にonFormatイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
* @name mbedJS.SPI#format\r
* @function\r
}catch(e){\r
throw new MI.MiMicException(e);\r
}\r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.SPI#dispose\r
+ * @function\r
+ */\r
+ dispose:function SPI_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
}\r
}\r
NS.SPI=CLASS;\r
}, \r
\r
/**\r
- * ピンに値を出力します。\r
+ * frequencyに値を設定します。\r
* 関数の完了時にonFrequencyイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
* @name mbedJS.SPISlave#frequency\r
}\r
}, \r
/**\r
- * ピンに値を出力します。\r
- * 関数の完了時にonFrequencyイベントが発生します。\r
+ * formatに値を設定します。\r
+ * 関数の完了時にonFormatイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
* @name mbedJS.SPISlave#format\r
* @function\r
}\r
},\r
/**\r
- * ピンから値を読み込みます。\r
+ * 転送メモリから値を読み込みます。\r
* 関数の完了時にonReadイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
* @name mbedJS.SPISlave#read\r
} \r
},\r
/**\r
- * ã\83\94ã\83³ã\81\8bã\82\89å\80¤ã\82\92èªã\81¿è¾¼ã\81¿ます。\r
+ * ã\83\87ã\83¼ã\82¿ã\81\8cå\88°ç\9d\80ã\81\97ã\81¦ã\81\84ã\82\8bã\81\8bã\82\92è¿\94ã\81\97ます。\r
* 関数の完了時にonReadイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
* @name mbedJS.SPISlave#receive\r
} \r
},\r
/**\r
- * ピンモードを設定します。\r
+ * 転送バッファに次に送信するメッセージをセットします。\r
* 関数の完了時にonReplyイベントが発生します。\r
* Generatorモードの時は、yieldと併用して完了を待機できます。\r
* @name mbedJS.SPISlave#reply\r
}catch(e){\r
throw new MI.MiMicException(e);\r
} \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.SPISlave#dispose\r
+ * @function\r
+ */\r
+ dispose:function SPISlave_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
} \r
}\r
NS.SPISlave=CLASS;\r
throw new MI.MiMicException(e);\r
} \r
}\r
-CLASS.prototype=\r
-{\r
+/**\r
+ * mbedJS.Serial#format関数に指定する値の種類です。\r
+ * None,Odd,Even,Forced1,Forced0があります。\r
+ * @name mbedJS.Serial#Parity\r
+ * @field\r
+ */\r
+CLASS.Parity={\r
+ None:0,Odd:1,Even:2,Forced1:3,Forced0:4\r
+}\r
+CLASS.prototype={\r
/** @private */\r
RPC_NS:"mbedJS:Serial",\r
- /**\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
- },\r
/** @private 最後にコールしたAPIです。*/\r
_lc:null,\r
/** @private Generatorモードの場合にGeneratorオブジェクトを保持します。*/\r
* @return {int}\r
* Callbackモードの時はRPCメソッドのインデクスを返します。\r
*/\r
- format:function SerialIn_format(i_bits,i_parity,i_stop_bits)\r
+ format:function Serial_format(i_bits,i_parity,i_stop_bits)\r
{\r
try{\r
var _t=this;\r
MI._assertYield.call(_t);\r
var cb=MI._getCb(arguments,_t._event.onFormat);\r
_t._lc=CLASS.format;\r
- var p=[MI.isUndefined(i_bits,8),MI.isUndefined(i_parity,_t.Parity.None),MI.isUndefined(i_stop_bits,1)];\r
+ var p=[MI.isUndefined(i_bits,8),MI.isUndefined(i_parity,CLASS.Parity.None),MI.isUndefined(i_stop_bits,1)];\r
MI.assertInt(p);\r
return _t._mcu.rpc(_t.RPC_NS+":format",_t._oid+","+p[0]+","+p[1]+","+p[2],\r
function (j)\r
}catch(e){\r
throw new MI.MiMicException(e);\r
} \r
- } \r
+ },\r
+ /**\r
+ * MCUに生成されているオブジェクトを破棄します。\r
+ * @name mbedJS.Serial#dispose\r
+ * @function\r
+ */\r
+ dispose:function Serial_dispose()\r
+ {\r
+ return this._mcu._dispose.apply(this,arguments);\r
+ }\r
}\r
NS.Serial=CLASS;\r
}());
\ No newline at end of file
NS.PinName=function(){\r
var B;\r
var D={};\r
- // LPC Pin Names P0_0からP4_32\r
+ // LPC Pin Names P0_0からP5_31\r
B=0x00010000;\r
for(var i=0;i<=5;i++){\r
for(var i2=0;i2<=31;i2++){\r
PullDown: 0x00010001,\r
PullNone: 0x00010002,\r
OpenDrain: 0x00010003,\r
- PullDefault:0x00010004};\r
+ PullDefault:0x00010004\r
+};\r
/**\r
* ポート識別子です。\r
* mbedSDKのポート名と同一です。<br/>\r
- * (Port0 - Port4)\r
+ * (Port0 - Port5)\r
* @name mbedJS.PortName\r
*/\r
NS.PortName={\r
Port1: 0x00010001,\r
Port2: 0x00010002,\r
Port3: 0x00010003,\r
- Port4: 0x00010004};\r
+ Port4: 0x00010004,\r
+ Port4: 0x00010005\r
+};\r
\r
\r
}());
\ No newline at end of file