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.

LM4F232H5QD hibernation module for an unprogrammed chip or chip in emulation

I am trying to figure out how to power up a LM4F232H5QD chip using the hibernation module when the device is unprogrammed or is in emulation.  I am using CSS 5.2, a Spectrum Digital XDS560V2 STM and the 470 compiler.

I am looking at the figures in the LM4F232H5QD data sheet 7-1 and 7-2.  I am working on a new board recently produced and never used before.  Our circuit is close to Figure 7-2.  (I do not understand the connection between the !HIB output and the VBAT line, I think Figure 7-2 is in error there. Figure 7-1 references HIBCTL.EXTWEN but does not define it.  Does it mean HIBCTL.PINWEN?)  For an inactive chip, we have voltage to the pins that need them.

The issue I do not understand is the circuit makes sense if you have setup HIBCTL correctly; however, as the board is being built or in emulation, there is no FW in the controller to setup HIBCTL correctly. 

So how does one get the power to VDD in this case? 

Do you have to shunt the circuit to get power to VDD?

What happens when the battery dies or is replaced?  Will you not be in the same situation?  Do you not have to have VBAT always powered in order for Figure 7-2 to work?

Let me know if StellarisWare is the correct forum, or if this belongs in a chip specific forum.  It seems the HIB module is similar in LM4F and LM3F modules, so I placed in StellarisWare.

  • Hi John,

     You are correct, HIBCTL.EXTWEN should actually be HIBCTL.PINWEN. You are also correct about the circuit diagrams, 7-2 and 7-4. There shouldn't be a connection between the !HIB net and the VBAT net. I have already put in a request to have those diagrams changed.

    Unless the Hibernation module is configured, the !HIB output will always be high (provided the module is powered, I'll get to that in a minute). So straight from the factory, a blank part will output a high !HIB signal once it is powered.

    The Hibernation module will select the higher of two power sources, VDD or VBAT. So in your blank factory state, as long as VBAT or VDD is getting power, the !HIB signal should be high.

    You raise a good point about "What happens when the battery dies or is replaced?" You may run into a situation where you cannot turn on your VDD supply (via the EN signal) if the backup battery is missing or fully discharged. I would like to point you towards the EK-LM4F232 Evaluation Kit. We demonstrate one possible solution to overcome this particular situation. I would also like to quote from its User's Manual:

    The EK-LM4F232 has additional circuitry that allows the evaluation board to be turned on even when a battery is not present or when the battery voltage is too low. A Texas Instruments’ TPS3803-01 Voltage Detector (U12) monitors VBATand produces a VBAT_GOOD signal when the battery voltage is above 2.1 V. Using standard logic gates and the state of VBATand VDD, the HIB signal can be forced high when VBAT is not valid and the microcontroller is not already powered. With this circuit, a USB-powered board can turn itself on when the back-up battery is either missing or fully discharged. See Appendix A, “Schematics” on page 22 for more details.

    This additional circuitry may not be needed in all applications. For example, a device powered by one main battery that doubles as the back-up battery does not need this circuit. Or, when using the Hibernate module in VDD3ON mode, power is cut to the microcontroller internally which eliminates the need to use HIB to turn off an external supply.

    Take a look at the schematic (also in the User's Manual) and let me know if it helps answer your questions.

    -David

  • Thanks, for the rapid reply.  It turned out the WAKE pin was being held at 1V, rather than 3.3V.  A resistor change fixed the issue, but your reply prompted us to check the voltage levels again.