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.

MCU-PLUS-SDK-AM273X: AM273 GPIO

Part Number: MCU-PLUS-SDK-AM273X
Other Parts Discussed in Thread: SYSCONFIG

Tool/software:

Hello Ti team,

I am trying to operate the K15 pin. I want to set it as an output and operate it high or low. the code is as below:

#define SOC_A2B1_RST_Q_BASE_ADDR (CSL_RCSS_GIO_U_BASE)
#define SOC_A2B1_RST_PIN (59U)
#define SOC_A2B1_RST_DIR (GPIO_DIRECTION_OUTPUT)
void clear_A2B1RSTpin()
{
    const uint32_t baseAddr =  (uint32_t) AddrTranslateP_getLocalAddr(SOC_A2B1_RST_Q_BASE_ADDR);
    GPIO_setDirMode(baseAddr, SOC_A2B1_RST_PIN, SOC_A2B1_RST_DIR);
    GPIO_pinWriteLow(baseAddr, SOC_A2B1_RST_PIN);
}

void set_A2B1RSTpin()
{
    const uint32_t baseAddr =  (uint32_t) AddrTranslateP_getLocalAddr(SOC_A2B1_RST_Q_BASE_ADDR);
    GPIO_setDirMode(baseAddr, SOC_A2B1_RST_PIN, SOC_A2B1_RST_DIR);
    GPIO_pinWriteHigh(baseAddr, SOC_A2B1_RST_PIN);
}
void main()
{
....
set_A2B1RSTpin();
...
}
But GPIO_59 always remains low and cannot be pulled up as I want. Can you help me see if I am missing something in the configuration?
Thank you
  • Hi Alisa, 

    Sorry for the delay on this, the expert has been out of office but I have requested other assistance. Please allow them a day to comment

    Best,

    Daniel

  • Hi Alisa,

    Are you sure that you are configuring everything correctly?

    I was able to use the GPIO LED blink example from the SDK and confirm that the GPIO would toggle for 10 seconds as expected.

    Can you please try running the following out file on the C66x to confirm that you can observe a GPIO toggle?

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/908/gpio_5F00_led_5F00_blink_5F00_am273x_2D00_evm_5F00_c66ss0_5F00_nortos_5F00_ti_2D00_c6000.out

    Regards,

    Erik

  • hello Erilk,

    I already resolved this issue, the configration is correct, but the GPIO number should be set to GPIO 27 for RCSS_GPIO.

    The GPIO is still K15 (GPIO59), why it should be set to RCSS GPIO 27 for K15? is there any rules for this transform?

    best regards

    Alisa

  • Hello Alisa,

    I believe that you are not considering the number of the MSS_GPIO.

    • RCSS_GPIO_59 is K15 which you are trying to configure and RCSS_GPIO27 does not exist per the datasheet. 
    • RCSS_GPIO goes from RCSS_GPIO_[32:63]
    • MSS_GPIO is GPIO[0-31]
    • You are getting the behavior you expect when configuring "RCSS_GPIO_27" because 59 - 32 is 27. 

    Regards,

    Erik

  • Hi Erik,

    So you mean that the configuration of RCSS_GPIO should be configured as GPIO pin-32 as the configuration result, right?

    I know MSS_GPIO is GPIO[0:31], but I didn't realize this rule that  RCSS_GPIO_[32:63]  should configure to RCSS_GPIO_[[32:63]-32], could you please share more info for this?

    Best regards

    Alisa

  • Hi Alisa,

    Are you configuring the GPIO with SYSCONFIG or are you manually writing to the registers? 

    Can you expand on how you came to the conclusion that "RCSS_GPIO_27" should be used for K15?

    Regards,

    Erik