This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

TPS6594-Q1: How is WAIT_TIMEOUT used as a trigger source?

Part Number: TPS6594-Q1


Hi TI engineers,

I see that WAIT_TIMEOUT is a trigger source and it's related to the WAIT instruction set. It's hard for me to imagine how WAIT_TIMEOUT is used as a trigger source. For example, I have state "A" and state "B" and I choose WAIT_TIMEOUT as the trigger source to transit from A to B. There should be a sequence "T" that maps to WAIT_TIMEOUT trigger source. Where should I configure the wait condition, type, timeout and desitination as WAIT construction should include? In the sequence T? 

Thank you,

Charlotte

  • Hi Charlotte,

    An example of the WAIT_TIMEOUT trigger is: in the transition from a SLEEP state to an ACTIVE state, the wait condition is placed to pause the wake sequence until a GPIO reads that an external voltage is high. If the condition is met before the timeout, the wake sequence will continue as normal. If the wait times out with WAIT_TIMEOUT as an immediate trigger, the wake sequence will not continue, the destination set in the wait command is not used, and a transition to another state, for example the TO_SAFE state, will occur.

    To use your example names, the device is in the middle of transitioning from state "A" to state "B" and encounters a wait condition (with the configured type, timeout, and destination) in sequence "T". When that condition times out, the sequence "U" will be triggered, bringing the device from state "A" to state "C" instead.

    I will have to confirm how the device responds when the WAIT_TIMEOUT trigger is not set to be an immediate trigger. 

    Regards,
    Megan

  • Hi Megan, thank you. This is a follow up with the WAIT_TIMEOUT. I'm trying to use WAIT_TIMEOUT as as a trigger. after the  I2C_4 timesout, I expect the state machine follow the right most flow and write 0x0CB = 11h. However, seems that the state machine will always follow the red line and write 0x0CA =22h. Can you please let me know if there's anything wrong with how I use this WAIT_TIMEOUT trigger? Thank you!

  • Hi Charlotte,

    What priorities are your interrupts? If the WAIT_TIMEOUT interrupt is a lower priority than GPIO2 falling, the device will not interrupt the sequence when the wait times out. 

    Looking at this a slightly different way, are you able to include the WAIT_TIMEOUT sequence steps in the sequence itself, rather than switching to a different sequence? What I mean by that is combining the actions that occur in the blue section in your diagram with the actions that occur in the red section.

    Regards,
    Megan