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.

[参考译文] MSPM0-SDK:DL_GPIO_setDigitalInternalResistor 不考虑之前设置的 IOMUX 配置

Guru**** 2526700 points
Other Parts Discussed in Thread: MSPM0C1106

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1560642/mspm0-sdk-dl_gpio_setdigitalinternalresistor-does-not-respect-previously-set-iomux-configurations

器件型号:MSPM0-SDK
主题:MSPM0C1106 中讨论的其他器件

工具/软件:

您好:

我尝试通过 MSPM0C1106 上的上拉电阻器来配置数字输入、根据我正在使用的当前软件框架、这是一个两步过程、一个过程用于初始化数字输入、另一个过程用于启用上拉电阻器。

我在 DL_GPIO_setDigitalInternalResistor 函数中看到、此函数实际上会强制配置为 GPIO、并且还会擦除 INENA 字段、因为这是对整个 PINCM 寄存器的写入更新:

这意味着这些设置将被覆盖。 现在我知道还有另一个 DL_GPIO_initDigitalInputFeatures() API、但这会强制通过 API 调用选择输入或输出。  

现在、您可以在运行时修复该问题、检查是否为该特定输入设置了 GPIO DOE 位、但这会增加运行时间和其他代码。

理想情况下、setDigitalInternalResistor API 不会为您选择引脚功能或 IO 方向、而只是更改上拉/下拉位。  

如果不清楚这一点、请告诉我、但我认为这种实施方式并不是最好的。

Munan

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

    尊敬的 Munan:
    感谢您提请我们注意这一点。 我们能够检测到此问题(每次调用函数时引脚都设置为 GPIO)、我们将在新版本的 SDK 中修复此问题。

    此致、

    Diego Abad

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

    嗨、Diego、

    感谢您发送编修。

    Munan