「お役立ち関数・クラス(AD変換)」の編集履歴(バックアップ)一覧はこちら
「お役立ち関数・クラス(AD変換)」(2016/02/18 (木) 20:48:47) の最新版変更点
追加された行は緑色になります。
削除された行は赤色になります。
対象マイコン:Atmega88シリーズ
引数:なし
返り値:なし
説明:AD変換を右寄せで初期化する関数
//ADC設定の初期化
void adc_init(void){
ADMUX = 0b01000000; //AVCCを基準、右寄せ、ADC0(PC0)に接続
//変換器を有効、
//16分周(1MHz/16=62.5kHz)AD変換には13クロックかかるため62.5kHz/13=約5kHz
ADCSRA = 0b10000100;
_delay_ms(5); //分周器の動作安定待ち
}
対象マイコン:Atmega88シリーズ
第1引数:AD変換器に接続するピン番号(0~5)
返り値:AD変換の結果
説明:AD変換を実行する関数
//AD変換を行う関数
uint16_t adc(int pin){
ADMUX = ADMUX & 0b11110000 ; //ピンセレクトを初期化
ADMUX = ADMUX | pin; //ピンセレクト
ADCSRA = ADCSRA | 0b01000000; //AD変換器起動
while(ADCSRA & 0b01000000); //AD変換完了待ち
return ADC;
}
対象マイコン:Atmega88シリーズ
引数:なし
返り値:なし
説明:AD変換を右寄せで初期化する関数
#highlight(linenumber,c){{
//ADC設定の初期化
void adc_init(void){
ADMUX = 0b01000000; //AVCCを基準、右寄せ、ADC0(PC0)に接続
//変換器を有効、
//16分周(1MHz/16=62.5kHz)AD変換には13クロックかかるため62.5kHz/13=約5kHz
ADCSRA = 0b10000100;
_delay_ms(5); //分周器の動作安定待ち
}
}}
対象マイコン:Atmega88シリーズ
第1引数:AD変換器に接続するピン番号(0~5)
返り値:AD変換の結果
説明:AD変換を実行する関数
#highlight(linenumber,c){{
//AD変換を行う関数
uint16_t adc(int pin){
ADMUX = ADMUX & 0b11110000 ; //ピンセレクトを初期化
ADMUX = ADMUX | pin; //ピンセレクト
ADCSRA = ADCSRA | 0b01000000; //AD変換器起動
while(ADCSRA & 0b01000000); //AD変換完了待ち
return ADC;
}
}}