Upload
others
View
0
Download
0
Embed Size (px)
Citation preview
ハードウェア説明
■ AZI-3118 ハードウェア機能 構成図
部品はすべて相当品を使用しています。
初版 1
AZI-3118
■ 設定一覧
部品番号 名 称 内 容
RSW1 I/Oポートアドレス設定 本ボードをパソコンの I/O空間に割り付けます。~
【対応表】
RSW3
・A3~A0は0に固定されます。
RSW4 ボード番号設定 0 F(0 15)に 本ボードのボード番号を設定します。~ ~
設定可能 複数枚のボードを同じI/Oポートに割
り付けたとき、特定のボードを選択
することが可能になります。
JP1 パソコンからのリセット パソコンからのリセット信号を入力
信号設定 します。
パソコンのリセットスイッチが押さ
れると、ボードは初期化されます。
パソコンのリセットスイッチが押さ
れても、ボードには影響ありません。
JP3 入力レンジ設定 ユニポーラ: 0 ~+ 2.5V
0 ~+ 5V
0 ~+10V
バイポーラ:-2.5~+2.5V
-5 ~+5V
バイポーラ:-10~+10V
初版 2
AZI-3118
初版 3
AZI-3118
I/OポートAZI-3118の制御方法について説明します。
I/Oポートの構成
■ I/Oポートの基本構成
ADRは、RSW1~3で設定されたI/Oポートアドレスです。
I/Oポートアドレス 内 容
ADR+0 バンク制御レジスタへの出力データによって内容が異なります。
ADR+1
ADR+2
ADR+3
ADR+4
ADR+5 バンク制御レジスタ
ADR+6 バンク制御レジスタへの出力データによって内容が異なります。
ADR+7 ボード選択レジスタ
I/Oポートの内容は、バンク制御レジスタ(ADR+5)と、ボード選択レジスタ(ADR+7)によって切り換わりま
す。
バンク制御レジスタは、ADR+0~ADR+4,ADR+6を目的のレジスタに切り換えるために使用します。
ボード選択レジスタは、使用するボードを選択するために使用します。
■ I/Oポートのボード番号構成
ボード番号設定(RSW4)で設定したボード番号を、ボード選択レジスタ(ADR+7)に対して設定し
てください。
電源投入時,リセット時、ボード選択レジスタ(ADR+7)の値は0となります。
同じI/Oポートアドレスに複数枚のボードを使用
したときの構成は左図のようになっています。
ボード選択レジスタ(ADR+7)にボード番号を設
定することで、 任意のボードを操作することが
できます。
I/Oポートへのアクセスを行うときは、必ず最初
にボード選択レジスタ(ADR+7)に対して、操作
を行うボードNo.を出力し、ADR+0~ADR+6に対す
る制御を行います。
初版 4
AZI-3118
●ボード選択レジスタ(ADR+7:入出力)
D7 D6 D5 D4 D3 D2 D1 D0
RST 0 0 0 ID3 ID2 ID1 ID0
ID3 ID2 ID1 ID0 ボード番号
0 0 0 0 No.0
0 0 0 1 No.1
・ ・ ・ ・ ・・ ・ ・ ・ ・・ ・ ・ ・ ・
1 1 1 1 No.15
0 何もしません
1 ボードをリセット(初期化)します
●ボードNo.書き込み時
ボード0~nは、同一のI/Oポートアドレスに設定しているとします。
初版 5
AZI-3118
●ボードNo.読み込み時
ボード0~nは、同一のI/Oポートアドレスに設定しているとします。
■ I/Oポートのバンク構成
バンク構成一覧表に記述されていないバンクNo.は、予約(将来拡張用)です。
電源投入時,リセット時はバンクNo.0となります。
本ボードのバンク構成は左図のようにな
っています。ADR+5のバンク制御レジスタ
は、どのバンクに切り換わっても、常に
ADR+5に現れており、いつでも、リード/
ライト可能となっております。
I/Oポートへのアクセスを行うときは、ボ
ード番号の選択を行った後、バンク制御
レジスタ(ADR+5)に対して、制御を行うバ
ンクNo.を出力し、その後、ADR+0~ADR+4
,ADR+6に対する制御を行います。
●バンク制御レジスタ(ADR+5:入出力)
D7 D6 D5 D4 D3 D2 D1 D0
B7 B6 B5 B4 B3 B2 B1 B0
【バンク構成一覧表】
B7 ~ B0 バンクNo. 内 容
00000000 0 AD変換データ読み出し、チャンネル制御
00000001 1 タイマ制御
00000010 2 割り込み制御
00000011 3 プログラマブルインプットレンジ制御
00101000 40 汎用入出力
01100100 100 各種コントロール
初版 6
AZI-3118
バンク個別説明各バンクの制御方法を記述します。
■ バンクNo.0 AD変換データ読み出し、チャンネル制御
ADRは、RSW1~3で設定されたI/Oポートアドレスです。
「-」は不定ビットです。読み出す際はマスクしてください。
I/Oポートアドレス 入出力方向 内 容
出力(OUT) 入力チャンネル切り換えおよび、変換スタート制御ADR+0
入力(IN) AD変換データ(下位)
出力(OUT) 使用禁止ADR+1
入力(IN) AD変換データ(上位)および、ステータス
入出力ADR+2 使用禁止(IN/OUT)
出力(OUT) 使用禁止ADR+3
入力(IN) バンク制御レジスタ
入出力ADR+4 使用禁止(IN/OUT)
出力(OUT) バンク制御レジスタADR+5
入力(IN) 使用禁止
入出力ADR+6 使用禁止(IN/OUT)
出力(OUT) ボード選択レジスタADR+7
入力(IN) 使用禁止
●入力チャンネル切り換えおよび、変換スタート制御(ADR+0:出力)
D7 D6 D5 D4 D3 D2 D1 D0
MB MA - - CA3 CA2 CA1 CA0
【シングルエンド入力時】
CA3 CA2 CA1 CA0 CH番号
0 0 0 0 CH1
0 0 0 1 CH2
・ ・ ・ ・ ・・ ・ ・ ・ ・・ ・ ・ ・ ・
1 1 1 1 CH16
【差動入力時】
CA3 CA2 CA1 CA0 CH番号
- 0 0 0 CH1
- 0 0 1 CH2
・ ・ ・ ・ ・・ ・ ・ ・ ・・ ・ ・ ・ ・
- 1 1 1 CH8
MB MA 内 容
0 0 チャンネル切り換え+AD変換スタート
0 1 AD変換スタートのみ
1 0 チャンネル切り換えのみ
初版 7
AZI-3118
●AD変換データおよび、ステータス(ADR+0, +1:入力)
ADR+1 ADR+0D7 D6 D5 D4 D3 D2 D1 D0 D7 D6 D5 D4 D3 D2 D1 D0
BUSY - - - B11 B10 B9 B8 B7 B6 B5 B4 B3 B2 B1 B0
【バイポーラ時】
入力電圧レンジ A D 変 換 デ ー タスケール
±X(V) B ~ B HEX11 0
+フルスケール + -1LSB 1 1 1 1 1 1 1 1 1 1 1 1 FFFHX~ ~ ~ ~
0 0 1 0 0 0 0 0 0 0 0 0 0 0 800H~ ~ ~ ~
-フルスケール - 0 0 0 0 0 0 0 0 0 0 0 0 000HX
【ユニポーラ時】
入力電圧レンジ A D 変 換 デ ー タスケール
0~+ (V) B ~ B HEXX 11 0
+フルスケール + -1LSB 1 1 1 1 1 1 1 1 1 1 1 1 FFFHX~ ~ ~ ~
ハーフスケール + /2 1 0 0 0 0 0 0 0 0 0 0 0 800HX~ ~ ~ ~
0 0 0 0 0 0 0 0 0 0 0 0 0 0 000H
【対応表】
入力電圧レンジ(V) 1LSB当たりの電圧(mV)X
0~+ 2.5V 2.5
0~+ 5V 5
± 2.5V 2.5
0~+10V 10
± 5V 5
±10V 10
0 AD変換中
1 AD変換終了
● AD変換データを電圧に変換する方法
入力電圧 = AD変換データ × 1LSB当たりの電圧 - SCALE
入力電圧範囲(V) SCALE(V) 1LSB当たりの電圧(mV)
2.50 ~ 2.5V 0 ≒ 0.6104
4096
0 ~ 5V 0 5≒ 1.2207
±2.5V 2.5 4096
0 ~ 10V 0 10≒ 2.4414
±5V 5 4096
20±10V 10 ≒ 4.8828
4096
初版 8
AZI-3118
■ バンクNo.1 タイマ制御
ADRは、RSW1~3で設定されたI/Oポートアドレスです。
「-」は不定ビットです。読み出す際はマスクしてください。
I/Oポートアドレス 入出力方向 内 容
ADR+0 入出力(IN/OUT) タイマ(8253相当品) カウンタ#0
出力(OUT) タイマゲート制御ADR+1
入力(IN) 使用禁止
ADR+2 入出力(IN/OUT) タイマ(8253相当品) カウンタ#1
ADR+3 入出力(IN/OUT) 使用禁止
ADR+4 入出力(IN/OUT) タイマ(8253相当品) カウンタ#2
ADR+5 入出力(IN/OUT) バンク制御レジスタ
ADR+6 入出力(IN/OUT) タイマ(8253相当品) コントロール
ADR+7 入出力(IN/OUT) ボード選択レジスタ
●タイマゲート制御(ADR+1:出力)
D7 D6 D5 D4 D3 D2 D1 D0
- - - - - - - GATE
0 タイマ(カウンタ #0,#1)を停止
1 タイマ(カウンタ #0,#1)を許可
● タイマの使い方
本ボードは、プログラマブルタイマ(8253相当品)を内蔵しています。
このタイマは、周期的なAD変換スタート信号や、インターバルタイマ割り込み信号に使用することが
できます。
タイマの周期は、下記の式により求めてください。
1周期(sec)=(カウンタ#0のカウンタ値)×(カウンタ#1のカウンタ値)×( )
8×106
カウンタ#0への設定値は、8~65535の範囲で設定してください。
カウンタ#1への設定値は、2~65535の範囲で設定してください。
【設定例】 10msec間隔の周期を発生する場合
10 msec=100Hz
=8MHz/80000分周
プログラム方法 (ADRはSWで設定されたI/Oポートアドレスです。)
outp(ADR+5 ,1); //バンクNO.1を選択
outp(ADR+6 ,0x36); //カウンタ#0の初期化(固定値)
outp(ADR+0 ,0x08); //カウンタ#0に8を設定 L
outp(ADR+0 ,0x00); // (8=0008h) H
outp(ADR+6 ,0x74); //カウンタ#1の初期化(固定値)
outp(ADR+2 ,0x10); //カウンタ#1に10000を設定 L
outp(ADR+2 ,0x27); // (10000=2710h) H
outp(ADR+1 ,1); //カウンタ GATE オープン(固定値)
初版 9
AZI-3118
■ バンクNo.2 割り込み制御
ADRは、RSW1~3で設定されたI/Oポートアドレスです。
「-」は不定ビットです。読み出す際はマスクしてください。
割り込み処理終了時、EOIコマンド(OCW2への出力)の発行が必要です。
パソコン本体内蔵割り込みコントローラのスレーブとしての実行はできません。
I/Oポートアドレス 入出力方向 内 容
割り込みコントローラデータ(8259相当品)ADR+0 入出力(IN/OUT) (ポーリングデータ/OCW2/OCW3/ICW1)
ADR+1 入出力(IN/OUT) 使用禁止
割り込みコントローラデータ(8259相当品)ADR+2 入出力(IN/OUT) (OCW1/ICW2)
出力(OUT) パソコン側割り込みレベル設定ADR+3
入力(IN) 使用禁止
ADR+4 入出力(IN/OUT) 使用禁止
ADR+5 入出力(IN/OUT) バンク制御レジスタ
ADR+6 入出力(IN/OUT) 使用禁止
ADR+7 入出力(IN/OUT) ボード選択レジスタ
【ボード内部8259の割り込み設定:一覧表】
接続端子 機 能
IR0 タイマ(OUT1)
IR1 AD変換終了(BUSY)
IR2 外部割り込み入力(EXINT IN)
IR3 未使用
IR4 未使用
IR5 未使用
IR6 未使用
IR7 未使用
●割り込みコントローラデータ
(1) ICW1 (ADR+0 出力)
ICW2 とともに使用し、割り込みコントローラ(8259相当品)の初期化を行います。
D7 D6 D5 D4 D3 D2 D1 D0
0 0 0 1 0 0 1 0
(2) ICW2 (ADR+2 出力)
ICW1 とともに使用し、割り込みコントローラ(8259相当品)の初期化を行います。
D7 D6 D5 D4 D3 D2 D1 D0
0 0 0 0 0 0 0 0
(3) OCW1 (ADR+2 出力)
割り込みマスクの設定を行います。
D7 D6 D5 D4 D3 D2 D1 D0
1 1 1 1 1 M2 M1 M0
0 内蔵タイマ(8253相当品)OUT1 割り込み許可
1 内蔵タイマ(8253相当品)OUT1 割り込み禁止
0 AD変換終了(BUSY)割り込み許可
1 AD変換終了(BUSY)割り込み禁止
0 外部割り込み入力(EXINT IN)割り込み許可
1 外部割り込み入力(EXINT IN)割り込み禁止
初版 10
AZI-3118
(4) OCW2 (ADR+0 出力)
EOI の発行を行います。
D7 D6 D5 D4 D3 D2 D1 D0
0 0 1 0 0 0 0 0
割り込み処理を終了する前には、必ず EOI を発行してください。
パソコンの割り込みコントローラへの EOI 発行を行った後、ボードの割り込みコントロー
ラへのEOI発行を行ってください。
(5) OCW3 (ADR+0 出力)
ポーリングコマンドを発行します。
D7 D6 D5 D4 D3 D2 D1 D0
0 0 0 0 1 1 0 0
(6) ポーリングデータ
割り込みの有無、割り込みの種類を取り出します。
D7 D6 D5 D4 D3 D2 D1 D0
INT 0 0 0 0 L2 L1 L0
L2 L1 L0 割り込みの種類
0 0 0 内蔵タイマ(8253相当品)OUT1 割り込み
0 0 1 AD 変換終了(BUSY)割り込み
0 1 0 外部割り込み入力(EXINT IN)割り込み
0 割り込みなし(L0~L2は無効)
1 割り込みあり(L0~L2は有効)
●パソコン側割り込みレベル設定(ADR+3:出力)
D7 D6 D5 D4 D3 D2 D1 D0
IEN - - - - IA2 IA1 IA0
IA2 IA1 IA0 割り込みレベル
0 0 0 INT0
0 0 1 INT1
0 1 0 INT2
0 1 1 INT3
1 0 0 INT4
1 0 1 INT5
1 1 0 INT6
1 1 1 未使用
0 割り込み禁止
1 割り込み許可
(1)IEN,IA2~IA0 パソコン側割り込みレベル設定
本ボードがパソコンに対して発生させる割り込みレベル,割り込みの禁止/許可を設定します。
初版 11
AZI-3118
●割り込みコントローラの使い方
本ボードは、割り込みコントローラを内蔵しています。
IR0 内蔵タイマ(8253相当品)OUT1
割り込み INT IR1 AD 変換終了(BUSY)
IR2 外部割り込み入力(EXINT IN)
割り込みコントローラ
(1) 割り込みコントローラの初期化方法
割り込みコントローラは、次のようにして初期化を行ってください。
【初期化例】 内蔵タイマ(8253相当品)OUT1 割り込みのみ許可にする場合
outp(ADR+5,2); // バンクNo.2を選択
outp(ADR+0,0x12); // ICW1の設定
outp(ADR+2,0x00); // ICW2の設定
outp(ADR+2,0xfe); // 割り込みマスクの設定
// (内蔵タイマ(8253相当品)OUT1 のみ許可)
(2) 割り込みの種類取得方法
本ボードでは、全ての割り込みが、パソコンに対して同じ割り込みとして発生し
ます。割り込み処理内では、次のようにして割り込みの種類を割り込み
コントローラから取り出す必要があります。
outp(ADR+5,2); // バンクNo.2を選択
outp(ADR+0,0x0c); // ポーリングコマンド発行(OCW3)
lv=inp(ADR+0); // ポーリングデータ取得
■ バンクNo.3 プログラマブルインプットレンジ制御
ADRは、RSW1~3で設定されたI/Oポートアドレスです。
「-」は不定ビットです。読み出す際はマスクしてください。
I/Oポートアドレス 入出力方向 内 容
出力(OUT) 汎用出力ADR+0
入力(IN) 汎用入力
ADR+1 入出力(IN/OUT) 使用禁止
出力(OUT) プログラマブルインプットレンジ制御ADR+2
入力(IN) 使用禁止
ADR+3 入出力(IN/OUT) 使用禁止
ADR+4 入出力(IN/OUT) 使用禁止
ADR+5 入出力(IN/OUT) バンク制御レジスタ
ADR+6 入出力(IN/OUT) 使用禁止
ADR+7 入出力(IN/OUT) ボード選択レジスタ
初版 12
AZI-3118
●プログラマブルインプットレンジ制御(ADR+2:出力)
D7 D6 D5 D4 D3 D2 D1 D0
- - - - - - GA2 GA1
入力レンジGA2 GA1
ユニポーラ バイポーラ
0 0 0~+10V ±10V
0 1 0~+5V ±5V
1 0 0~+2.5V ±2.5V
1 1 設定禁止
バイポーラ/ユニポーラの切り替えは、バンクNo.100 ADR+2出力で決定します。
■ バンクNo.40 汎用入出力
ADRは、RSW1~3で設定されたI/Oポートアドレスです。
「-」は不定ビットです。読み出す際はマスクしてください。
I/Oポートアドレス 入出力方向 内 容
出力(OUT) 汎用出力ADR+0
入力(IN) 汎用入力
ADR+1 入出力(IN/OUT) 使用禁止
ADR+2 入出力(IN/OUT) 使用禁止
ADR+3 入出力(IN/OUT) 使用禁止
ADR+4 入出力(IN/OUT) 使用禁止
ADR+5 入出力(IN/OUT) バンク制御レジスタ
ADR+6 入出力(IN/OUT) 使用禁止
ADR+7 入出力(IN/OUT) ボード選択レジスタ
●汎用出力(ADR+0:出力)
D7 D6 D5 D4 D3 D2 D1 D0
- - - - - - OUT2 OUT1
コネクタ信号名OUT2 OUT1
OUT2 OUT1
0 0 Lowレベル Lowレベル
0 1 Lowレベル Highレベル
1 0 Highレベル Lowレベル
1 1 Highレベル Highレベル
●汎用入力(ADR+0:入力)
D7 D6 D5 D4 D3 D2 D1 D0
- - - - - - IN2 IN1
コネクタ信号名IN2 IN1
IN2 IN1
0 0 Lowレベル Lowレベル
0 1 Lowレベル Highレベル
1 0 Highレベル Lowレベル
1 1 Highレベル Highレベル
初版 13
AZI-3118
■ バンクNo.100 各種コントロール
ADRは、RSW1~3で設定されたI/Oポートアドレスです。
「-」は不定ビットです。読み出す際はマスクしてください。
I/Oポートアドレス 入出力方向 内 容
出力(OUT) 外部AD変換スタート制御,極性反転制御ADR+0
入力(IN) 使用禁止
ADR+1 出力(OUT) タイマAD変換スタート制御
入力(IN) 使用禁止
出力(OUT) シングルエンド/差動入力切り換えおよびADC入力仕様切り換えADR+2
入力(IN) 使用禁止
ADR+3 入出力(IN/OUT) 使用禁止
ADR+4 入出力(IN/OUT) 使用禁止
ADR+5 入出力(IN/OUT) バンク制御レジスタ
ADR+6 入出力(IN/OUT) 使用禁止
ADR+7 入出力(IN/OUT) ボード選択レジスタ
●外部AD変換スタート制御,極性反転制御(ADR+0:出力)
D7 D6 D5 D4 D3 D2 D1 D0
DITG - - - - - EINT ETRG
0 極性反転しない(立ち下がりエッジで有効)
1 極性反転する (立ち上がりエッジで有効)
0 EXTRG INにIN1の条件をかけない
1 EXTRG INにIN1のLow条件をかける
(1)DITG 外部AD変換スタート制御
DITGを1にすると、汎用デジタル入力(IN1)のLow条件とAD変換スタート外部入力(EXTRG IN)の入力
で、外部AD変換スタートを許可します。IN1がLowでないと、外部AD変換スタートが有効になりま
せん。
(2)EINT,ETRG 極性反転制御
EINT:外部割り込み入力(EXINT IN)の極性を設定します。
ETRG:AD変換スタート外部入力(EXTRG IN)の極性を設定します。
●タイマAD変換スタート制御(ADR+1:出力)
D7 D6 D5 D4 D3 D2 D1 D0
- - - - - - TMST -
0 タイマスタート禁止
1 タイマスタート許可
(1)TMST タイマAD変換スタート制御
タイマ(カウンタ #1)出力によるAD変換スタートを許可します。タイマによるAD変換スタートと
AD変換スタート外部入力(EXTRG IN)による外部AD変換スタートはOR条件です。
初版 14
AZI-3118
●シングルエンド/差動入力切り換えおよび、ADC入力仕様切り換え
D7 D6 D5 D4 D3 D2 D1 D0
- - - B/U SD3 SD2 SD1 SD0
SD3 SD2 SD1 SD0 内 容
0 0 0 0 シングルエンド入力
0 0 0 1 差動入力
0 0 1 0 GND(0V)入力
0 0 1 1 REF(+5V)入力
0 1 0 0 REF(-5V)入力
0 ユニポーラ
1 バイポーラ
本ボードは、入力仕様の切り換えをリードリレーにより行っています。
このため、入力仕様切り換えコマンド(ADR+2)発行後すぐにAD変換をスタートさせた場合、
正確なデータが得られないことがあります。(入力仕様の切り換えが終了していないため)こ
のような場合は、入力仕様切り換えコマンド発行後、ウェイトをかけて(1msec以上)入力仕
様切り換えの終了を待つようにしてください。
初版 15
AZI-3118
■ AD変換データの入力方法
CH1~16のAD変換されたデータを、datに格納し表示します。