- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello every one!
It's some days I'm trying to exit Psoc4 (CYBLE-022001-00 module) DEEP SLEEP using a GPIO logic signal (I've tried setting rising edge, falling, derivate): no way to trigger "CY_ISR(GPIO_ISR) Irq function" !
By the use of a scope I see the device enters DEEP SLEEP, exits at Advertising period, but no way to see it exiting (isr_1) when P3.7 GPIO moves.
Some releases ago I also saw Psoc4 current rising from DEEP SLEEP (to about 10mA) whenever GPIO pin was moving. Now (I really don't know what I've done) even current does not rise when GPIO moves!
Could it be this pin does make CPU exiting DEEP SLEEP? Sincerily I was not able to see a document explaining what module pins can do this...
Here attached "TopDesign.cysch" graphics, and two GPIO settings
I enable GPIO pin by:
Pin_1_SetInterruptMode(Pin_1_INTR_ALL, Pin_1_INTR_BOTH); // redundant
isr_1_StartEx(GPIO_ISR);
isr_1_Enable(); // perhaps redundant
Isr function (never triggered):
CY_ISR(GPIO_ISR)
{
Pin_1_ClearInterrupt();
}
Thanks for any help!
Luigi
Solved! Go to Solution.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear Ganesh, here is attached my project.
Some notes:
a) my application (initially is only Advertiser) needs te enter DEEP SLEEP most time: it enters but does not exit when Pin_1 GPIO phisically wired to UART2 Rxd moves.
b) at the moment I'd like exiting DEEP SLEEP by the use of GPIO, not UART2 Irq.....
c) a final question: as the application uses a periodic Timer1 Irq: d I have to stop and restart it before and after DEEP SLEEP, or does it automatically restart from the point it was before DEEP SLEEP?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hello Luigi,
Could it be this pin does make CPU exiting DEEP SLEEP?
Yes. All the GPIO interrupts can exit the device from deep Sleep.
Can you please attach your complete project? We would like to analyze it and see what is wrong in the flow.
Also, have you gone through the code example named "Interrupts_Example" in PSoC Creator?
Which version of PSoC Creator are you using? Please use latest version of PSoC Creator i.e PSoC Creator 4.3.
I am attaching the code example on Interrupts for your reference.
Thanks
Ganesh
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Ok thanks a lot for the moment. I'll have a look to your sample code, and also "Interrupts_Example".
I'm using Psoc Creator 4.3
Thanks a lot
Have a nice day
BR
Luigi
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Dear Ganesh, here is attached my project.
Some notes:
a) my application (initially is only Advertiser) needs te enter DEEP SLEEP most time: it enters but does not exit when Pin_1 GPIO phisically wired to UART2 Rxd moves.
b) at the moment I'd like exiting DEEP SLEEP by the use of GPIO, not UART2 Irq.....
c) a final question: as the application uses a periodic Timer1 Irq: d I have to stop and restart it before and after DEEP SLEEP, or does it automatically restart from the point it was before DEEP SLEEP?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
.... sorry I hit a wrong key and my answer was closed....
Here I attach my project.
Thanks a lot for your help!
BR
Luigi
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content