AIOデバイスのデジタル入出力を行うサンプルです。
このサンプルプログラムは、デジタル入出力機能を持ったデバイスの選定が必要です。
サンプル仕様 |
※サンプルプログラムの初期値です。デバイスドライバの初期値と異なりますので、ご注意ください。 |
プログラム名 |
./digita_io |
入出力方向 |
0(ポート0:DI、 ポート1:DI) |
ポート番号 |
0 |
ビット番号 |
0 |
入力データ |
0 |
出力データ |
0 |
1.希望するプログラム名を指定し、プログラム実行させると、上記のような外観のCUI(Character
User Interface)メニューが表示されます。
ソフトウェアのバージョンによっては外観が異なることがあります。
2.デバイス初期化処理
・[1 : AioInit]をコマンド選択すると、デバイス名を指定することができます。
指定デバイスの利用開始することをデバイスドライバへ通知します。
デバイス名を指定すると、AioInitが実行され、CUIメニューが再度表示されます。
・汎用デジタル機能の入出力方向を設定できるデバイスを利用している場合、
[3 : AioSetDioDirection]をコマンド選択し、入出力方向を切り替えられます。
詳細は、AioSetDioDirection関数を参照ください。
3.汎用デジタル入力の処理
・1ポート(8ビット)入力する場合、
[4 : AioInputDiByte]をコマンド選択し、希望するポート番号を10進数(Dec)で指定すると、入力データが16進数(Hex)で表示されます。
・1ビット入力する場合、
[5 : AioInputDiBit]をコマンド選択し、希望するビット番号を10進数(Dec)で指定すると、入力データが表示されます。
4.汎用デジタル出力の処理
・1ポート(8ビット)出力する場合、
[6 : AioOutputDoByte]をコマンド選択すると、8ビット単位でデジタル出力ができます。
希望するポート番号を10進数(Dec)で指定し、さらに希望する出力データを16進数(Hex)で指定すると、デバイスからデジタル信号が出力されます。
・1ビット出力する場合、
[7 : AioOutputDoBit]をコマンド選択すると、1ビット単位でデジタル出力ができます。
希望するビット番号を10進数(Dec)で指定し、さらに希望する出力データを指定すると、デバイスからデジタル信号が出力されます。
5.終了処理
・[8 : AioExit]をコマンド選択すると、現デバイス利用が完了したことデバイスドライバへ通知します。
プログラムを終了させることなく、異なるデバイス(例:AIO001など)からデータ取得ができます。
AioExitが実行されると、CUIメニューが再度表示されます。
・再び、データ取得処理を行う場合は、[1 : AioInit]をコマンド選択し、新たなデバイス名を指定し、デバイス初期化処理を行ってください。
6.プログラムの終了処理
・[q : 終了]をコマンド選択すると、プログラムが終了します。