Because of the holidays, TI E2E™ design support forum responses will be delayed from Dec. 25 through Jan. 2. Thank you for your patience.

TMS320F2800157-Q1: Is the GPIO configuration order will influence the system?

Part Number: TMS320F2800157-Q1

Tool/software:

Hi experts

I ask below question for my customer:

My customer is using 2800157 and they have below confuse.

In our TRM, it show the recommend GPIO configuration order:

But in our demo, it has two different init code,

one will enable PLLUP and write the GPIO value and configure the GPIO peripheral and then set its direction.

the other will configure the GPIO peripheral and enable pullup and set its direction

My customer use below order to init the GPIO, they will configure the GPIO peripheral and enable pullup and set its direction and write GPIO value.

So they want to know,

1. if above three order can be used to init GPIO? Is the order will cause some risk?

2. In second order, it don't write GPIO value, is it not need to do it?

3. In customer order, they will write the value finally, is it will have some risk?

BRs

Shuqing

  • Hi Shuqing,

    The order no consequence on the device itself.

    It can be whatever the user may choose to or works for them.

    Ideally we would want to configure the GPIO (Pullup, Input/output etc.) and then select functionality of GPIO (PIN MUX) such that when Pin mux is selected GPIO configurations are already done so it can output correctly/expectedly.

    Thanks

  • Hi Bhatt,

    Sorry to double check below description, in below picture, it says it will pull up unbonded IOs, what meaning of unbonded IOs? Is it represent all GPIO? If so, is it necessary to enable pull up in application code?

  • Hi Bhatt,

    After check for the code in BOOT ROM, I confirm that only unbounded GPIO will enable in BOOT ROM,

    but other GPIO will not and will set to input and disable pull up default.

    But in our RTM, it says that user should configurate the all GPIO in below configuration.

    So customer need to double check below question:

    1. For the unused GPIO, we just have 3 configuration choice,

    a. output;

    b. input with internal pull up enable;

    c. input with external pull up or pull down.

    We have no other choice, right? If we configure it input but not pull up internal and not pull up/pull down external, it will cause: An un-driven input can float to a mid-rail voltage and cause wasted shoot-through current on the input buffer.

    But in our demo code, we don't do above configuration for unused configuration, is it necessary for all unused GPIO configuration?

    2. For used GPIO, we should better configure GPIO as your recommend steps, right?

    Ideally we would want to configure the GPIO (Pullup, Input/output etc.) and then select functionality of GPIO (PIN MUX) such that when Pin mux is selected GPIO configurations are already done so it can output correctly/expectedly.

    BRs