I recently used in the MPC5604 ADC interrupt function, found that it can not get into the interrupt, the initial configuration no problem, and finally found a "MPC5604B_M27V.h" in the problem, but do not know the reason, we can explain to me, specific as follows:
union {
vuint32_t R;
struct {
vuint32_t:7;
vuint32_t NSTART:1;
vuint32_t JABORT:1;
vuint32_t:2;
vuint32_t JSTART:1;
vuint32_t:3;
vuint32_t CTUSTART:1;
vuint32_t CHADDR:7;
vuint32_t:3;
vuint32_t ACK0:1;
1\\ vuint32_t:2; // Changed here, and the original is 3
vuint32_t ADCSTATUS:3;
} B;
} MSR; /* MAIN STATUS REGISTER */
2\\ int32_t ADC_reserved2[6]; /* (0x04F - 0x038)/4 = 0x05 */ // The 6 of the brackets were changed to 5
Changed the above two, the ADC interrupt is OK !!!
I would like to ask why!!!!