ADC0로 이력되는 ADC값을 시리얼 포트로 출력하는 예제 작성
LPC 2000 ADC예제 소스 코드
void AD_initial()
{
ADCR_bit.SEL = 1; // AD0 select
ADCR_bit.CLKDIV = 5;
ADCR_bit.BURST = 1; // put A/D into continuous convert mode
ADCR_bit.PDN = 1;
}
unsigned int AdcRead(unsigned int Channel)
{
ADCR_bit.SEL = 0x01 << Channel;
// AD START
ADCR_bit.START = 1;
while(!ADDR_bit.DONE);
// AD STOP
ADCR_bit.START = 0;
return ((ADDR >> 6) & 0x3ff);
}
void main(void)
{
unsigned int ad_result = 0;
HW_init();
Uart0Init();
//ADC초기화
AD_initial();
Uart0Puts("LPC2000 ARM ADC Test Program\r\n");
while(1)
{
//ADC Read
ad_result = AdcRead(0);
printf("ADC = %d\r\n", ad_result);
Delay(500000);
}
}