03-20-2013 08:57 PM
GPIB-USB-HSを使用しGP-IB機器を制御しています。
リモート/ローカルの切り替え関数(EnableRemoto/EnableLocal)の第2引数の説明を教えてください。
Vbib-32.vasプログラム内上記関数があります、第2引数がaddrs() as integerとなっています。
本引数は、上位側から渡す情報なのでしょうか、それとも実行した結果何らかの情報が返ってくるのでしょうか
上位側から渡す場合は何を設定すればよろしいですか。
03-21-2013 10:13 PM
二番目の引数は入力です。GPIBのアドレスを配列として入力して、配列の最後の要素はNOADDRの定数にします。簡単な使用例はこんな感じです
Addr4882_t Addrlist[4] = {3,4,5,NOADDR};
FindRQS ( 0, AddrList, &SerialPollResponse );
こっちのマニュアルに乗ってますよ
http://digital.ni.com/manuals.nsf/websearch/EA0EB5CF034A93B986257ACA000D1DE7
詳しい説明は7-5、サンプルは8-16を見てください。
上記のマニュアルの7-5から、
16bitの数値で、上8bitがセカンダリアドレス(オプショナル)、下8bitがプライマリアドレスです。
Some of the NI-488.2 calls have an address or address list parameter.
An address is a 16-bit representation of the GPIB device address. The
primary address is stored in the low byte and the secondary address, if any,
is stored in the high byte. For example, a device at primary address 6 and
secondary address 0x67 has an address of 0x6706. A NULL address is
represented as 0xffff. An address list is represented by a comma-separated
list of addresses, such as 1,0xb706,3.
03-22-2013 12:59 AM
二番目の引数を設定して行ってみましたが切り替わりませんでした。
切り替えたいGP-IBアドレスは11とした場合(セカンダリアドレスは0)
試したパターンは以下の通りです。
Addlist[2] = 11,NOADDR
Addlist[4] = 1,11,3,NOADDR
03-25-2013 02:16 AM
EnableRemoteの関数の返り値を確認してみて下さい。
16bitのステータスが返されます、ステータスの内容は下記のドキュメントの Appendix B で確認できます。
http://www.ni.com/pdf/manuals/370428n.pdf
また、コード全体はどのようになっておりますか?
NI MAXではGPIBボードと計測器は認識していますか?
まずはGPIBボードと計測器がMAXで認識されていないと通信出来ませんので、
MAXの「VISAテストパネル」からコマンドを送ってみて下さい。(スクリーンショット)