ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Среда
30 июля
1532309
Ig_B (24.07.2025 08:26, просмотров: 2472)
Господа, кто умеет настраивать АЦП в dsPIC33EP, что-то совсем лыжи не едут... 

Настраиваю 12 бит, один канал А0

ANSELA=0b00001001; //A0 input, A3+ref input 2.5V

AD1CON1=0;

AD1CON1bits.AD12B=1; //use 12 bit mode

AD1CON1bits.ASAM=1; //auto sampling on

//AD1CON1bits.ASAM=0; //auto sampling off

AD1CON2=0;

//AD1CON2bits.VCFG=1; //ext +ref (AN3) 2.5V TL431

AD1CON2bits.VCFG=0; //3.3V +ref

AD1CON3=0;

AD1CON3bits.ADRC=1; //use RC clock

AD1CON4=0;

AD1CHS0=0x00; //clear just in case

AD1CHS0bits.CH0SA=0; //AN0??

AD1CHS0bits.CH0NA=0; //

AD1CHS123 = 0x0000;

AD1CSSH = 0x0000;

AD1CSSL = 0x0000;

AD1CON1bits.ADON=1; //switch ON ADC

Читаю в пркрывании таймера, одни нули...

i++;

if(i & 0x01) {

//Led_G=1; //led should flash 50M/8/65536/2=47.68Hz

i_fan_cur=ADC1BUF0; //read result of last conversion

a0_volt=i_fan_cur/1638.4;

AD1CON1bits.SAMP = 1; // Start sampling

}

else {

//Led_G=0;

AD1CON1bits.SAMP = 0; // End sampling, start the conversion

}


Очень уж закидонистый ацп у EP серии.