総合手引 | セクション 4 | オプション |
このボードは 8 つの 12 ビット A-D 入力チャネル、 2 つの 12 ビット D-A 出力チャネル、 3 つの 8 ビットデジタル I/O ポートを提供します。 また、デジタル I/O ポートとは別に、 National Instruments 社の SCXI バスの設定をサポートしていますが、 そのソフトウェアは現在は、ドライバの一部としてではなく、 外部プログラムとして提供されています。
入出力デバイス、モード、チャネルの選択は マイナ番号を通して行ないます。
8 ビットのマイナ番号の形式は UUSIDCCC で、以下のようになります。 UU: ボードユニット S: SCAN ビット (スキャン可) I: INTERVAL (インターバルサポート) D: 1: デジタル I/O, 0: アナログ I/O CCC: チャネルの選択 : アナログ: 入力: チャネルは AD0 から AD 7 に対応して 0 から 7 まで 出力: チャネルは 0 から 2 まで 0: D-A 0 1: D-A 1 2: チャネル 0 と 1 を交互にデジタル: 入力: チャネルは 0 から 2 まで 出力: チャネルは 0 から 2 まで
"sh MAKEDEV labpcaio" や "sh MAKEDEV labpcdio" を実行すると、 /dev/MAKEDEV スクリプトは基本的なアナログとデジタルのデバイスを 作成しますが、 INTERVAL や SCAN デバイスのためのデバイスエントリは作成しません。 SCAN デバイスは、自動的に全チャネルを 0 に向かって走査します。 (例えば /dev/ad7 に対する SCAN は AD7 から AD0 までのチャネルを読みだします) INTERVAL デバイスは、外部信号を待ち、そして、 選択されたチャネル番号から 0 までの全チャネルを 可能な限りの速さで読みだします。 これはハードウェアが実行し、 (この機能をオンにすることを除いて)ドライバはなにもしません。 センサが動かない時は LabPC+User's Manual や ソースコードを参照して下さい。
このドライバは複数の一般的なアナログ I/O ioctl 呼出しを サポートしています。 これらは sys/dataacq.h で定義されており、 他のデータ取得 (acquisition) ボードのデバイスドライバで 実装されているものと同じ意味です。
AD_MICRO_PERIOD_SET はサンプリングの間隔を マイクロ秒で表した long 値へのポインタを引数にとります。
AD_MICRO_PERIOD_GET は long 値へのポインタを引数にとり、 現在のサンプリング間隔をマイクロ秒で表した整数値を返します。
AD_NGAINS_GET は整数値へのポインタを引数にとり、 ボードがサポートする差分ゲイン設定値の個数を返します。 これは LabPC ボードでは 8 です。
AD_NCHANS_GET は整数値へのポインタを引数にとり、 ボードがサポートするチャネルの数を返します。 これは LabPC ボードでは 8 です。
AD_SUPPORTED_GAINS は NGAINS (AD_NGAINS_GET で取得した数) の長さの double 配列を返します。 これらはボードがサポートするゲインです。
AD_GAINS_SET は NCHAMS (AD_NCHANS_GET で取得した数) の長さの 整数配列を引数にとり、ボードのゲインを設定します。 これらは、サポートされているゲインの配列に対する、 各チャネルのゲインを指すインデックスです。
AD_GAINS_GET は NCHANS (AD_NCHANS_GET が返します) の長さの 整数配列を引数にとり、現在のボードのゲインを返します。
アナログ入力は、クロックによる変換モードでのみサポートされています。
サンプリングクロックは 15 Hz までしか下げられません。 もっと遅くするためには、 ドライバを修正して TCINTEN をサポートすることにより、 カウンタの連鎖により低いクロックレートを得ることが必要です。
クロックによる D-A 出力はサポートしていません。
デジタル I/O ポートを提供している 8255 は モード 0 (3 つの 8 ビットポート) でのみサポートされています。
LABPC ボードとは別に SCXI バスをサポートしています。 これはドライバの中にはなく、 デジタル入出力デバイスへアクセスするための 別のユーザプロセスです。 これについては dufault@hda.com に尋ねて下さい。
MAKEDEV は「基本的な」デバイスのみを作成します。 INTERVAL や SCAN デバイスは手動で作成しなければなりません。
INTERVAL デバイスはクロックレートを可能な限り高く設定します。 外部信号の後、できる限り素早く全チャネルをサンプリングするためです。 これはばかげた制限です。シンプルにクロックの設定を使用するべきです。
FreeBSD | LABPC (4) | April 26, 1995 |
総合手引 | セクション 4 | オプション |
このマニュアルページサービスについてのご意見は Ben Bullock にお知らせください。 Privacy policy.