USB Suspend-Resume Management on MK22FN512?

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

USB Suspend-Resume Management on MK22FN512?

Jump to solution
720 Views
brunopaillard
Contributor III

Hi

Is there an example that shows how to manage the suspend and resume events on the MK22FN512 (or other MCU with the same USB module) in order to comply with the USB spec (Icc<2.5mA)

-     Does the USB module behave well if the MCU is put in STOP mode without any precaution (DEEPSLEEP)?

-     If the MCU is put in STOP mode what happens with the IRC48 USB clock (does it stop?)

-     If the MCU is put in STOP mode what happens with the USB regulator?

-     Is there some pre-configuration to do before putting the MCU in STOP?

-     The reference manual indicates that the USB transceiver should be put in suspend before enabling the asynchronous resume interrupt, but when I do that the USB module does not wake up functional!

-     Is there some post-configuration to do at resume, after the MCU wakes up?

...Some example would be welcome...!

1 Solution
387 Views
adriancano
NXP Employee
NXP Employee

Hi Bruno,

I will try to answer your questions:

-    Does the USB module behave well if the MCU is put in STOP mode without any precaution (DEEPSLEEP)?

  • Regarding the table 7-2 of the RM the USB registers remains static in the STOP mode this means that once the system returns to RUN mode the registers will have the same values before the STOP mode entering. The process of going to STOP modes is normal. Please refer to one of this Application Notes AN4503 and AN4470

-    If the MCU is put in STOP mode what happens with the IRC48 USB clock (does it stop?)

  • Regarding the section 5.7.2 the IRC 48 MHz clock is availabel in High Speed Run, Run, WAIT and Stop modes of operation.

-    If the MCU is put in STOP mode what happens with the USB regulator?

  • The operation of the USB Voltage Regulator is optional while the different Low power modes (Table 7-2). The SIM_SOPT1[USBSSTBY] and SIM_SOPT1[USBVSTBY] field controls when the regulator is in standby mode.

-    Is there some pre-configuration to do before putting the MCU in STOP?

  • Please refer to the Application Notes mentioned before.

-    The reference manual indicates that the USB transceiver should be put in suspend before enabling the asynchronous resume interrupt,      but when I do that the USB module does not wake up functional!

  • I am not really sure about this but I will try to find some useful information. You may find useful this Application Note AN4905

-    Is there some post-configuration to do at resume, after the MCU wakes up?

  • As far as I know is the normal process to resume operational modes. Please refer to the Application notes mentioned before.


Hope this information can help you.

Best Regards,
Adrian Sanchez Cano
Technical Support Engineer
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

View solution in original post

2 Replies
388 Views
adriancano
NXP Employee
NXP Employee

Hi Bruno,

I will try to answer your questions:

-    Does the USB module behave well if the MCU is put in STOP mode without any precaution (DEEPSLEEP)?

  • Regarding the table 7-2 of the RM the USB registers remains static in the STOP mode this means that once the system returns to RUN mode the registers will have the same values before the STOP mode entering. The process of going to STOP modes is normal. Please refer to one of this Application Notes AN4503 and AN4470

-    If the MCU is put in STOP mode what happens with the IRC48 USB clock (does it stop?)

  • Regarding the section 5.7.2 the IRC 48 MHz clock is availabel in High Speed Run, Run, WAIT and Stop modes of operation.

-    If the MCU is put in STOP mode what happens with the USB regulator?

  • The operation of the USB Voltage Regulator is optional while the different Low power modes (Table 7-2). The SIM_SOPT1[USBSSTBY] and SIM_SOPT1[USBVSTBY] field controls when the regulator is in standby mode.

-    Is there some pre-configuration to do before putting the MCU in STOP?

  • Please refer to the Application Notes mentioned before.

-    The reference manual indicates that the USB transceiver should be put in suspend before enabling the asynchronous resume interrupt,      but when I do that the USB module does not wake up functional!

  • I am not really sure about this but I will try to find some useful information. You may find useful this Application Note AN4905

-    Is there some post-configuration to do at resume, after the MCU wakes up?

  • As far as I know is the normal process to resume operational modes. Please refer to the Application notes mentioned before.


Hope this information can help you.

Best Regards,
Adrian Sanchez Cano
Technical Support Engineer
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

387 Views
brunopaillard
Contributor III

Hi Adrian

Many thanks for these answers. Regarding the question about the asynchronous resume interrupt being only enabled when the USB transceiver is suspended, maybe I am interpreting this wrong:

-     The table at section 43.4.27 of the Ref Manual indicates about USBRESMEN: "This interrupt should only be enabled when the transceiver is in suspend". I interpreted that as to say I should put the transceiver in suspend (using the SUSP bit of USB0_USBCTRL) BEFORE enabling the asynchronous resume interrupt. But maybe it really means that the USB BUS should be in suspend (suspend-state detected on the bus) before the async resume interrupt is enabled...?

Thanks

Bruno

0 Kudos