■機能 μPD7210Cレジスタデータの取得、および各種データの取得・設定を行います。
■書式
(VB.NET用)
Dim SetFlag, Reg, Preg, Ret As Integer
Ret = GpBoardstsEx(SetFlag, Reg, Preg)
(C言語用)
DWORD SetFlag, Reg, Preg, Ret;
Ret = GpBoardstsEx(SetFlag, Reg, &Preg);
(C#用)
uint SetFlag, Reg, Preg, Ret;
Ret = gpib.BoardstsEx(SetFlag, Reg, out Preg);
(Python用)
SetFlag, Reg, Preg, Ret = ctypes.c_ulong(), ctypes.c_ulong(), ctypes.c_ulong(), ctypes.c_ulong()
Ret.value = GpibPy.GpBoardstsEx(SetFlag, Reg, ctypes.byref(Preg))
■モード マスタモード/スレーブモード
■引数
SetFlag : 取得・設定の選択
0 :取得
0以外:設定
Reg : レジスタまたはステータスを指定
※すべての内容において取得は可能です。以下の○印は設定が可能なものを示しています。
設定 :値 :内容
× :00H :データ・イン レジスタ
× :01H :インタラプト・ステータス1 レジスタ
× :02H :インタラプト・ステータス2 レジスタ
× :03H :シリアルポール レジスタ
× :04H :アドレス・ステータス レジスタ
× :05H :コマンド・パス・スルー レジスタ
× :06H :アドレス0レジスタ
× :07H :アドレス1レジスタ
○ :08H :マイアドレス
× :09H :IRQ
○ :0AH :マスタ/スレーブモード(0:マスタ/1:スレーブ)
× :0BH :I/Oアドレス
○ :0CH :転送モード(0:INT/1:DMA/2:FIFO/3:BusMaster)
○ :0DH :DMAチャネル
× :0EH :ボードタイプ
× :10H :SDC/DCL受信(0:デバイスクリアを受けていない/1:受けた)
× :11H :GET受信(0:トリガを受けていない/1:受けた)
× :12H :SRQ受信(0:SRQを受信していない/1:受信した)
× :13H :TA(0:トーカ状態でない/1:トーカ状態)
× :14H :LA(0:リスナ状態でない/1:リスナ状態)
○ :15H :デリミタ(0:なし/1:CR+LF/2:CR/3:LF)
○ :16H :EOI(0:送出しない/1:送出する)
× :17H :IFC受信(0:IFCを受けていない/1:受けた)
○ :20H :2次アドレス(0、96~126)
○ :21H :EOSバイトデータ(0000H~00FFH)+上位ステータス(0000H~FF00H)
○ :22H :送信の最後にEOIを有効にするかどうか(0:しない/1:する)
○ :23H :ATNラインの状態(0:無効状態/1:有効状態)
× :24H :REM状態(0:Local状態/1:Remote状態)
× :25H :LOK状態(0:Free状態/1:LockOut状態)
× :26H :7210上のTA(0:トーカ状態でない/1:トーカ状態)
× :27H :7210上のLA(0:リスナ状態でない/1:リスナ状態)
× :28H :受信関数のENDの発生状況を調べる(0:ENDは発生していない/1:EOSにより発生/2:EOIにより発生/3:EOS/EOI両方により発生)
× :29H :CICステータス(0:CIC状態にない/1:CIC状態)
○ :2AH :EOSを検出した時点で受信を終了(0:しない/1:する)
○ :2BH :EOSを送信する度にEOIを有効に(0:しない/1:する)
○ :2CH :EOSを8ビットで判断(0:しない/1:する)
○ :2DH :受信中にEOSが一致した場合、ENDをセット(0:しない/1:する)
○ :2EH :ISTビット(パラレルポールフラグ)の設定(0/1)
× :2FH :非同期関数のエラーコード
× :30H :非同期受信関数の受信文字数
○ :31H :デリミタを送信(0:しない/1:する)
○ :32H :デリミタをカウント(0:しない/1:する)
× :33H :送受信可能かどうか(0:不可能/1:可能(送信)/2:可能(受信))
Preg : SetFlag=0の場合:取得値
SetFlag=0以外 :設定値
Ret : 終了情報(戻り値)
0 : 正常終了
140 : 非同期関数の実行中
255 : パラメータエラー
(詳細は「戻り値一覧」参照)
■補足
①Regの値が20H~22H、2AH~2DH、31H~32Hでの設定は、GpTalkEx()/GpListenEx()/GpTalkAsync()/GpListenAsync()でのみ有効です。(Fシリーズを除く)
②この関数は初期化を行っていなくても実行することができます。