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.

[参考译文] TMS320DM8168:GP1[9]/GPMC_A[27]内部下拉使能

Guru**** 2551110 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/617933/tms320dm8168-gp1-9-gpmc_a-27-internal-pull-down-enable

器件型号:TMS320DM8168

您好!

8168数据表中的表4.5 GPIO 端子功能显示了 GPMC_A[27]/GP1[9]的状态、如下所示:

拉:DIS/IPD
驱动:Z / Z
DVDD_3P3

拉:A/B、其中:

A 是 POR 复位期间内部拉电阻器的状态
B 是 POR 和热复位被置为无效后以及热复位期间内部拉电阻器的状态
IPD =内部下拉使能、IPU =内部上拉使能、DIS =内部上拉禁用
驱动器:A/B、其中;
A 是 POR 复位期间引脚的驱动状态
B 是 POR 和热复位取消置位后以及热复位期间引脚的驱动状态
H =驱动高电平、L =驱动低电平、Z =三态

技术参考手册()还 显示了 PINCTRL189的寄存器值被设定为

PULLTYPESEL = 0 (选择下拉)

PULLDIS = 0 (上拉或下拉使能)

在 POR 期间是否有办法保持内部下拉电阻器?

谢谢。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Amol、

    不、我认为您不能在 POR 期间启用引脚 K8的内部下拉电阻器。 在 POR 期间、您应该使用外部下拉电阻器来保持线路。

    此致、
    帕维尔
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢 Pavel、

    我们是否可以使用以下 PINCTRLn 寄存器从 uboot 中禁用 GP1[9]的下拉电阻:

    我尝试从 uboot 更改此位、但它没有产生任何效果。

    谢谢

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好 Amol、

    是的、这应该是可能的。

    您能否提供步骤的 u-boot 控制台日志?

    此致、
    帕维尔
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、Pavel、

    我今天获得了所需的设置。 我能够在 GPIO1[9]上进行上拉/下拉、甚至禁用它。 但是、我们观察到 GPIO1[9] 不够低。  它将仅达到1.2875V。  除了一个内部上拉电阻约为22K 欧姆的器件外、该引脚上没有其他负载。

      在启用 GPIO0后、用于启用 GPIO1的代码更改已添加到 peripheral_enable()函数中的 board/ti/ti8168/evm.c 中。 代码如下所示


    #ifdef CONFIG_ENABLE_GPIO1
       _raW_writel (0x2、CM_ALWON_GPIO_1_CLKCTRL);
       while ((__raW_readl (CM_ALWON_GPIO_1_CLKCTRL)& 0x3)!= 0x2);


       _raW_writel (0x2、0x48140AF0);       /*下拉 GPIO1[9]*

       //__raW_writel (0x12、0x48140AF0);       // GPIO1[9]上拉*/

       GPIO1_OE =__ RAW_READL (0x4804C134);
       GPIO1_OE = GPIO1_OE 和0xFFFFFF;
       _raW_writel (GPIO1_OE、0x4804C134);

       GPIO1_9_DATA = 0x00000200;
       _raW_writel (GPIO1_9_data、0x4804C190);     //使用 ClearDataOut */
       //delay (1000);
       GPIO1_9_DATA = 0x00000200;
       _raW_writel (GPIO1_9_data、0x4804C194);   //使用 SetDataOut */
    #endif

    有什么原因可能会出错? CONFIG_ENABLE_GPIO1针对 uboot 启用、针对 MLO 禁用。

    谢谢、

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    Amol、

    [引用 USER="Amol N"]但是我们观察到 GPIO1[9] 不够低。  它将仅达到1.2875V。  除了一个内部上拉电阻约为22K 欧姆的器件外、该引脚上没有其他负载。[/QUERP]

    内部下拉/上拉电阻器非常弱、因此受到外部器件上拉电阻的影响。 我建议您使用外部下拉电阻器、因为内部下拉电阻器不足以满足您的设计需求。

    此致、
    帕维尔