AlexBi (30.09.2010 10:58, просмотров: 3860)
PIC24: Как правильно заменить перебираемые каналы в режиме с автоматическим перебором? Если сделать просто:
AD1CSSL=3;
... // работа с каналами 0 и 1
// переход к новым каналам
AD1CSSH=0;
AD1CSSL=6;
AD1CON2bits.CSCNA=1; // Scan Input Selections for CH0+ during Sample A bit
AD1CON2bits.SMPI=1; // сканирование двух (1+1) каналов
AD1CON1bits.SSRC=2; // 2 = GP timer (Timer3 for ADC1, Timer5 for ADC2) compare ends sampling and starts conversion
то в результате первый результат - это результат преобразования в канале 0, выбранном в предыдущем наборе.
Шаманства с AD1CON2bits.CSCNA=0;AD1CON2bits.CSCNA=1; или AD1CON2bits.CSCNA=0;AD1CHS0bits.CH0SA=2;AD1CON2bits.CSCNA=1; не помогают. Помогает только
// переход к новым каналам
_ADON=0;
_ADON=1;
AD1CSSH=0;
AD1CSSL=6;
AD1CON2bits.CSCNA=1; // Scan Input Selections for CH0+ during Sample A bit
AD1CON2bits.SMPI=1; // сканирование двух (1+1) каналов
AD1CON1bits.SSRC=2; // 2 = GP timer (Timer3 for ADC1, Timer5 for ADC2) compare ends sampling and starts conversion
Но после включения АЦП до первого измерения, формально, надо долго ждать. Выкидывать первое измерение так же не нравится. Что посоветуете?