第 5 章 ハードウェア固有情報 20
5.7 URS-631504
●カウント方向を「リバース方向」に設定した場合 カウント
モード ○:カウントする ×:カウントしない
位相差パルスカウントモード
A
B
A
B
○ × × ×
○ ○ ○ ○
○ × ○ ×
←1逓倍→ × × × ○
○ ○ ○
○
○ × ○
×
←2逓倍→
←4逓倍→
ダウンカウント アップカウント
UP/DOWNパルスカウントモード
A(UP)
-1 B(DN)
-1 +1 +1
A,Bを共に“Low”にしないでください。
ゲート付き単相パルスカウントモード
A
B
○ ×
○ ○
←1逓倍
←2逓倍
○ × × × × ×
○ ○ × × × ×
ダウンカウント
5.7.2 UsbioWrite 関数に関する内容
URS-631504 の製品を使用した際の、UsbioWrite 関数で使用できるレジスタ情報の一覧は下記の通り です。
レジスタ情報 概要
C_631504_SETCH C_631504_MODE、C_631504_LATCH_CLR、C_631504_DFILTER の設定値 を反映させるチャンネルを設定します。
C_631504_MODE カウントモードの動作を設定します。
C_631504_LATCH_CLR カウンタの外部ラッチ、クリアの動作を設定します。
C_631504_DFILTER デジタルフィルタの値を設定します。
C_631504_SETREG C_631504_MODE、C_631504_LATCH_CLR、C_631504_DFILTER で設定し た設定値を反映します。
C_631504_PRESET1 チャンネル 1 のカウンタへ設定するプリセット値を設定します。
C_631504_PRESET2 チャンネル 2 のカウンタへ設定するプリセット値を設定します。
C_631504_PRESET3 チャンネル 3 のカウンタへ設定するプリセット値を設定します。
C_631504_PRESET4 チャンネル 4 のカウンタへ設定するプリセット値を設定します。
C_631504_CNTCTRL1 チャンネル 1 のカウンタ制御情報を設定します。
C_631504_CNTCTRL2 チャンネル 2 のカウンタ制御情報を設定します。
C_631504_CNTCTRL3 チャンネル 3 のカウンタ制御情報を設定します。
C_631504_CNTCTRL4 チャンネル 4 のカウンタ制御情報を設定します。
下記にレジスタ情報と設定値についての詳細を記載しています。
C_631504_SETCH
概要 C_631504_MODE、C_631504_LATCH_CLR、C_631504_DFILTER の設定値を反映させる チャンネルを設定します。
識別子 C_631504_SETCH レジスタ情報
値 08000080h
設定する値は下記の 0~3 の値を設定します。
値 内容
0 チャンネル 1
1 チャンネル 2
2 チャンネル 3
設定値
3 チャンネル 4
設定値 0 設定値(例)
意味 チャンネル 1 を選択します。
注意事項 下記のレジスタレジスタ情報を使用して、カウントモード等の設定や反映をさせ
た後、C_631504_SETCH を使用してチャンネルを設定して下さい。
・C_631504_MODE
・C_631504_LATCH_CLR
・C_631504_DFILTER
・C_631504_SETREG
C_631504_MODE
概要 カウントモードの動作を設定します。
識別子 C_631504_MODE レジスタ情報
値 08000081h
設定する値は、下記のビットに対応しています。
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 - - - DIR MD1 MD0 SEL1 SEL0 各ビットの意味は下記となります。
ビット 内容 SEL0
SEL1 MD0 MD1
カウントモードを指定するビットです。
SEL0、SEL1、MD0、MD1 の組み合わせで指定します。
カウント方向を指定する。
0 通常方向(カウントアップ) DIR
1 リバース方向(カウントダウン)
SEL0、SEL1、MD0、MD1 の組み合わせで指定するカウントモードは下記の通りです。
MD1 MD0 SEL1 SEL0 カウントモード
0 0 0 0 ・ゲート信号付き単相パルス 1逓倍モード
・非同期クリア
0 0 0 1 ・ゲート信号付き単相パルス 2逓倍モード
・非同期クリア
0 1 0 0 ・位相差パルス 1逓倍モード
・非同期クリア
0 1 0 1 ・位相差パルス 2 逓倍モード
・非同期クリア
0 1 1 0 ・位相差パルス 4 逓倍モード
・非同期クリア
1 1 0 0 ・位相差パルス 1 逓倍モード
・同期クリア
1 1 0 1 ・位相差パルス 2 逓倍モード
・同期クリア
1 1 1 0 ・位相差パルス 4 逓倍モード
・同期クリア 設定値
1 0 0 0 ・UP/DOWN パルスカウントモード
・非同期クリア
・非同期クリア
A相、B相のステータスに関わりなく、Z相またはZ相+Lが有効になった瞬間、
(エッジにて)カウンタはクリアされます。
・同期クリア
B相が ”Low” で、Z相またはZ相+Lが有効になった時、A相の(↑)と(↓)
にてカウンタはクリアされます。
設定値 4h 設定値(例)
意味 下記のカウントモード設定にする。
・位相差パルス 1逓倍モード
・非同期クリア
・通常方向でカウントする
注意事項 C_631504_MODE を使用して、カウントモードの設定をした後は、下記のレジスタ 情報を使用して、設定の反映やチャンネルの設定を行ってください。
・C_631504_SETREG
・C_631504_SETCH
C_631504_LATCH_CLR
概要 カウンタの外部ラッチ、クリアの動作を設定します。
識別子 C_631504_LATCH_CLR レジスタ情報
値 08000082h
設定する値は、下記のビットに対応しています。
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 - - LP ZP LTS1 LTS0 CLS1 CLS0 各ビットの意味は下記となります。
ビット 内容
カウンタの外部クリア設定を行います。
CLS1 CLS0 内容
0 0 カウンタの外部クリアを行わない
0 1 Z 相のみでカウンタをクリア
1 0 L と Z 相が有効の時、カウンタをクリア CLS
1 1 設定禁止
カウンタの外部ラッチ設定を行います。
LTS1 LTS0 内容
0 0 カウンタの外部ラッチを行わない
0 1 L 相のみでカウンタをラッチ
1 0 L と Z 相が有効のとき、カウンタをラッチ 設定値
LTS
1 1 フリーラン Z 相極性を設定します。
0 Z相通常 (Highで有効) ZP
1 Z相反転 (Lowで有効) L の極性を設定します。
0 Lの立ち下がりを有効(↓) (Lowで有効) LP
1 Lの立ち上がりを有効(↑) (Highで有効) 設定値 0h
設定値(例)
意味 下記のカウンタの外部ラッチ、クリアの動作に設定します。
・カウンタの外部クリアを行わない
・カウンタの外部ラッチを行わない
・Z 相は通常に設定
・L の極性は立ち下がりを有効に設定
注意事項 C_631504_LATCH_CLR を使用して、ラッチ/クリアの設定をした後は、下記のレジ スタ情報を使用して、設定の反映やチャンネルの設定を行ってください。
・C_631504_SETREG
・C_631504_SETCH
C_631504_DFILTER
概要 デジタルフィルタの値を設定します。
識別子 C_631504_DFILTER レジスタ情報
値 08000083h
設定する値は、下記のビットに対応しています。
bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 CCLK1 CCLK0 - CCNT4 CCNT3 CCNT2 CCNT1 CCNT0 CCNT0 ~ CCNT4、CCLK0、CCLK1 の組み合わせで設定するデジタルフィルタの値は は下記の通りです。
0us ~ 3100us までの値を設定することが出来ます。
CCLK1
0 1
CCLK0 CCNT0 ~ CCNT4
0 1 0 1
0 停止 停止 停止 -
1 1us 10us 100us -
2 2us 20us 200us -
3 3us 30us 300us -
: : : : :
30 30us 300us 3000us -
31 31us 310us 3100us -
設定値
設定値 42h 設定値(例)
意味 A 相、B 相、Z 相、L に対して、20us のデジタルフィルタの値を設定 します。
注意事項 C_631504_DFILTER を使用して、デジタルフィルタの設定をした後は、下記のレジ スタ情報を使用して、設定の反映やチャンネルの設定を行ってください。
・C_631504_SETREG
・C_631504_SETCH
C_631504_SETREG
概要 C_631504_MODE、C_631504_LATCH_CLR、C_631504_DFILTER で設定した設定値を反 映します。
識別子 C_631504_SETREG レジスタ情報
値 0800008Eh
設定する値は、下記のビットに対応しています。
Bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0
- - - SET
各ビットの意味は下記となります。
ビット 内容
SET 0→1 ま た は 1→0 と 値 を 変 化 さ せ た 場 合 に 、C_631504_MODE 、 C_631504_LATCH_CLR、C_631504_DFILTER で設定した値が反映されま す。
設定値
設定値 1h 設定値(例)
意味 値を 1 し、設定値の反映を行う
※0→1 に変化させたとき
注意事項 ・カウントモード等の設定変更を行った場合は、本レジスタ情報を使用して、設
定の反映を行ってください。
・本レジスタ情報に 0 が設定された状態で、0 を設定しても、設定値は反映され ません。(1→1 への設定も同様。) 必ず 0 → 1、または、1 → 0 に設定値を変化 させて設定値を反映して下さい。
C_631504_PRESET1、C_631504_PRESET2、C_631504_PRESET3、C_631504_PRESET4
概要 チャンネル xx のカウンタへ設定するプリセット値を設定します。
識別子 C_631504_PRESET1 チャンネル 1
値 20000090h
識別子 C_631504_PRESET2 チャンネル 2
値 20000094h
識別子 C_631504_PRESET3 チャンネル 3
値 20000098h
識別子 C_631504_PRESET4 レジスタ情報
チャンネル 4
値 2000009Ch
設定値 プリセット値として、32bit のデータ(00000000-FFFFFFFFh)を設定できます。
設定値 1000h 設定値(例)
意味 プリセット値に 1000h を設定する。
注意事項 ・本レジスタ情報を使用して、プリセット値を設定して場合、C_631504_CNTCTRLxx
C_631504_CNTCTRL1、C_631504_CNTCTRL2、C_631504_CNTCTRL3、C_631504_CNTCTRL4
概要 チャンネル xx のカウンタ制御情報を設定します。
識別子 C_631504_CNTCTRL1 チャンネル 1
値 080000D0h
識別子 C_631504_CNTCTRL2 チャンネル 2
値 080000D1h
識別子 C_631504_CNTCTRL3 チャンネル 3
値 080000D2h
識別子 C_631504_CNTCTRL4 レジスタ情報
チャンネル 4
値 080000D3h 設定する値は、下記のビットに対応しています。
Bit7 bit6 bit5 bit4 bit3 bit2 bit1 bit0 - PERR_
CL
EXLTS _CL
CBF_C L
- CP CC CL 各ビットの意味は下記となります。
ビット 内容
CL 0→1または1→0と値が変化した際に、カウンタ値を取得出来る状態に する。(ソフトウェアラッチ)
CC 0→1または1→0と値が変化した際に、カウンタ値をクリアする(ソフ トウェアクリア)
CP 0→1または1→0と値が変化した際に、カウンタへプリセットレジスタ の値をロードする。
CBF_CL 0→1または1→0と値が変化した際に、CBF ビットをクリアする。
CBF ビットは C_631504_STATUSxx のレジスタ情報を使用して取得で きる情報です。
EXLTS_CL 0→1または1→0と値が変化した際に、EXLTS ビットをクリアする。
EXLTS ビットは C_631504_STATUSxx のレジスタ情報を使用して取得 できる情報です。
PERR_CL 0→1または1→0と値が変化した際に、PERR ビットをクリアする。
PERR ビットは C_631504_STATUSxx のレジスタ情報を使用して取得で きる情報です。
設定値
設定値 2h 設定値(例)
意味 値を 2 にし、カウンタ値のクリアを行う。
※0→2 に変化させたとき
5.7.3 UsbioRead 関数に関する内容
URS-631504 の製品を使用した際の、UsbioRead 関数で使用できるレジスタ情報の一覧は下記の通りで す。
レジスタ情報 概要
C_631504_CNT1 チャンネル 1 のカウンタ値を取得します。
C_631504_CNT2 チャンネル 2 のカウンタ値を取得します。
C_631504_CNT3 チャンネル 3 のカウンタ値を取得します。
C_631504_CNT4 チャンネル 4 のカウンタ値を取得します。
C_631504_STATUS1 チャンネル 1 のステータス情報を取得します。
C_631504_STATUS2 チャンネル 2 のステータス情報を取得します。
C_631504_STATUS3 チャンネル 3 のステータス情報を取得します。
C_631504_STATUS4 チャンネル 4 のステータス情報を取得します。
C_631504_TERM_STATUS1 チャンネル 1 の端子状態を取得します。
C_631504_TERM_STATUS2 チャンネル 2 の端子状態を取得します。
C_631504_TERM_STATUS3 チャンネル 3 の端子状態を取得します。
C_631504_TERM_STATUS4 チャンネル 4 の端子状態を取得します。
C_631504_SETREG_REF C_631504_SETREG で設定した値が反映されているか確認します。
C_631504_CNTCTRL_REF1 チャンネル 1 の C_631504_CNTCTRL1 で設定した値が反映されている か確認します。
C_631504_CNTCTRL_REF2 チャンネル 2 の C_631504_CNTCTRL1 で設定した値が反映されている か確認します。
C_631504_CNTCTRL_REF3 チャンネル 3 の C_631504_CNTCTRL1 で設定した値が反映されている か確認します。
C_631504_CNTCTRL_REF4 チャンネル 4 の C_631504_CNTCTRL1 で設定した値が反映されている か確認します。
下記にレジスタ情報と取得値についての詳細を記載しています。