اطلاعیه

Collapse
No announcement yet.

سوال در مورد واحد adc

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    سوال در مورد واحد adc

    درود بر مهندسین عزیز.
    این برنامه برای راه اندازی واحد lpc1768 که خودم نوشتم بنظرم برنامه مشکلی نداره اما وقتی رو ای سی پراگرم میکنم هیچ جوابی نمیگیرم جالب اینجاست که روشش رو اتمل sam7 به راحتی جواب داد اما هر کار میکنم رو هدر برد eca جواب نمیگیرم از شما دوستان تقاضای کمک دارم.در ضمن قطعات جانبی خاصی به مدار باید نصب بشه؟؟؟
    #include <LPC17xx.h>
    unsigned int read_adc(void){
    LPC_ADC->ADCR|=0x01000000;

    LPC_ADC->ADDR0;
    while((LPC_ADC->ADDR0&0x80000000)==0);
    return(LPC_ADC->ADDR0>>4)&0xFFF;
    }
    int main(){
    LPC_SC->PCONP|=(1<<12);
    LPC_PINCON->PINSEL1=0X4000;
    LPC_ADC->ADCR=0x00200301;
    LPC_GPIO1->FIODIR|=(1<<26);
    while(1){
    if(read_adc()==0)
    LPC_GPIO1->FIOCLR=(1<<26);
    if(read_adc()>=3.3)
    LPC_GPIO1->FIOSET=(1<<26);
    }
    }
    توضیح :اگه ولتاژ اعمالی به پورت p0.23 صفر بود led خاموش باشه و گر بیشتر از 3.3 بود led روشن بشه

    #2
    پاسخ : سوال در مورد واحد adc

    من ADC رو اینجوری کانفیگ میکنم :
    void ADC_Init (void) {

    LPC_PINCON->PINSEL3 &= ~(3UL<<30); /* P1.31 is GPIO */
    LPC_PINCON->PINSEL3 |= (3UL<<30); /* P1.31 is AD0.5 */

    LPC_SC->PCONP |= (1<<12); /* Enable power to ADC block */

    LPC_ADC->ADCR = (1<< 5) | /* select AD0.5 pin */
    (4<< 8) | /* ADC clock is 25MHz/5 */
    (1<<21); /* enable ADC */
    }

    ! Life doesn't get easier , you just get stronger

    دیدگاه

    لطفا صبر کنید...
    X