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.

[参考译文] MSPM0G3507:M0 Driverlib 在更改上拉/下拉电阻时禁用 INENA

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1521312/mspm0g3507-m0-driverlib-disables-inena-when-changing-pull-up-down-resistor

器件型号:MSPM0G3507
主题:SysConfig 中讨论的其他器件

工具/软件:

当使用 DL_GPIO_setDigitalInternalResistor ()更改数字 GPIO 上拉/下拉电阻时、为什么 M0 Driverlib 会清除 PINCMx 寄存器中的 INENA (输入使能控制选择)位? 这是一个错误还是出于目的而做的?

我无法弄清楚更改电阻器设置后 GPIO 引脚为什么会停止工作。 经过一些实验后、这是因为在更改电阻值时 INENA 被禁用。 显然、如果要轮询引脚、必须启用 INENA。

奇怪的是、使用 DL_GPIO_setAnalogInternalResistor ()函数时、INENA 不会被清除。 (不过、使用此函数的"模拟"版本确实会更改 PC (引脚连接)设置、这就是我猜我们有这两个功能的原因。)

非常感谢、
Scott

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

    您好、Scott:

    我懂了。 是、如果该引脚用作 GPIO 或外设的任何输入功能、则需要启用 INENA。

    我可以询问您使用的是哪个 SDK 版本吗?

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

    我使用的是最新版本2.04.00.06。

    不过、由于我刚刚将工程更新为新版本、Driverlib 的这一部分似乎没有改变(从2.03.00.07开始)。  

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

    您好、Scott:

    明白。 我认为这是 driverlib 的错误、我已经报告了此问题。 感谢您的问题。

    另外、通过权变措施、您可以在 SysConfig 中配置 GPIO 上拉/下拉电阻器、也可以在应用程序代码中自行手动启用 INENA 位。

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

    谢谢。 我使用 SysConfig 设置电阻器的初始值。 然后在运行时使用 Driverlib 更改其中一个电阻。 正如您所指出的、我能够调整我的代码以设置 INENA... 当我发现这是发生了什么。

    感谢您报告此问题!

    请注意、
    Scott