Content originally posted in LPCWare by davidjun on Thu Jun 04 07:02:10 MST 2015
Hi,
Chapter 8 (NVIC) in the user manual states that each core supports its own NVIC. I'm not sure what the exact implications are, but is it possible for an interrupt handled by the M0 core to cause delays in processing an M4-based interrupt? There is no shared memory being accessed in either interrupts and no IPC going on.
My setup is as follows:
- SCT is set up to trigger an interrupt based on a CTIN rising edge event. SCT and pin configuration happens on the M4, but the interrupt is enabled and handled on the M0.
- A GPIO pin interrupt is setup, enabled, and handled on the M4.
The SCT handler was moved to the M0 because both interrupts are time critical and events were being missed. Unfortunately, if I do anything but clear the event flag in the M0's SCT handler (e.g., toggle an LED), I lose GPIO pin interrupt events on the M4. This has me stumped since I was under the assumption that the operations on the two cores were more or less independent.
Any ideas or clarification about the NVICs on the dual core would be appreciated.