Picproje Elektronik Sitesi

DERLEYİCİLER => Microchip XC Serisi => Konuyu başlatan: tahsinkaya - 15 Temmuz 2016, 11:44:51

Başlık: dsPIC33FJ32MC204 ADC çalışmıyor yardımmm!!!!!
Gönderen: tahsinkaya - 15 Temmuz 2016, 11:44:51
Arkadaşlar AN0 analog girişine uygulanan sinüs sinyalinin voltaj ve frekans değerlerini lcd de yazdırmak istiyorum ancak sürekli 0.00 yazıyor. Hatanın nerde olduğunu anlamadım ama ADC configürasyonunda olduğunda düşünüyorum. Kodlar aşağıya ekliyorum bi yardımcı olur musunuz ?


void init_ADC1(void)
{
   
    AD1CON1bits.FORM   = 3;
    AD1CON1bits.SSRC   = 7;
    AD1CON1bits.AD12B  = 0;
   
   
   
    AD1CON2bits.VCFG=0;
    AD1CON2bits.CHPS = 0;
    AD1CON2bits.SMPI=0b00000;
   
    AD1CON3bits.SAMC=1;
    AD1CON3bits.ADRC=0; 
    AD1CON3bits.ADCS =1;  //
   
    AD1CHS0bits.CH0SA=0;
   
   
    AD1PCFGL=0xFFFF;       //
    AD1PCFGLbits.PCFG0=0; //
   
    IFS0bits.AD1IF = 0;         // Clear the A/D interrupt flag bit
    IEC0bits.AD1IE = 0;         // Do Not Enable A/D interrupt
    AD1CON1bits.ADON = 1;
       
}





void main(void) {
   
    float data;
   
    unsigned char buffer1[20];
   
     
    init_ADC1();


    Glcd_Init();
    Glcd_Fill(CLEAR);

    Glcd_SetFont(Terminal12x16, 12, 16, 32 ,127);
       
        Glcd_ConstText(0, 2, "Graphic");     
        Glcd_ConstText(0, 4, "Lcd 128x64");
        Delay_ms(500);

   
    Glcd_Fill(CLEAR);
     
    while(1)
    {
   
        //Glcd_SetFont(Font_6x8, 6, 8, 32 ,127);
       
        data = ADC1BUF0;
        sprintf(buffer1,"%2.2f",data);   
        Glcd_Text(0, 2, buffer1);
       
    }
}