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.

Initial state of GPIOs and EPWMs

Other Parts Discussed in Thread: TMS320F28033, CONTROLSUITE

Hello,

I read that at reset all GPIOs are inputs and have pull-ups enabled by default. I am using TMS320F28033 for an inverter application. The EPWM pins will be connected to MOSFET gate drivers. There are some other GPIO pins used for different control signals. I was wondering how it would be possible to ensure the state of the pin at reset.

If I want the inverter completely off after reset, will connecting a pull-down to the pins ensure that the PWM remains low during startup? It is important that the pin remains low for the entire duration of power up including that stage when supply is increasing to 3.3V. With the GPIO pins, there could be two functions - some pins are usually high and are pulled low while others are usually low and are pulled high. In these cases, if a pin is needed to be usually high, will connecting a pullup resistor to 3.3V ensure that the pin always follows Vdd even when supply increases to 3.3V? And vice versa will pull downs to ground ensure that pins that should be normally low will always be at ground even during power up sequence?

Thanks in advance

  • Shivkumar,

    From page 13 of the datasheet: The pullups on the PWM pins are not enabled at reset. The pullups on other GPIO pins are enabled upon reset.

    The only pin on the device with an internal pull-down is the -TRST pin. All GPIO pins only have pull-ups. For pins that you want to maintain low normally, you need to choose a "stiff enough" PD resistor that still allows the pin to be driven high when needed.

  • Hello,

    Thanks again. For the PWMs that are multiplexed with other functions along with default GPIO , these would be inputs at default with internal pull-ups disabled? An example is pin 53 that is GPIO3, EPWM2B, SPISOMIA and COMP2OUT. Also, could you specify what is stiff-enough? Low enough that it overwhelms the internal pullup at reset but not so low that the DSP can pull the pin high when needed with its maximum sink current? Any hint about an approx. value?
  • For your problem best option to refer GPIO sample example, which is present in side "\controlSUITE\device_support\f2803x\v130\DSP2803x_examples_ccsv5".
    you also can learn connecting one out of three peripheral I/O signals.============pin 53 that is GPIO3, EPWM2B, SPISOMIA and COMP2OUT==

    If not have the controlSUITE, then download & install it.
  • For the PWMs that are multiplexed with other functions along with default GPIO , these would be inputs at default with internal pull-ups disabled?

    Answer--> That is correct.

     

    Also, could you specify what is stiff-enough? Low enough that it overwhelms the internal pullup at reset but not so low that the DSP can pull the pin high when needed with its maximum sink current?

    Answer--> Your understanding is correct. You probably wanted to say "Source" current.

     

    Any hint about an approx. value?

    Answer--> You need to look at the strength of the internal PU. And then pick up R that would stisfy the following conditions:

    VOL does not exceed 0.4v

    When you want to drive the pin high (with the limitation that the maximum o/p buffer current is 4 mA), VOH(min) can be maintained. Look at the attached figure for example. Please consult the device datasheet for the pins you are interested in and rework the calculation, if needed. Ensure the resistor so chosen works fine on the circuit board for all corner cases.

  • Thank you for this! Completely answers my question.