• ベストアンサー

A/Dボードの一般的なポートアサインの繋げ方を教えて下さい

 8Ch,16bitのA/Dボードがあるのですが、これを用いプログラムを組んでアナログデータを取得したいと思います。ADボードを初めて使うものですからどことどこを繋げばよいかよく解りません。使用しているボードは68ピンです。CHとGNDを繋げばとりあえずデータ取得出来ますか。しろうとなものでよろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • don_cha
  • ベストアンサー率34% (139/407)
回答No.1

GNDとChをショートすれば0vのデータを取ることが可能です。(ショートしないと不定なデータになることが多い) また、データを取らないChも一応はショートしておく事をお勧めします。(使用するChにノイズが乗ったりする事がある)

bottan
質問者

お礼

返答遅くなりました。ショートしてもノイズが乗ってしまうのですが、ADボードの宿命なのですね。ありがとうございました。

関連するQ&A

  • d/Aコンバータ(ad5445)ゲインの増加について質問

                   5V             GND Vdd|              | ーーーーー|        20kΩ  Rfb    |ーーーーーーーー|        | |          | D/A   |  ̄      62KΩ コンバータ| ─c        |         | |         |         | |  ____     | Iout1  |ーーー|- |_|___0~20v出したい  Iout2  |ーーー|+ | ____| |  -- Vr|     |   ↑ ef|    ーー  オペアンプ   |   GND       |   15KΩ   |   |   Vin このような回路でデジタル信号をアナログ信号に変換、増幅したいと思っているのですが、 1.Vinの値がわかりません。ここは5vでよいのでしょうか? 2.この接続であってるのでしょうか? d/AコンバータはAD5445を使用 オペアンプはJRCの3404AD デジタル信号は11bit 回路的にはAD5445のデータシートの18Pにあるゲインの増加になります。

  • 3048fマイコンでのA/D変換について

    マイコン初心者ですが今3048fマイコンを使ってA/D変換をしようとしているんですが、うまくいかないので教えて頂きたいです。 プログラムは下の通りです。 #include <3048.h> /* メイン関数 *****************************************/ void main(void){ int ad_data; P1.DDR = 0xff; /*port1出力に設定 表示LED */ P4.DDR = 0x00; /*port4入力に設定 操作用sw1~4 */ P4.PCR.BYTE = 0xff; /*port4プルアップon */ AD.ADCSR.BYTE = 0x33; /* SCAN MODE / CH0~3  */ while(AD.ADCSR.BIT.ADF == 0){} /* 4CH分の変換終了を待つ */ while(1){ if(P4.DR.BIT.B4 == 0){ /* sw1の時 */ ad_data = AD.ADDRA>>8; } else if(P4.DR.BIT.B5 == 0){ /* sw2の時 */ ad_data = AD.ADDRB>>8; } else if(P4.DR.BIT.B6 == 0){ /* sw3の時 */ ad_data = AD.ADDRC>>8; } else if(P4.DR.BIT.B7 == 0){ /* sw4の時 */ ad_data = AD.ADDRD>>8; } P1.DR.BYTE = ad_data & 0xFF; /*上位8bit分だけ表示させる */ } } このように4チャンネル分の0~5vのアナログ信号をスキャンモードでA/D変換し、それぞれ対応したスイッチを押すことによって現在どのくらいの電圧が来ているかLEDに2進数で表示させようとしています。しかしsw1とsw2、sw3とsw4がそれぞれ同じ値を表示しています。例えば、sw1を押したらADDRAの値が表示されますが、sw2を押しても同じADDRAの値が表示されます。またsw3とsw4も同じでどちらを押してもADDRCの値が表示されます。 4チャンネル分を同時にA/D変換することは元々出来ないのでしょうか?いろいろ調べてはいますが理由が分かりせん・・・ADDRA=ADDRB、でADDRC=ADDRDなのでしょうか?分かりにくいとは思いますが教えて頂けると幸いです。よろしくお願いいたします。

  • A/D変換、D/A変換の分解能について

    A/D変換、D/A変換の分解能についてお伺いしたいことがあります。 例えば、あるA/D変換器の分解能が8bitで、出力が±10Vである場合には、 入力のアナログ信号が、20V/2^8 = 0.078125 V 変化すると出力が1段階反応することになる、 つまり分解能が0.078125Vってことですよね?違ってたらすいません。 私がわからないのは、D/A変換器の分解能についてなんです。 D/A変換器の分解能ってのはどういう考え方なのですか? D/Aですから、元のデジタル信号をアナログに変換するわけで、 その分解能が8bitとか書いてある場合にはどういう考え方するのでしょう? 教えてください。

  • A/D変換器の製作について

    A/D変換器を自作することになったのですが電気関係の素人の自分では何から手を付けて良いのか判りません。 作るにあたってADチップを使うことにしていますがそれ以外は決まっていません。 そこで、A/D変換器の作り方教えて貰えないでしょうか?もしくは電気の素人でもA/D変換器が作ることができる本もしくは、ホームページを教えて貰えないでしょうか

  • H8/3048 マイコンボードについて

    初心者の質問ですみません。 今、H8/3048のマイコンを使っていろいろやってみようと思っています。 マザーボードにP1の出力をLEDで表示できるような回路を組み、スイッチを押すとLEDを光らせるようなプログラムを作成し、実際に光らせることはできたのですが、A/D変換機能が使えません。 プログラムはネット上のサンプルプログラムを参考にしたので間違ってはいないと思うのですが、うまく変換されません。 入力電圧はきちんとAN0に入ってますし、ICやソケット部も拡大鏡で確認しましたがショートしている様子もありません。 これは故障してしまったのでしょうか? 何かの拍子に何処かがショートしてAD変換機能のみが壊れるというような事はあるのでしょうか? 非常に困っています。 どなたか回答よろしくお願いいたします。 ちなみにこのようなプログラムです。 #include <3048.h> void main(void){ int ad_data; P1.DDR = 0xff; P4.DDR = 0x00; P4.PCR.BYTE = 0xff; AD.ADDRA = 0; P1.DR.BYTE = 0xff; AD.ADCSR.BYTE = 0x33; while(AD.ADCSR.BIT.ADF == 0){} while(1){ if(P4.DR.BIT.B4 == 0){ ad_data = AD.ADDRA>>8; } P1.DR.BYTE = ad_data & 0xFF; } }

  • マザーボードのUSB信号ピン接続

    マザーボードのUSB信号ピン接続 初めて自作パソコンを組み立てているのですが、USB信号ピンの接続が分かりません。データの+-の信号を送るためのピンを接続したいのですが、マザーボードの説明書には、USB D X- USB DY- USB DX+ USB DY- というように書かれています。ですが、PCケースの説明書には、DATA+(データの+信号) DATA-(データの-信号)というように掛かれています。どのピンをどこに挿せば良いのでしょうか? 補足ギガバイトのga-ma785gt-ud3h rev.1.0というマザーボードで、ケースはオウルテックのOWL-PCCG-08というものです。ピンは、合計八本あり、それぞれ全てバラバラになっています。電源とGNDは分かりましたが、データのとこだけ分かりません。

  • 自作PCのフロントUSBのマザーボードへの接続方法

    フロントUSBのマザーボードへの接続に困っています。 まず、マザーボードには10ピンあって、それぞれ、VCC,VCC,USB0+,USB1-,USB0+,USB1-,GND,GND,Key,USBOC です。一方、ケースについていたUSBのコネクタはUSB V+,USB D+,USB D-,GNDの4つで、それぞればらばらです。この4つのコネクタをマザーボードのどのピンに差し込めばよいのかわからず困っています。教えてください。 ちなみにマザーボードはMSIの865GM3-LSです。

  • I/Oボードについて

    在、研究でi/oボード及びAD/DAボードを用いて電源の電流値を制御いようとしています。(使用している言語はC++) しかし、この研究の前任者とお会いしたことがなく、引き継ぎ作業が不十分で、これまで制御に携わったことがない私にとって取説等を呼んでも何が何だかさっぱりわかりません。 そこで、以下のことを質問させて頂きます。 ・I/Oボードは、端的に述べるとどういう役割を担っているのでしょうか?ちなみに、私が使うボードは1chタイプのシリアルI/Oボードです。 ・アナログ入力とアナログ出力の違いがよくわかりません。どちらがDAでどちらがADの信号でしょうか? ・関連事項でわかりやすい図書やサイト等がございますでしょうか? 初歩すぎる質問で大変申し訳ありませんが、わかる範囲でかまいませんので、ご回答よろしくお願いします。

  • I/Oボードについて

    現在、研究でi/oボード及びAD/DAボードを用いて電源の電流値を制御いようとしています。(使用している言語はC++) しかし、この研究の前任者とお会いしたことがなく、引き継ぎ作業が不十分で、これまで制御に携わったことがない私にとって取説等を呼んでも何が何だかさっぱりわかりません。 そこで、以下のことを質問させて頂きます。 ・I/Oボードは、端的に述べるとどういう役割を担っているのでしょうか?ちなみに、私が使うボードは1chタイプのシリアルI/Oボードです。 ・アナログ入力とアナログ出力の違いがよくわかりません。どちらがDAでどちらがADの信号でしょうか? ・関連事項でわかりやすい図書やサイト等がございますでしょうか? 初歩すぎる質問で大変申し訳ありませんが、わかる範囲でかまいませんので、ご回答よろしくお願いします。

  • A/D変換プログラムのクラス設計について

    クラス設計について教えていただければと。 A/D変換を行い結果を表示するプログラムを作ろうと思っています。 環境は、.Net(VB or C#)を想定しています。 通常、A/D変換を行うボードは、1枚について8チャンネル、もしくは16チャンネルのデータを一括で収集できます。 入力するアナログ電圧は、ボード単位で決まっています。(例えば0~5V) A/D変換後の8チャンネルそれぞれには、名称やスケール変換するためのいくつかの情報を保持しなければなりません。 このような場合、クラス設計は、どのような形がベターなのでしょうか? チャンネルを構成するメンバ(チャンネル名称、スケール変換係数)だけのクラスを作り、これをA/D変換ボードクラスの中に配列で取り込んでしまう形がよいのか、それともA/D変換ボードクラスの中にチャンネル情報の構造体配列を作って収めてしまうのが良いのか、イマイチ良くわからないのです。 そんなやり方ではなく、違う考え方があれば、それについても教えていただければと思います。

専門家に質問してみよう