5月 282015
■汎用入出力ポート(DIO)のサポート
1ビット単位で入力と出力の設定が行える汎用入出力ポート(DIO)が最大で8ポート用意されました。
これにより外部機器への信号出力や外部装置からの入力信号を使った処理の制御が可能となります。
DIO制御のためにスクリプトコマンドやAPI関数が用意されています。
DIO制御用に追加されたスクリプトコマンド
| スクリプトコマンド書式 | 意味 |
| DIODIR=x1 | 各ポートの入出力方向の設定
x1 レジスタまたはリテラル値 |
| DIOINT=x1,x2 | 入力ポートの割り込み検出設定
x1 レジスタまたはリテラル値
x2 0~3: 割込判定条件
= 0:Low レベル
= 1:High レベル
= 2:Low ⇒ High の変化
= 3:High ⇒ Low の変化
|
| DIOINT=DISABLE | 割込み禁止 |
| DIOINT_DEBOUNCE=nn | DIO割り込み検知時のチャタリング防止時間の設定
nn チャタリング防止時間 0~500 のミリ秒単位のリテラル値で指定します。 |
| WAITINT=x1,Rn | タイムアウト時間の設定。
x1 リテラル値 0~60000:1ミリ秒単位。 Rn レジスタ(n: 0~15)。 ここで指定したレジスタに割り込み発生で0、 タイムアウトで1がセットされる |
| DIOSET=x1 | 出力ポートの出力値の設定
x1 レジスタまたはリテラル値 |
| DIOGET | 入力ポートの状態取得。入力データをレスポンスに表示する。 |
| SET Rn=DIO | DIOからの入力値をレジスタRnに設定
Rn レジスタ(n: 0~15)。 |
DIO制御用に追加されたAPI関数
| API関数 | usb61mk2_set_dio_mode |
| 機能 | DIOのIN/OUT、割込検知を設定 |
| 書式 |
INT usb61mk2_set_dio_mode( UCHAR UnitID, UCHAR bDir, UCHAR bInt,
UCHAR bPol, UCHAR bTrg)
|
| 引数 |
UnitID ユニット番号
pDir 1: 出力 0: 入力設定
pInt 入力検知設定(インターラプト通知)
pPol 1を設定したポートは High/Low が反対になる
pTrg 0~3: 割込判定条件
0 Low レベル
1 High レベル
2 Low ⇒ High の変化
3 High ⇒ Low の変化
|
| API関数 | usb61mk2_get_dio_mode |
| 機能 | DIOのIN/OUT、割込検知を取得 |
| 書式 |
INT usb61mk2_get_dio_mode( UCHAR UnitID, UCHAR bDir, UCHAR bInt,
UCHAR bPol, UCHAR bTrg)
|
| 引数 |
UnitID ユニット番号
pDir 1: 出力 0: 入力設定
pInt 入力検知設定(インターラプト通知)
pPol 1を設定したポートは High/Low が反対になる
pTrg 0~3: 割込判定条件
0 Low レベル
1 High レベル
2 Low ⇒ High の変化
3 High ⇒ Low の変化
|
| API関数 | usb61mk2_set_dio |
| 機能 | DIOの出力データを書き込む |
| 書式 |
INT usb61mk2_set_dio( UCHAR UnitID, UCHAR bData) |
| 引数 |
UnitID ユニット番号
bData 出力データ
|
| API関数 | usb61mk2_get_dio |
| 機能 | DIOの入力データを読み込む |
| 書式 |
INT usb61mk2_get_dio( UCHAR UnitID, PUCHAR pData) |
| 引数 |
UnitID ユニット番号
pData 入力データ格納バッファへのポインタ
|
| API関数 | usb61mk2_set_dio_chattering |
| 機能 | DIOのチャタリング防止時間を設定する |
| 書式 |
INT usb61mk2_set_dio_chattering( UCHAR UnitID, SHORT wTime) |
| 引数 |
UnitID ユニット番号
wTime チャタリング防止時間(ms)
|
| API関数 | usb61mk2_get_dio_chattering |
| 機能 | DIOのチャタリング防止時間を取得する |
| 書式 |
INT usb61mk2_get_dio_chattering( UCHAR UnitID, PSHORT pTime) |
| 引数 |
UnitID ユニット番号
pTime チャタリング防止時間(ms)
|
今回は、REX-USB61mk2で強化された機能の中の高速化された機能と汎用入出力ポート(DIO)のサポートについて紹介しました。
次回も引き続きREX-USB61mk2について紹介していきます。
「REX-USB61mk2で強化された機能(その3)」に続く…
関連記事
SPI/I2C Serial EEPROMへのアクセスを簡単に(その1)
SPI/I2C Serial EEPROMへのアクセスを簡単に(その2)
SPI/I2C Serial EEPROMへのアクセスを簡単に(その3)
SPI/I2C Serial EEPROMへのアクセスを簡単に(その4)
SPI/I2C Serial EEPROMへのアクセスを簡単に(その5)
I2C RTCデバイスにアクセスする
I2C気圧センサーにアクセスする
機能が大幅に強化されたSPI/I2Cプロトコル・エミュレータが新登場!!!
REX-USB61mk2で強化された機能(その1)
REX-USB61mk2で強化された機能(その3)
REX-USB61mk2で強化された機能(その4)
REX-UBS61mk2の新機能 レジスタ設定ツール(その1)
REX-UBS61mk2の新機能 レジスタ設定ツール(その2)
この記事で紹介した製品

