ADC(Analog Digital Converter)


ADC(Analog Digital Converter)

#ATMEGA128 #SampleCode #AVRSTUDIO ADIF레지스터의 값을 이용하여 ADC하는 예제Code(폴링방식) #include <avr/io.h> #include <avr/interrupt.h> #include <delay.h> void main(void) { int ad_val; DDRF = 0xF0; // PF4-PF7 출력, PF0-PF3 입력 ADMUX = 0x0; // ADC0 단극성 입력 선택 ADCSRA = 0x87; // ADEN=1, 16MHz 256분주 -> 125kHz delay_ms(5); while(1) { ADCSRA = 0xC7; // ADEN=1, ADSC = 1 변환 시작 while((ADCSRA & 0x10) == 0); // ADIF=1이 될떄까지 ad_val = (int)ADCL + ((int)ADCH << 8); // A/D 변환값 읽기 } } 외부인터럽트4번이 감지되면 ADC를 시작하고 ADC가 완료되면 ADC Interrupt...


#ATMEGA128 #AVRSTUDIO #SampleCode

원문링크 : ADC(Analog Digital Converter)