|
Hi,
I have not made any progress on the above issue: getting the FX3 to go into suspend mode after USB disconnect.
In the mean time, I have started looking at standby mode.
Our application is self powered and always on. We want to put everything in the lowest power state possible while disconnected and power down most of the rail supplies.
I have been looking into the standby power state (L3) in the datasheet and the programmers manual.
The datasheet says that standby is entered through a register control in the CPU. It also says that it can be exited by the detection of VBUS, and that the program counter is reset.
The programmer's guide says something similar.
The API Guide says nothing. There is explanation of how to enter this mode. The programmers manual mentions a few registers related to device warm reset, but not enough to do anything.
I did notice a function in cyu3system.h called CyU3PSysEnterStandby. The description suggests that this is what I am looking for. I've added a call to my application, and now the application won't compile. It says 'undefined reference to CyU3PSysEnterStandby'. I'm guessing that's why it's not in the API guide. I'm using SDK 1.2. I've checked the release notes for 1.2.1, but there is no mention of standby.
Also, the h file mentions that the functions this: "This function does not return until the device has already resumed normal operation."
This implies that the function returns eventually. I find this unusual since the program counter is reset.
My questions:
1. Is there any way to currently get the processor into standby, and how?
2. How can I make sure it powers back on from VBUS connection (or any other source)?
3. Can the function mentioned above actually return after power up, and if so, how does it store the stack, etc?
I'm meeting with Triton (FAE) tomorrow and I will ask him then too.
Thanks,
Mark
|