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.

[参考译文] MSP430FR6989:无法启用S2的上拉电阻器(WFP 1.2)

Guru**** 2536680 points


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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/575998/msp430fr6989-cannot-enable-pull-up-resistor-for-s2-p1-2

部件号:MSP430FR6989

我正在使用CCS编写一个使用S1和S2的程序。  我想我正在使用正确的代码(P1REN = 0b0.011万)来启用开关上的上拉电阻 器,我有WFP 1.1 和WFP 1.2 设置作为输入。  但是,S2上的上拉电阻器未连接。  我用电压表进行了检查,S1具有Vcc,但S2处于浮动状态。  如果加载并运行开箱即用代码(秒表和温度传感器),然后运行代码,S2上的上拉电阻器工作正常。 如果我断开微控制器与计算机的连接并重新连接,S2上拉电阻器将不工作。  再次运行out-of =-box代码,它就能工作。

我在运行开箱代码之前和之后比较了所有P1寄存器,看不到任何差异,因此必须是其他设置。  在任何人提问之前,我有两个代码行    

WDTCTL = WDTPW | WDTHOLD;  //停止看门狗计时器
PM5CTL0 &=~LOCKLPM2;      //解锁引脚

作为代码的前两行。

我是否有任何想法,应该更改哪些寄存器或设置来纠正此问题?

感谢你的帮助。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    PxREN仅启用/禁用上拉或下拉电阻器。 要显式选择上拉(或下拉),您必须设置(或清除)相应的PxOUT位...因此,在您的情况下,您需要以下两行:

    P1OUT ||(BIT1|BIT2);
    P1REN ||(BIT1|BIT2);

    此致,

    Peppe
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    解决了问题。 现在很明显,您指出了这一点,但在您指出之前,我是看不见的。

    非常感谢。