سلام.
ببخشید چرا تو این کد هیچ وقت خوندن ADC تموم نمیشه ؟ یعنی هیچ وقت بیت DONE برابر 1 نمیشه ؟
هرچی چکش میکنم مشکلش رو پیدا نمیکنم. ممنون میشم اگه کسی راهنمایی کنه :redface:
ببخشید چرا تو این کد هیچ وقت خوندن ADC تموم نمیشه ؟ یعنی هیچ وقت بیت DONE برابر 1 نمیشه ؟
کد:
#include <lpc17xx.h>
int ReadADC();
int adcVal;
int main()
{
LPC_PINCON->PINSEL1 |= (1<<14);
LPC_SC->PCONP |= (1<<12);
LPC_ADC->ADCR |= (0<<1);
LPC_ADC->ADCR |= (0<<8);
LPC_ADC->ADCR |= (0<<21);
//LPC_SC->PCLKSEL0 |= (1<<24);
while(1)
{
adcVal = ReadADC();
}
return 0;
}
int ReadADC()
{
int result;
LPC_ADC->ADCR |= (1<<24);
while ((LPC_ADC->ADGDR & 0x80000000) == 0);
result = LPC_ADC->ADDR0;
return result;
}




دیدگاه