GVC (25.03.2008 15:47, просмотров: 3464)
У кого-нибуть заработало нормально АЦП у dsPIC30F6012A(или у подобных из этой серии). Помогите, уже едет крыша ... %( Я так понял можно настроить режим автосемплирования с сканировынием только выбраных входов и без прерывания вычитывать преобразованные значения из буферов. Правильно я понял, можно ж так работать? Тоесть АЦП покругу оцифровует выбранные каналы и ложит в соответствующий буфер ?
Вот как я сконфигурировал АЦП:
// ADC
ADCON1bits.SSRC = 7;
ADCON1bits.ASAM = 1;
ADCON2bits.SMPI = 1;
ADCON2bits.CSCNA = 1;
ADCON2bits.VCFG = 1; // Включаем источник опорного напряжения на +Vref подключено опорное напряжение
ADCON3bits.SAMC = 20;
ADCON3bits.ADCS = 20;
ADCHS = 0x0000;
ADCSSL = 0x0030; // Сканируем только AN4, AN5.
ADPCFG = 0xFFCF; // Аналоговые входы только AN4, AN5.
ADCON1bits.ADON = 1;
Читаю с прерывания от таймера:
Van4 = ADCBUF0;
Van5 = ADCBUF1;