اطلاعیه

Collapse
No announcement yet.

مشکل با ADC میکرو ATmega 16

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

    مشکل با ADC میکرو ATmega 16

    با سلام و خسته نباشی خدمت دوستان عزیز

    همانطور که از موضوع پیداست میکرو atmega 16 دارم.
    میخوام از 3 تا ADC استفاده کنم تا مقداری رو از usart به terminal نرم افزار code vision ببره اما مشکل اینجاست که وقتی از 3 تا استفاده میکنم نویز وحشتناکی توی adc می افته

    اول از یکی استفاده کردم مشکلی نداشت بعد دوتا استفاده کردم مشکل به هم زد از code wizard مقدار کلاک adc رو روی 125/000 khz گذاشتم usart رو هم روی data 8 stop 1 parity : even تنظیم کردم مشکل رفع شد (90%)

    اما حالا که از 3 تا استفاده میکنم همه چیز به هم میریزه

    کد:
    while (1)
       { 
        adc0=readAdc(0);
        delay_ms(50);
        adc1=readAdc(1);
        delay_ms(50);
        adc2=readAdc(2);
        delay_ms(50);
        if(i<5)
        {
        a[i]=adc0;
        b[i]=adc1;
        n[i]=adc2;
        i++;
        }
        else
       {
        i=0; 
        //knob1
        printf(" knob1= ");
       for(j=0;j<5;j++)
        {
         printf("%d",a[j]);
         printf("-");
        } 
        printf("     ");
        delay_ms(1000);
       
       //knob2
        printf(" knob2= ");
       for(j=0;j<5;j++)
        {
         printf("%d",b[j]);
         printf("-");
        }
        printf("     ");
        delay_ms(1000);
        //konb3
         printf(" knob3= ");
       for(j=0;j<5;j++)
        {
         printf("%d",n[j]);
         printf("-");
        }
        printf("     ");
        delay_ms(1000); 
       } 
       }
       }
    
    int readAdc(int anyAdc)
    {
     int x;
     float y;
     y=read_adc(anyAdc);
     x=(y/1023)*127;
     return x;
    }
    آیا باید از یک میکرو قویتر استفاده کنم ؟ مدار هم سالمه همه جاشو تست کردم نویز از مدار نیست

    #2
    پاسخ : مشکل با ADC میکرو ATmega 16

    کسی نیست جواب بده ؟ منتظرم هنوز

    دیدگاه


      #3
      پاسخ : مشکل با ADC میکرو ATmega 16

      والا من تجربه ی زیادی توی avr ندارم ولی توی یک پروژه ای تقریبا چنین مشکلی رو داشتم اومدم برنامرو با اسمبلی نوشتم درست شد،به نظرم مشکل شما هم باگ کامپایلر باشه....

      دیدگاه


        #4
        پاسخ : مشکل با ADC میکرو ATmega 16

        شما از هر میکرو AVR استفاده کنی فرقی نداره واحد ADC اونا یکیه . شما از چی دارید نمونه برداری میکنید؟؟؟
        ببین اگه یه خازن 10 میکرو به پایه ADC میکرو و زمین متصل کنی مشکل حل میشه یا نه

        دیدگاه

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