○ アナログコンパレータ
アナログコンパレータを利用することで簡易ADコンバータを実現できる。
1.コンパレータを有効にする
1. ACSRレジスタのACDビットを”0”(初期状態で0)
2. コンパレータ入力(PB0,PB1)を入力に設定。(DDRD1のビット0,1を”0”)
2.関連制御ポート: ACSR, PD6(AIN0), PD7(AIN1)
3.基本的な利用方法
● コンパレータによる比較結果
アナログコンパレータ制御/ステータスレジスタ ACSR のACOビット(bit 5)
は常にコンパレータの出力が接続されている。この値で比較結果がわかる。
[ 例題 ] PD6のアナログ電圧(固定)とPD7の電圧を比較し、PD7>PD6の時PB1に接続したLEDを 点灯 させる
プログラム AC.asm
回路図
○ ADコンバータ
特徴
・ 10ビット分解能
・ 6チャンネルシングルエンド入力マルチプレクサ
・ 基準電圧VREFは,AVcc,内部基準電圧1.1V,外部基準電圧AREF(≦VCC)を選択可能
使い方
初期設定
・ ADMUX(A/Dチャンネル選択レジスタ)の設定:基準電圧,入力チャンネルの選択
・ ADCSRA(A/D制御・ステータスレジスタA)の設定:A/Dの使用,変換開始,自動起動,割り込み許可
・ ADCSRB(A/D制御・ステータスレジスタB)の設定:自動起動要因の選択
A/D変換の実行
・ ADCSRAのADIF=1,ADSC=1 とするとADIFビットがクリアされ,AD変換スタート
・ ADCSRAのADIF=1になるまで待つ,ADIF=1 となったら変換が完了
・ ADCH,ADCL からデータを読み出す
[ 例題 ]
基準電圧を内部基準電圧 1.1V とし,ADC0(PC0) に入力したアナログ電圧( 0-1.2 V
)をデジタル変換し,2桁の7セグメントLEDに表示する簡易デジタル電圧計
入力電圧は 8bit で変換すると → 4.3 mV 分解能 と細かいので
5bit に変換し, → 34 mV 分解能 とする
表示はテーブルを参照
プログラム AD.asm
回路図
課題は無し