3 Replies Latest reply on Mar 14, 2018 1:19 PM by user_24585443

    PSoC 4 stop mode interrupt




      I am succesfully using a button on P0.7 to generate a wake-up interrupt from stop mode. I have done this the same way as in AN86233.


      Is there a way to add a functionality to generate a software reset of the PSoC when in active mode? I would like to reset the PSoC when in active mode and wake up the PSoC when in stop mode.


      I tried to add the following line of code into the ISR, but nothing happens.


          // clears the interrupt on change flag
          // TODO - reset doesn't happen


      Thank you,


        • 1. Re: PSoC 4 stop mode interrupt

          Hello David,



          CySoftwareReset();  is expected to force a software reset on the device. But not the psoc peripherals. If that's also not happening will you be able to share your project?


          Best Regards,






          • 2. Re: PSoC 4 stop mode interrupt

            When pushing the P0.7 button in stop mode, the chip by fact of the operation of stop mode will be resetting on a hardware level; Do you mean resetting the chip when waking up from a different power mode? Hibernate perhaps? Deepsleep? Sleep?

            Hibernate and Stop power modes will both reset the chip on wakeup, but any other power mode will run the interrupt and do a software reset as you are expecting.

            I doubt the interrupt for the button is even running, as the interrupt from stop mode should be jumping straight to application start location immediately without waiting for the interrupt to be handled by application code (I believe it is also cleared by the application start as well)

            • 3. Re: PSoC 4 stop mode interrupt

              Thank you both for your replies.


              I was confused by the code in AN86233 a little, but as you say, there is no ISR handler required to wake up from Stop mode. The handler is there for the other low power modes.


              I properly added an interrupt handler for a button press, registered the interrupt source with the handler and it works great