Class Index | File Index

Classes


Class LPCXpresso1769.Ni


Defined in: LPCXpresso1769.Ni.js.

Class Summary
Constructor Attributes Constructor Name and Description
 
LPCXPresso1769.Ni (NativeInterface)クラスのコンストラクタ。 MCUに関連付けしたネイティブインタフェイスを生成する。 クラスは、MiMicVMのCALL命令を使用した、ネイティブ関数コール機能を提供する。
Method Summary
Method Attributes Method Name and Description
 
call(i_id, i_in, o_out)
この関数は、CALLインストラクションを使ったネイティブファンクションコールを実行する。 MiMicRemoteMCUに定義されているネイティブ関数から、ファンクションIDに一致するものを検索して、実行する。 ネイティブ関数は、native_function.cのnaitive_function_tableに定義されている。 引き渡すパラメータは、SPUTによるストリーム値と、VMのレジスタ(WM)値である。得られる返却値は、ネイティブ関数実行後のVMレジスタ(WM)と、ストリームである。
Class Detail
LPCXpresso1769.Ni(i_mcu)
LPCXPresso1769.Ni (NativeInterface)クラスのコンストラクタ。 MCUに関連付けしたネイティブインタフェイスを生成する。 クラスは、MiMicVMのCALL命令を使用した、ネイティブ関数コール機能を提供する。

				
				
				
				
					
						
Parameters:
{object as LPCXpresso1769.Mcu} i_mcu
インスタンスを結びつけるMcuオブジェクト。
Method Detail
{boolean} call(i_id, i_in, o_out)
この関数は、CALLインストラクションを使ったネイティブファンクションコールを実行する。 MiMicRemoteMCUに定義されているネイティブ関数から、ファンクションIDに一致するものを検索して、実行する。 ネイティブ関数は、native_function.cのnaitive_function_tableに定義されている。 引き渡すパラメータは、SPUTによるストリーム値と、VMのレジスタ(WM)値である。得られる返却値は、ネイティブ関数実行後のVMレジスタ(WM)と、ストリームである。
var mcu=new LPCXpresso1769.Mcu("192.168.128.39",true);
var ni=new LPCXpresso1769.Ni(mcu);
//This function calls the function number 1. wm1=1,wm2=3 are set to WM before calling. And puts [12] to input stream.
//Out values are consist of wm4,wm5 and output stream values.
var r1={wm4:null,wm5:null};
ni.call(0,{wm1:1,wm2:3,stream:[12]},r1);

//sample2 no parameter, returns.
ni.call(0);

//sample 3 stream only.
var r2={stream:null};
ni.call(0,{stream:[]},r2);

//call sample echo back native function.
var r3={stream:null};
ni.call(0x39000000,{stream:[0x2525]},r3);
alert(r3[0]);

// set/get all work register and stream.
var r4={stream:null,wm0:null,wm1:null,wm2:null,wm3:null,wm4:null,wm5:null,wm6:null,wm7:null};
ni.call(0x39000000,{stream:[0x39],wm0:7,wm1:6,wm2:5,wm3:4,wm4:3,wm5:2,wm6:1,wm7:0},r4);
Parameters:
{int} i_id
ファンクションID。ファンクションIDは、呼び出す関数を識別するidである。
{object as associative array} i_in
入力パラメータである。必要な値を格納した連想配列で指定する。省略が可能である。 連想配列のメンバは以下の通り。
{wm?:int,stream:array[int]}
  • wm? - WMレジスタにセットする値である。wm0~wm7まで、最大8個の値を指定できる。
  • stream - ストリームに出力する値である。長さに制限は無いが、100個程度が上限である。
{object as associative array} o_out
出力パラメータを受け取る変数である。戻り値として取得したい値を格納した連想配列を指定する。省略が可能である。 各メンバ変数は関数が割り当てるので、nullを設定しておくこと。 連想配列のメンバは以下の通り。
{wm?:null,stream:null}
  • wm? - 取得するWMレジスタのプレースホルダ。戻り値としてwmレジスタの値を取得する時に指定する。取得したいWMを指定する。
  • stream - 取得するストリームのプレースホルダ。戻り値としてネイティブ関数が出力したストリームを取得する時に指定する。純粋な返却streamから、wmの返却分を差し引いたint array値である。
Returns:
{boolean} 関数コールが成功するとtrueである。

Documentation generated by JsDoc Toolkit 2.4.0 on Wed Nov 30 2011 15:13:08 GMT+0900 (JST)