Picproje Elektronik Sitesi

DERLEYİCİLER => MikroC - PIC => MikroC ARM => Konuyu başlatan: matador - 05 Temmuz 2013, 16:44:57

Başlık: İki Analog Ölçümü
Gönderen: matador - 05 Temmuz 2013, 16:44:57
void main()
{
     int i=0;
     char k[8];
     char d[20];
     float sck,vt,volt;
     unsigned long ham,vlt=0;
     GPIO_Digital_Output(&GPIOD_ODR, _GPIO_PINMASK_12 | _GPIO_PINMASK_13|_GPIO_PINMASK_14|_GPIO_PINMASK_15);
     GPIOA_MODER=0;
     Lcd_Init();
     Lcd_Cmd(_LCD_CLEAR);
     Lcd_Cmd(_LCD_CURSOR_OFF);
     while(1)
     {    Adc_Set_Input_Channel(_Adc_Channel_1);
          Adc1_Init();
          vlt=ADC1_Get_Sample(1);
          vt=vlt;
          FloatToStr(vt,d);
          Lcd_Out(1,8,"Volt");
          Lcd_Out(2,1,d);
          volt=0;
          GPIOD_ODR=0x00001000;
          delay_ms(50);
          for(i=0;i<3;i++)
          {
              GPIOD_ODR<<=1;
              delay_ms(50);
          }
     }
}


Adc 1'in ilk kanalından lm35 ile sıcaklık ikinci kanaldan da gerilim bölücü ile voltaj ölçmeye çalışıyorum fakat voltaj ölçeceğim kanalda değer sürekli değişiyor. Analog girişi gndye çektiğimde bile değer sürekli değişiyor nedenini de bir türlü anlayamadım.  STM32F4 discovery ile çalıışıyorum.