Помогите мучаюсь, все восемь раз прочитал про АЦП и контроллер прерываний. Не вызывается обработчик прерываний второй секции АЦП, причем запуск от ШИМ происходит исправно и считываются показания АЦП циферки меняются. Вот текст инициализации прерываний и АЦП, причем прерывания от таймера и USART работают исправно. MODBUS запустил во скоростью 111 опросов в секунду. ШИМ также работает и АЦП запускает от своего события сравнения.
// Step 5. User specific code, enable interrupts:
// Enable CPU INT1 which is connected to CPU-Timer 0 and SEQ2 ADC:
IER |= M_INT1; // Срабатывает, проверено
// Enable CPU INT9 which is connected to SCIRXINTA:
IER |= M_INT9; // Срабатывает, проверено
PieCtrlRegs.PIECTRL.bit.ENPIE =1;
// Enable SCI-A RX in the PIE: Group 9 interrupt 1
PieCtrlRegs.PIEIER9.bit.INTx1=1;
// Enable TINT0 in the PIE: Group 1 interrupt 7
PieCtrlRegs.PIEIER1.bit.INTx7 = 1;
// Enable ADC in the PIE: Group 1 interrupt 2
PieCtrlRegs.PIEIFR1.bit.INTx2 =1;
PieCtrlRegs.PIEIER1.bit.INTx2 =1;
// InitAdc(); // For this example, init the ADC
// Инициализация АЦП ******
EALLOW;
// Инициализация АЦП ******
AdcRegs.ADCREFSEL.bit.REF_SEL =0x0;
AdcRegs.ADCTRL1.all=0x4A0;
AdcRegs.ADCTRL2.all=0x29;
AdcRegs.ADCTRL3.all=0xE8;
AdcRegs.ADCTRL1.bit.CONT_RUN=0;
delay(ADC_usDELAY); // После включения питания нужна задержка
AdcRegs.ADCMAXCONV.bit.MAX_CONV2 = 0x8 ;// convert and store in 1 results registers
AdcRegs.ADCOFFTRIM.bit.OFFSET_TRIM= -20;// ADC Offset Trim Register
AdcRegs.ADCCHSELSEQ4.bit.CONV15 = 0xF; // ADC Input Channel Select
EDIS;
// Инициализация АЦП **** Конец