CyHibernateEx API

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
MiNe_85951
Level 7
Level 7
Distributor - TED (Japan)
50 likes received 500 replies posted 50 solutions authored

Hi,

We would lile to wake up from hibernate mode on a specific PICU,
We have confirmed the CyBoot document, but how to set the specific pin of CyPmHibernateEx is unknown.

Although all PICUs can be understood by setting "CY_PM_HIB_SRC_PICU",
How do you set specific pin settings of "PICU_INTTYPE_PICUx_INTTYPEy"?

Regards,

0 Likes
1 Solution
lock attach
Attachments are accessible only for community members.

I don't think you can  pass the setting of the PICU to CyPmHibernateEx.

Here's an example of something working with the 059 board (I had to use port 2 instead of port 6)

That should be enough to get you started.

View solution in original post

4 Replies
ScottA_91
Employee
Employee
10 solutions authored 100 replies posted 50 replies posted

Let's start with an appnote:

https://www.cypress.com/documentation/application-notes/an77900-psoc-3-and-psoc-5lp-low-power-modes-...

If you get to page 3, you'll see it says any unmasked port interrupt.  So if you only want to wake up on a specific pin, you basically have to mask the interrupt for the rest.

Now you can do that in the digital input component under pins + input tabs if your PICU configuration is static.  If you need to change it dynamically, then you can use the registers you reference above.

IIRC, x referrers to the port, where as y referrers to the pin.  The value can be disabled, rising, falling or both.  That said it is better to use the pin API and set interrupt mode.

0 Likes
MiNe_85951
Level 7
Level 7
Distributor - TED (Japan)
50 likes received 500 replies posted 50 solutions authored

Thank you for your reply.

I understand the content.

CyPmHibernateEx(CY_PM_HIB_SRC_PICU);

It was confirmed that the above works with all GPIO interrupts.

CyPmHibernateEx(CY_SET_REG8(CYREG_PICU6_INTTYPE1, 0x02));

I would like to wake up only for certain prot 6[1], falling edge onfy.
However, it does not react in the above description.

What is set in CyPmHibernateEX API?

0 Likes
lock attach
Attachments are accessible only for community members.

I don't think you can  pass the setting of the PICU to CyPmHibernateEx.

Here's an example of something working with the 059 board (I had to use port 2 instead of port 6)

That should be enough to get you started.

MiNe_85951
Level 7
Level 7
Distributor - TED (Japan)
50 likes received 500 replies posted 50 solutions authored

Thank you for attaching a simple project.

I understood how to set specific pins thanks to reasonable projects.
I misunderstood the meaning of the HibernateEx API.

0 Likes