PI-32L(PCI)H

Contec PI-32L(PCI)H 取扱説明書

  • こんにちは!私はコンテック社のデジタル入出力ボードに関するテクニカルリファレンスを読みました。このドキュメントには、PIO-16/16x(PCI)Hシリーズ、DIO-1616x-PEシリーズなどのボードのI/Oポート割り当て、レジスタマップ、操作手順などが詳細に説明されています。これらのボードの機能や使用方法についてご質問がありましたら、お気軽にお尋ねください。
  • Vendor IDとDevice IDはどこで確認できますか?
    I/Oポートのビット割り付けに関する情報はどのセクションにありますか?
    MS-DOS環境でリソースを取得するにはどうすれば良いですか?
    本資料はどのような状況で使用しますか?
    グループとはどういう意味ですか?
テクニカルリファレンス
PCI
対応
絶縁型デジタル入出力ボード
絶縁型デジタル入力ボード
絶縁型デジタル出力ボード
PIO-16/16L(PCI)H PI-32L(PCI)H PO-32L(PCI)H
絶縁型デジタル入出力ボード
絶縁型デジタル入力ボード
絶縁型デジタル出力ボード
(
電源内蔵
) (
電源内蔵
) (
電源内蔵
)
PIO-16/16B(PCI)H PI-32B(PCI)H PO-32B(PCI)H
絶縁型逆コモンタイプ
高電圧用無極性タイプ
絶縁型デジタル入出力ボード
デジタル入出力ボード
絶縁型デジタル入出力ボード
PIO-16/16H(PCI)H PIO-16/16RL(PCI)H PIO-16/16RY(PCI)
絶縁型デジタル入出力ボード
高速絶縁型
TTL
レベル
絶縁型デジタル入出力ボード
(
電源内蔵
)
デジタル入出力ボード
PIO-16/16L(LPCI)H PIO-16/16B(LPCI)H PIO-16/16TB(PCI)H
非絶縁型デジタル入出力ボード
絶縁型デジタル入出力カード
PIO-16/16T(LPCI)H PIO-16/16L(CB)H
非絶縁型デジタル入出力ボード
非絶縁型デジタル入力ボード
非絶縁型デジタル出力ボード
PIO-16/16T(PCI)H DI-32T2-PCI DO-32T2-PCI
PCI-Express
対応
絶縁型デジタル入出力ボード
絶縁型デジタル入力ボード
縁型デジタル出力ボード
DIO-1616L-PE DI-32L-PE DO-32L-PE
絶縁型デジタル入出力ボード
絶縁型デジタル入力ボード
絶縁型デジタル出力ボード
(
電源内蔵
) (
電源内蔵
) (
電源内蔵
)
DIO-1616B-PE DI-32B-PE DO-32B-PE
高速絶縁型
TTL
レベル
絶縁型逆コモンタイプ
デジタル入出力ボード
絶縁型デジタル入出力ボード
デジタル入出力ボード
DIO-1616TB-PE DIO-1616H-PE DIO-1616RL-PE
非絶縁型デジタル入出力ボード
非絶縁型デジタル入力ボード
非絶縁型デジタル出力ボード
DIO-1616T-PE DI-32T-PE DO-32T-PE
非縁型デジタル入出力ボード
DIO-1616T-LPE
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
2/13
2008 2 5
目次
1. はじめに.......................................................................................................................3
1.1. 本資料中の語句について ..................................................................................3
2. 製品固有情報...............................................................................................................4
2.1. Vendor IDDevice ID ..........................................................................................4
2.2. リソースの取得方法 ..........................................................................................4
3. I/Oポートのビット割り付け .....................................................................................5
3.1. PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H,
DIO-1616x-PE, DIO-1616T-LPE I/Oアドレスマップ一覧 ..................5
3.2. PI-32x(PCI)H, DI-32T2-PCI, DI-32x-PE I/Oアドレスマップ一覧...................7
3.3. PO-32x(PCI)H, DO-32T2-PCI, DO-32x-PE I/Oアドレスマップ一覧..............9
4. 操作手順.....................................................................................................................10
4.1. データ入出力機能 ............................................................................................10
4.1.1. データの入力 ............................................................................................10
4.1.2. データの出力 ............................................................................................10
4.1.3. 出力データのモニタ ................................................................................10
4.2. デジタルフィルタ ............................................................................................11
4.3. 割り込みコントロール機能 ............................................................................12
4.3.1. 割り込みの禁止・許可 ............................................................................12
4.3.2. 割り込みのエッジ選択 ............................................................................12
4.3.3. 割り込みステータスと割り込み信号のクリア ....................................12
5. 補足.............................................................................................................................13
5.1. オンボードシステムタイマ機能 ....................................................................13
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
3/13
2008 2 5
1. はじめに
本資料では、I/O ポートのビット割り付けおよび各ビットの定義についての説明をしています
当社サポートソフトウェアを使用しない場合や、Windows 環境以外でアプリケーションを作成する場
合に参照してください。
1.1. 本資料中の語句について
以下にご注意ください。
グループ:
ボード/カードへの I/O アクセスは、最 8 ビット単位で行います。本資料では、入出力を 8 ビット単
位で 1 グループと表現しています。
ドライバライブラリ API-PAC(W32)のヘルプに記載されているグループとは異なります。
I/O ベースアドレス:
ボード/カードに割り当てられた I/O リソース(I/O の範囲)の最も小さい値で、先頭 I/O アドレスと同じ
意味です。一般的にボード/カードの I/O アドレスとは、このアドレスを指します。
PIO-16/16x(PCI)H シリーズ( 以下 PIO-16/16x(PCI)H ):
PIO-16/16L(PCI)H, PIO-16/16RY(PCI), PIO-16/16B(PCI)H, PIO-16/16H(PCI)H, PIO-16/16RL(PCI)H,
PIO-16/16T(PCI)H, PIO-16/16TB(PCI)H のことを示します。
PIO-16/16x(LPCI)H シリーズ( 以下 PIO-16/16x(LPCI)H ) :
PIO-16/16L(LPCI)H, PIO-16/16B(LPCI)H, PIO-16/16T(LPCI)H のことを示します。
PI-32x(PCI)H シリーズ( 以下 PI-32x(PCI)H ) :
PI-32L(PCI)H, PI-32B(PCI)H のことを示します。
PO-32x(PCI)H シリーズ( 以下 PO-32x(PCI)H ) :
PO-32L(PCI)H, PO-32B(PCI)H のことを示します。
DIO-1616x-PE シリーズ( 以下 DIO-1616x-PE ):
DIO-1616L-PE, DIO-1616T-PE, DIO-1616B-PE, DIO-1616TB-PE, DIO-1616H-PE, DIO-1616RL-PE のこと
を示します。
DI-32x-PE シリーズ( 以下 DI-32x-PE ) :
DI-32L-PE, DI-32B-PE, DI-32T-PE のことを示します。
DO-32x-PE
リーズ( 以下 DO-32x-PE ) :
DO-32L-PE, DO-32B-PE, DO-32T-PE のことを示します。
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
4/13
2008 2 5
2. 製品固有情報
2.1. Vendor IDDevice ID
各製品の固有情報は、以下のとおりです。
Vendor ID : 1221h
Device ID :
Board/Card Name Device ID Board/Card Name Device ID
PIO-16/16L(CB)H 8502h PIO-16/16L(LPCI)H A102h
PIO-16/16L(PCI)H 9182h PIO-16/16B(LPCI)H A112h
PI-32L(PCI)H 9192h PIO-16/16T(LPCI)H A122h
PO-32L(PCI)H 91A2h PIO-16/16H(PCI)H A132h
PIO-16/16RY(PCI) 91B2h PIO-16/16RL(PCI)H A152h
PIO-16/16B(PCI)H 91C2h PIO-16/16T(PCI)H B102h
PIO-32B(PCI)H 91D2h PIO-16/16TB(PCI)H B112h
PO-32B(PCI)H 91E2h DI-32T2-PCI B162h
DO-32T2-PCI B172h DIO-1616L-PE 8632h
DI-32L-PE 86D2h DO-32L-PE 86E2h
DIO-1616T-PE 8652h DIO-1616T-LPE 8612h
DIO-1616B-PE 8672h DIO-1616TB-PE 9602h
DI-32B-PE 9662h DO-32B-PE 9672h
DIO-1616H-PE 9682h DIO-1616RL-PE 96A2h
DI-32T-PE 9642h DO-32T-PE 9652h
Revision ID : ボード ID の設定スイッチ(SW1)の状態。00h - 0Fh の範囲で反映されます。
Revision ID は、ボードのみの設定です。
上記以外は、PCI ローカルバス仕様<PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PI-32x(PCI)H,
PO-32x(PCI)H, DI-32T2-PCI, DO-32T2-PCI>/カードバス仕様<PIO-16/16L(CB)H> /
PCI-Express 仕様<DIO-1616x-PE, DIO-1616T-LPE, DI-32x-PE, DO-32x-PE>に準拠します。
2.2. リソースの取得方法
MS-DOS 環境で PCI バス対応ボードのリソース(I/O ベースアドレス、割り込みレベル、メモリベース
アドレス)を取得するためのライブラリを、ホームページ(http://www.contec.co.jp)で提供しています。
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
5/13
2008 2 5
3. I/Oポートのビット割り付け
3.1. PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H,
DIO-1616x-PE, DIO-1616T-LPE I/Oアドレスマップ一覧
PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H,
DIO-1616x-PE, DIO-1616T-LPE 入力ポート
I/Oベース D7 D6 D5 D4 D3 D2 D1 D0
アドレス +0h 入力グループ 0
I-07 I-06 I-05 I-04 I-03 I-02 I-01 I-00
+1h 入力グループ 1
I-17 I-16 I-15 I-14 I-13 I-12 I-11 I-10
+2h 入力グループ 2
O-27 O-26 O-25 O-24 O-23 O-22 O-21 O-20
+3h 入力グループ 3
O-37 O-36 O-35 O-34 O-33 O-32 O-31 O-30
+4h
|
+8h
(使用不可)
+9h デジタルフィルタ設定時間
0 0 0 ST4 ST3 ST2 ST1 ST0
+Ah
|
+Fh
(使用不可)
+10h 割り込みステータス 0
I-07 Status I-06 Status I-05 Status I-04 Status I-03 Status I-02 Status I-01 Status I-00 Status
+11h 割り込みステータス 1
I-17 Status I-16 Status I-15 Status I-14 Status I-13 Status I-12 Status I-11 Status I-10 Status
+12h
(使用不可)
+13h
(使用不可)
+14h 割り込みエッジ選択 0
I-07 Edge I-06 Edge I-05 Edge I-04 Edge I-03 Edge I-02 Edge I-01 Edge I-00 Edge
+15h 割り込みエッジ選択 1
I-17 Edge I-16 Edge I-15 Edge I-14 Edge I-13 Edge I-12 Edge I-11 Edge I-10 Edge
+16h
(使用不可)
+17h
(使用不可)
+18h
|
+1Bh
(使用不可)
+1Ch オンボードシステムタイマ・カウントデータ
Data-07 Data-06 Data-05 Data-04 Data-03 Data-02 Data-01 Data-00
+1Dh オンボードシステムタイマ・カウントデータ
Data-15 Data-14 Data-13 Data-12 Data-11 Data-10 Data-09 Data-08
+1Eh オンボードシステムタイマ・カウントデータ
Data-23 Data-22 Data-21 Data-20 Data-19 Data-18 Data-17 Data-16
+1Fh オンボードシステムタイマ・カウントデータ
Data-31 Data-30 Data-29 Data-28 Data-27 Data-26 Data-25 Data-24
注意:
I-xx は入力信号であり、O-xx 出力データのモニタ用(リードバック)です。
バイトアクセス、ワードアクセス(2 バイト)、ダブルワードアクセス(4 バイト)が可能です。
ワードアクセスするときは 2 の倍数の I/O アドレスから、ダブルワードアクセスするときは 4 の倍数の I/O アドレスから入力して
ください。
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
6/13
2008 2 5
PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H,
DIO-1616x-PE, DIO-1616T-LPE 出力ポート
I/Oベース D7 D6 D5 D4 D3 D2 D1 D0
アドレス +0h
(使用不可)
+1h
(使用不可)
+2h 出力グループ 2
O-27 O-26 O-25 O-24 O-23 O-22 O-21 O-20
+3h 出力グループ 3
O-37 O-36 O-35 O-34 O-33 O-32 O-31 O-30
+4h
|
+8h
(使用不可)
+9h デジタルフィルタ設定時間
0 0 0 ST4 ST3 ST2 ST1 ST0
+Ah
|
+Fh
(使用不可)
+10h 割り込みマスク 0
I-07 Mask I-06 Mask I-05 Mask I-04 Mask I-03 Mask I-02 Mask I-01 Mask I-00 Mask
+11h 割り込みマスク 1
I-17 Mask I-16 Mask I-15 Mask I-14 Mask I-13 Mask I-12 Mask I-11 Mask I-10 Mask
+12h
+13h
(使用不可)
+14h 割り込みエッジ選択 0
I-07 Edge I-06 Edge I-05 Edge I-04 Edge I-03 Edge I-02 Edge I-01 Edge I-00 Edge
+15h 割り込みエッジ選択 1
I-17 Edge I-16 Edge I-15 Edge I-14 Edge I-13 Edge I-12 Edge I-11 Edge I-10 Edge
+16h
(使用不可)
+17h
(使用不可)
+18h
|
+1Fh
(使用不可)
注意:
O-xx は出力信号です。
バイトアクセス、ワードアクセス(2 バイト)、ダブルワードアクセス(4 バイト)が可能です。
ワードアクセスするときは 2 の倍数の I/O アドレスに、ダブルワードアクセスするとき 4 の倍数の I/O アドレスに出力してく
ださい。
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
7/13
2008 2 5
3.2. PI-32x(PCI)H, DI-32T2-PCI, DI-32x-PE I/Oアドレスマップ一覧
PI-32x(PCI)H, DI-32T2-PCI, DI-32L-PE,DI-32B-PE, DI-32T-PE 入力ポート
I/Oベース D7 D6 D5 D4 D3 D2 D1 D0
アドレス +0h 入力グループ 0
I-07 I-06 I-05 I-04 I-03 I-02 I-01 I-00
+1h 入力グループ 1
I-17 I-16 I-15 I-14 I-13 I-12 I-11 I-10
+2h 入力グループ 2
I-27 I-26 I-25 I-24 I-23 I-22 I-21 I-20
+3h 入力グループ 3
I-37 I-36 I-35 I-34 I-33 I-32 I-31 I-30
+4h
|
+8h
(使用不可)
+9h デジタルフィルタ設定時間
0 0 0 ST4 ST3 ST2 ST1 ST0
+Ah
|
+Fh
(使用不可)
+10h 割り込みステータス 0
I-07 Status I-06 Status I-05 Status I-04 Status I-03 Status I-02 Status I-01 Status I-00 Status
+11h 割り込みステータス 1
I-17 Status I-16 Status I-15 Status I-14 Status I-13 Status I-12 Status I-11 Status I-10 Status
+12h 割り込みステータス 2
I-27 Status I-26 Status I-25 Status I-24 Status I-23 Status I-22 Status I-21 Status I-20 Status
+13h 割り込みステータス 3
I-37 Status I-36 Status I-35 Status I-34 Status I-33 Status I-32 Status I-31 Status I-30 Status
+14h 割り込みエッジ選択 0
I-07 Edge I-06 Edge I-05 Edge I-04 Edge I-03 Edge I-02 Edge I-01 Edge I-00 Edge
+15h 割り込みエッジ選択 1
I-17 Edge I-16 Edge I-15 Edge I-14 Edge I-13 Edge I-12 Edge I-11 Edge I-10 Edge
+16h 割り込みエッジ選択 2
I-27 Edge I-26 Edge I-25 Edge I-24 Edge I-23 Edge I-22 Edge I-21 Edge I-20 Edge
+17h 割り込みエッジ選択 3
I-37 Edge I-36 Edge I-35 Edge I-34 Edge I-33 Edge I-32 Edge I-31 Edge I-30 Edge
+18h
|
+1Bh
(使用不可)
+1Ch オンボードシステムタイマ・カウントデータ
Data-07 Data-06 Data-05 Data-04 Data-03 Data-02 Data-01 Data-00
+1Dh オンボードシステムタイマ・カウントデータ
Data-15 Data-14 Data-13 Data-12 Data-11 Data-10 Data-09 Data-08
+1Eh オンボードシステムタイマ・カウントデータ
Data-23 Data-22 Data-21 Data-20 Data-19 Data-18 Data-17 Data-16
+1Fh オンボードシステムタイマ・カウントデータ
Data-31 Data-30 Data-29 Data-28 Data-27 Data-26 Data-25 Data-24
注意:
I-xx は入力信号です。
バイトアクセス、ワードアクセス(2 バイト)、ダブルワードアクセス(4 バイト)が可能です。
ワードアクセスするときは 2 の倍数の I/O アドレスから、ダブルワードアクセスするときは 4 の倍数の I/O アドレスから入力して
ください。
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
8/13
2008 2 5
PI-32x(PCI)H, DI-32T2-PCI, DI-32x-PE 出力ポート
I/Oベース D7 D6 D5 D4 D3 D2 D1 D0
アドレス +0h
(使用不可)
+1h
(使用不可)
+2h
(使用不可)
+3h
(使用不可)
+4h
+8h
(使用不可)
+9h デジタルフィルタ設定時間
0 0 0 ST4 ST3 ST2 ST1 ST0
+Ah
|
+Fh
(使用不可)
+10h 割り込みマスク 0
I-07 Mask I-06 Mask I-05 Mask I-04 Mask I-03 Mask I-02 Mask I-01 Mask I-00 Mask
+11h 割り込みマスク 1
I-17 Mask I-16 Mask I-15 Mask I-14 Mask I-13 Mask I-12 Mask I-11 Mask I-10 Mask
+12h 割り込みマスク 2
I-27 Mask I-26 Mask I-25 Mask I-24 Mask I-23 Mask I-22 Mask I-21 Mask I-20 Mask
+13h 割り込みマスク 3
I-37 Mask I-36 Mask I-35 Mask I-34 Mask I-33 Mask I-32 Mask I-31 Mask I-30 Mask
+14h 割り込みエッジ選択 0
I-07 Edge I-06 Edge I-05 Edge I-04 Edge I-03 Edge I-02 Edge I-01 Edge I-00 Edge
+15h 割り込みエッジ選択 1
I-17 Edge I-16 Edge I-15 Edge I-14 Edge I-13 Edge I-12 Edge I-11 Edge I-10 Edge
+16h 割り込みエッジ選択 2
I-27 Edge I-26 Edge I-25 Edge I-24 Edge I-23 Edge I-22 Edge I-21 Edge I-20 Edge
+17h 割り込みエッジ選択 3
I-37 Edge I-36 Edge I-35 Edge I-34 Edge I-33 Edge I-32 Edge I-31 Edge I-30 Edge
+18h
|
+1Fh
(使用不可)
注意:
バイトアクセス、ワードアクセス(2 バイト)、ダブルワードアクセス(4 バイト)が可能です。
ワードアクセスするときは 2 の倍数の I/O アドレスに、ダブルワードアクセスするとき 4 の倍数の I/O アドレスに出力してく
ださい。
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
9/13
2008 2 5
3.3. PO-32x(PCI)H, DO-32T2-PCI, DO-32x-PE I/Oアドレスマップ一覧
PO-32x(PCI)H, DO-32T2-PCI, DO-32x-PE 入力ポート
I/Oベース D7 D6 D5 D4 D3 D2 D1 D0
アドレス +0h 入力グループ 0
O-07 O-06 O-05 O-04 O-03 O-02 O-01 O-00
+1h 入力グループ 1
O-17 O-16 O-15 O-14 O-13 O-12 O-11 O-10
+2h 入力グループ 2
O-27 O-26 O-25 O-24 O-23 O-22 O-21 O-20
+3h 入力グループ 3
O-37 O-36 O-35 O-34 O-33 O-32 O-31 O-30
+4h
|
+1Bh
(使用不可)
+1Ch オンボードシステムタイマ・カウントデータ
Data-07 Data-06 Data-05 Data-04 Data-03 Data-02 Data-01 Data-00
+1Dh オンボードシステムタイマ・カウントデータ
Data-15 Data-14 Data-13 Data-12 Data-11 Data-10 Data-09 Data-08
+1Eh オンボードシステムタイマ・カウントデータ
Data-23 Data-22 Data-21 Data-20 Data-19 Data-18 Data-17 Data-16
+1Fh オンボードシステムタイマ・カウントデータ
Data-31 Data-30 Data-29 Data-28 Data-27 Data-26 Data-25 Data-24
注意:
O-xx は出力データのモニタ用(リードバック)です。
バイトアクセス、ワードアクセス(2 バイト)、ダブルワードアクセス(4 バイト)が可能です。
ワードアクセスするときは 2 の倍数の I/O アドレスから、ダブルワードアクセスするときは 4 の倍数の I/O アドレスから入力して
ください。
PO-32x(PCI)H, DO-32T2-PCI, DO-32x-PE 出力ポート
I/Oベース D7 D6 D5 D4 D3 D2 D1 D0
アドレス +0h 出力グループ 0
O-07 O-06 O-05 O-04 O-03 O-02 O-01 O-00
+1h 出力グループ 1
O-17 O-16 O-15 O-14 O-13 O-12 O-11 O-10
+2h 出力グループ 2
O-27 O-26 O-25 O-24 O-23 O-22 O-21 O-20
+3h 出力グループ 3
O-37 O-36 O-35 O-34 O-33 O-32 O-31 O-30
+4h
|
+1Fh
(使用不可)
注意:
O-xx は出力信号です。
バイトアクセス、ワードアクセス(2 バイト)、ダブルワードアクセス(4 バイト)が可能です。
ワードアクセスするときは 2 の倍数の I/O アドレスに、ダブルワードアクセスするとき 4 の倍数の I/O アドレスに出力してく
ださい。
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
10/13
2008 2 5
4. 操作手順
製品添付の説明書の「第 4 機能の説明」をあわせて参照してください。
制御例は C 言語スタイルで記述しています。OS/開発言語にあった形に変更してご使用ください。
4.1. データ入出力機能
4.1.1. データの入力
入力ポート「I/O ベースアドレス+0h - +1h <PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H,
DIO-1616x-PE, DIO-1616T-LPE>または+0h - +3h <PI-32x(PCI)H, DI-32T2-PCI, DI-32x-PE>を利用して、
データを入力します。
入力データが「ON」のとき、該当するビットは「1」になります。
逆に入力データが「OFF」のときは、該当するビットは「0」になります。
<プログラム例>
I-07 が「ON」かどうかを調べる場合は、次のようになります。ただし、ボード/カードの I/O ベースア
ドレスは、port です。
data_in=inp(port);
while(data_in & 0x80)
4.1.2. データの出力
出力ポート「I/O ベースアドレス+2h - +3h <PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H,
DIO-1616x-PE, DIO-1616T-LPE>、または+0h - +3h <PO-32x(PCI)H, DO-32T2-PCI, DO-32x-PE>」を利用
して、データを出力します。
該当するビットに「1」を出力すると、対応するトランジスタが「ON」になります。
逆に該当するビットに「0」を出力すると、対応するトランジスタは「OFF」になります。
<プログラム例>
O-27 のみを「ON」にする場合は、次のようになります。ただし、ボード/カードの I/O ベースアドレ
スは、port です。
outp(port+0x02,0x80);
パルス出力する場合には、ハードウェア応答時間以上の待ち時間を入れてください。
outp(port+0x02,0x80);
<200μsec 以上の待ち時間を入れる>
outp(port+0x02,0x00);
4.1.3. 出力データのモニタ
PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H, DIO-1616x-PE, DIO-1616T-LPE, PO-32x(PCI)H,
DO-32T2-PCI, DO-32x-PE は、現在出力されているデータの状態を、出力データに影響を与えることな
く読み込むことができます。
データを出力した出力ポートと同 I/O アドレスから入力してください。
<プログラム例>
I/O ベースアドレス+2 ポートに出力したデータをモニタする場合、次のようになります。ただし、
ボード/カードの I/O ベースアドレスは、port です。
outp(port+0x02,0xaa);
m_data=inp(port+0x02);
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
11/13
2008 2 5
4.2. デジタルフィルタ
PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H, DIO-1616x-PE, DIO-1616T-LPE, PI-32x(PCI)H,
DI-32T2-PCI, DI-32x-PE は、この機能を使用すると、すべての入力端子にデジタルフィルタをかけるこ
とができます。このため、入力信号のノイズやチャタリングを防止することができます。
<設定プログラム例>
設定データを「デジタルフィルタ設定時間」ポートに出力してください。
デジタルフィルタの時間を 1.0msec に設定する場合、次のようになります。ただし、ボード/カードの
I/O ベースアドレスは、port です。
outp(port+0x09, 0x0d);
<設定確認プログラム例>
「デジタルフィルタ設定時間」ポートを入力すると、設定されているデータ(ST4 - ST0)が確認できます。
set_time=inp(port+0x09);
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
12/13
2008 2 5
4.3. 割り込みコントロール機能
PIO-16/16x(PCI)H, PIO-16/16x(LPCI)H, PIO-16/16L(CB)H, DIO-1616x-PE, DIO-1616T-LPE, PI-32x(PCI)H,
DI-32T2-PCI, DI-32x-PE は、入力信号のすべてを割り込み要求信号として使用することができます。
入力信号が High から Low に変化したとき、または、Low から High に変化したときに、パソコンに対
して割り込み要求信号を発生させることができます。
なお、デジタルフィルタ(前述)の使用時には、フィルタ通過後の入力信号により割り込み要求を発生し
ます。
4.3.1. 割り込みの禁止・許可
割り込みマスクビットにより、各ビットごとに割り込みの禁止・許可を設定できます。
割り込みマスクビットに 1 を設定すると、対応するビットの入力信号からの割り込み発生は禁止に
なります。
割り込みを発生させたいときは、対応する割り込みマスクビットに 0 を出力して割り込みを許可し
ます。
4.3.2. 割り込みのエッジ選択
割り込みエッジ選択ビットにより、1 ビットごとに割り込みを発生させる入力論理を設定できます。
割り込みエッジ選択ビットを 0 に設定すると、対応するビットの入力値の 0 から 1 への変化(入力信
号の High から Low への立ち下がり)により割り込みが発生します。
割り込みエッジ選択ビットを 1 に設定すると、対応するビットの入力値の 1 から 0 への変化(入力信
号の Low から High への立ち上がり)により割り込みが発生します。
<割り込み使用プログラム例>
I-00 の立ち下がりと、I-17 の立ち上がりで割り込みを発生させるには、次のようにします。ただし、
ボード/カードの I/O ベースアドレスは、port です。
outp(port+0x14,0x00); /* I-00 の割り込みエッジを立ち下がりに設定 */
outp(port+0x15,0x80); /* I-17 の割り込みエッジを立ち上がりに設定 */
outp(port+0x10,0xfe); /* I-00 Mask のクリア(I-00 の割り込みを許可) */
outp(port+0x11,0x7f); /* I-17 Mask のクリア(I-17 の割り込みを許可) */
:
:
outp(port+0x10,0xff); /* プログラム終了前に、全ての割り込みを禁止 */
outp(port+0x11,0xff);
4.3.3. 割り込みステータスと割り込み信号のクリア
どの入力信号ビットによって割り込みが要求されたのかを知るために、割り込みステータスビットが
あります。
割り込みステータスを入力すると、割り込み要求信号と割り込みステータスは自動的にクリアされま
す。
割り込み処理プログラムの中で必ず割り込みステータスポートを読み込んでください。
<割り込み処理プログラム例>
:
:
S1=inp(port+0x10); /*割り込み要因の確認、および、割り込み信号のクリア*/
S2=inp(port+0x11);
:
: /* 処理 */
:
テクニカルリファレンス <PIO-16/16x(PCI)H シリーズ, PIO-16/16x(LPCI)H シリーズ,
PIO-16/16L(CB)H, PI-32x(PCI)H シリーズ, PO-32x(PCI)H シリーズ, DI-32T2-PCI, DO-32T2-PCI,
DIO-1616x-PE シリーズ, DI-32x-PE シリーズ, DO-32x-PE シリーズ, DIO-1616T-LPE>
13/13
2008 2 5
5. 補足
ここでは、API-PAC(W32)でサポートしていないボード/カードの機能や、ボード/カードに関連する補
足情報を説明しています。
5.1. オンボードシステムタイマ機能
ボード/カード上に常時動作するアップカウンタを搭載しており、カウントデータを入力することで、
パソコン(Windows)のシステムタイマよりも短い間隔の時間を監視することができます。
アップカウンタは 4MHz(250nsec ステップ)のクロックで動作する 32 ビットバイナリカウンタで、
00000000h から順次カウントアップしていき、FFFFFFFFh になった後、再び 00000000h になり、この
操作を繰り返します。
アップカウンタは電源投入後から常に動作します。
時間との対応は、カウントデータの 1LSB 250nsec に対応します。最大値 FFFFFFFFh
1,073,741,823,750nsec ( 18 )に相当します。
カウントデータはタイマの動作に影響を与えずに入力することができます。
カウントデータの入力ポートの最下位アドレスへの入力命令を実行した時点で、カウントデータのラ
ッチを行い、そのときのデータが入力できます。
カウントデータの入力は、バイトアクセス、ワードアクセス、ダブルワードアクセスでの操作が可能
です。
<オンボードシステムタイマプログラム例 (ワードアクセス)>
現在のカウントデータを入力します。ただし、ボード/カードの I/O ベースアドレスは、port です。
dwLow = impw(port+0x1c); /* 下位カウントデータの入力 */
dwHigh = impw(port+0x1e); /* 上位カウントデータの入力 */
dwTim = (dwLow | ((dwHigh << 16) & 0xffff0000));
経過時間の計算方法
任意のタイミングで入力したカウントデータ dwTim1, dwTim2 から経過時間をμsec 単位で計算します。
(dwTim1:計測開始時のカウントデータ、dwTim2:計測停止時のカウントデータ、dwLap:経過時間[μsec])
if(dwTim2 >= dwTim1){
dwLap = (DWORD)((dwTim2 - dwTim1) >> 2); /* 結果をμsec 単位にする */
}
else{ /* カウントデータが F
FFFFFFFh から 00000000h の境界をまたぐ場合 */
dwLap = (DWORD)((0xffffffff - dwTim1 + dwTim2 + 1) >> 2);
}
以上
A-48-052
LYFE403
/