1.はじめに
 24bitADコンバータDAC1220(ANALOG DEVICES製)を使用するため,
	 プログラムを作り動作確認をしたので紹介する。
 
2.AD7791の基本性能と回路構成
 (1)特徴
    ①ΔΣ24bitADコンバータ 
    ②3線式シリアル転送
    ③50Hzと60Hzを同時除去
    ④外部リファレンスが必要
    ⑤変換範囲(差動で±Vref):今回は2.5V
       出力データ:+2.5V=0xFFFFFF, 0V=0x800000, -2.5V=0x0
    ⑥1回計測の場合変換時間は標準で120msec必要(連続測定の場合は60msec)
 (2)回路図
     製品名:高精度電源 PS-GI0147 計測・IO回路(PS-GI0147-G07)
②この回路を3回路設けCLK,Di,Doは共通とし,/CSで識別する
/CS=Lowの時,信号ラインはアクティブとなり,Do=Lowで変換完了をチェックする
③3回路同時に/CS=Lowとし一斉変換スタートさせることが可能。
読出しは順次/CS=Lowとし,DoをチェックしLowならば読取する
④Vrefは温度係数1ppm(標準)のMAX6325(ANALOG DEVICES製)の2.5V
これにより入力信号は±2.5Vの値を扱う
3.データの送受信方法
 (1)レジスタ(CR)
   ①コミュニケーション・レジスタ
    すべてはこのレジスタの設定から始める
    次のレジスタの指定,読出or書込,連続モード,入力chを設定する
| bit | bit名 | 説明 | 
| CR7 | /WEN | 書込有効 0 | 
| CR6 | 0 | 必ず0書込 | 
| CR5-4 | RS1-RS0 | レジスタアドレス | 
| CR3 | R|/W | 読出,書込 | 
| CR2 | CREAD | 連続読出モード | 
| CR1-0 | CH1-CH0 | 入力ch選択 | 
変換完了,エラー情報の読取り。(使用していない)
③モード・レジスタ (コミュニケーションレジスタ:RS1,0=0,1)
連続変換/シングル変換の設定。
バッファモードの設定:バッファモードは入力回路をHiZにする。
☆☆☆ シングル変換モード設定が1回変換START指令となる ☆☆☆
④フィルタ・レジスタ (コミュニケーションレジスタ:RS1,0=1,0)
消費電流抑制のため低クロック化や,50/60Hzのフィルタ特性の選択(デフォルト値で使用)
⑤データ・レジスタ (コミュニケーションレジスタ:RS1,0=1,1)
 (2)送受信データ例
   ①デバイスのリセット:シリアル・クロックで32サイクル間Din=Highを送信する。
     /CS=Low → 0xFFFFFFFF送信 → /CS=High
   ②変換START指令:モード設定:シングル変換モード,バッファモードに変換STRT
     /CS=Low → 0x1082送信 → /CS=High
     (次レジスタ:モードレジスタの書込=0x10,モードレジスタ値=0x82)
     注)AD7791は3回路あり,START指令は3回路一括STARTさせた。
   ③データの読取:変換時間120msec必要(変換完了確認は,1回路ずつポーリング)
     変換完了のポーリングをしDo=Lowを検出したら,データを読む
     /CS=Low → Do=Lowチェック→ Do=High → /CS=High 次回確認
           → Do=Low → 0x38送信後24bitData読込 → /CS=High
     (次のレジスタ:データレジスタの読取=0x38)
4.波形確認
   ①SCLK立下りとDi変化同時は動作しなかった。
    Diを確定してからSCLKを立上げ→立下げで動作OKとなる
(2)3CH一括START,ポーリングデータ読取のシーケンス
5.結果
  (1)入力は±2.5Vフルスケールで値7FFFF≒8388600の約70%値の測定において
     5827〇xx 〇の位±1程度変化,xxは測定の都度変化する
      →∴±199÷8388600=±24ppmのバラツキ → 15bitは1/32768≒30ppmなので
     15bit程度の精度と考える(ノイズの影響は考慮していない)
















 ←投稿動画一覧
 ←投稿動画一覧
