We are working on MPC5777C hardware and configured ICU(Input capture unit) module (GPIO199) for detecting falling edge triggering functionality.
The GPIO199 has primary functionality of EMIOS0_channel20 and same we want to use and expecting to trigger the interrupt for the same
This GPIO199 which is used as input is getting toggled and we have observed the same in GPDI199 register
For ICU module - we are USING SAIC mode and followed this sequence in init sequence
Icu_Init((Icu_ConfigType *)0);
Icu_EnableNotification(0);
Icu_EnableEdgeDetection(0);
please find below code modification done for EMIOS0_CH20-
During Initialisation -
SIU.IMUX5.B.MUXSEL4 = INPUT_MULTIPLEXING_SEL1; /*EMIOS_0 Ch20*/
SIU_PCR(199) = 0x0500;
Below are peripheral registers related to EMIOS during freerun
As you could se FLAG for event is SET but still we are not getting expected interrupt.
Please let me know if any additional information is required.
Solved! Go to Solution.
Hi,
be sure INTC module if properly initialized and check respective INTC_PSR (should be PSR206) if priority is set and request sent to right processor (PRC_SELn bits). Interrupt priority must be higher then current priority for given core (INTC_CPR_PRCn).
BR, Petr
Thank you Petr for your solution, Setting higher priority to INTC_PSR(206) resolved the issue.
Hi,
be sure INTC module if properly initialized and check respective INTC_PSR (should be PSR206) if priority is set and request sent to right processor (PRC_SELn bits). Interrupt priority must be higher then current priority for given core (INTC_CPR_PRCn).
BR, Petr