PSoC 6 Supports Level-triggered interrupts. Please refer Interrupts section in page 47 of the PSoC 63 BLE device architecture TRM obtained from the link below.
Also please go through the code example "GPIO Interrupt" in the code examples section in PSoC Creator 4.2 . The code example also shows that you have to use Global Signal and port interrupt instead of pin interrupt.
The question that I am asking is: does PSoC 6 support level-triggered interrupts where the external source maintains a certain level when it needs to be serviced? I am already using the Global Signal block and port interrupt and that does not work. I have looked at the TRM many times as well as run many experiments, but I will check once more.
I assume that the example you are referring to is CE219521. I have already looked at that, but you can see on page 4 of the associated PDF that it says "The switch when pressed results in logic 0 and provides a falling-edge signal". I am dealing with an external signal that will not generate an edge every time it needs to be serviced. It must be serviced as long as it is logic 0. From my understanding from the example, the falling-edge generates a signal and this signal is the one that is sampled by the NVIC for generating interrupts, which does not satisfy my case.
1 of 1 people found this helpful
The GPIO interrupt does not support level sensitive interrupts. However, you can use the DSI and UDB to convert the GPIO signal into a level sensitive interrupt. This approach has a downside that the interrupt is not deep sleep wake up capable. I haven't tested it but theoretically this should work Let me know if you face any issues with this. Note that the level is by default '1'. If you need '0', then place a NOT gate before the interrupt.
Meenakshi Sundaram R
Yes, it does work! Thank you! I think I previously tried this in the larger project and it wasn't working, but I tested it in a fresh project on the development board and it works. There must be a problem with the other hardware or something in the software project.