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.

[参考译文] MSP430FR2311:MSP430FR2311

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/652075/msp430fr2311-msp430fr2311

器件型号:MSP430FR2311

大家好、

我对 MSP430FR2311IRGY 的 P1.0有非常奇怪的问题

 

我想使用端口 P1.0来读取电路板的硬件版本。 它可以通过0欧姆电阻器接地或悬空。

现在它是浮动的、我希望当我打开上拉电阻时、读数为1。

但加电后、有时我从 P1.0 1读取、有时从0读取。 它是随机的。 您可以看到上拉电阻器打开

我还用于读取硬件版本的其他端口 P1.4和 P1.5可以完全正常工作。

我强调、仅在上电后才使用此功能读取电路板硬件版本。 之后我不使用。

始终正常工作

 

 

我使用 IAR 编译器、最大代码大小优化。

控制器从内部时钟计时8MHz。 无晶体。

 读取硬件版本端口1的函数之前进行此初始化

 

 P1REN = 0x00;

  P1SEL0=0xCE;

 P1SEL1=0x00;

 P1DIR=0x00;

 

 

当我想读取 HW 版本时、我也在端口1.0上切换上拉电阻器、读取它并关闭上拉电阻器

 

空 ReadHWVersion (空)

volatile int i;

volatile unsigned char uHWVersion;

 

 P1OUT = 0x031;        //上拉电阻器

 P1REN = 0x31;         //上拉电阻使能

 

  

  for (i=0;i<200;i++){

              __no_operation();

  }

 uHWVersion = P1IN;    

  for (i=0;i<200;i++){

   __no_operation();

  }

 

 P1OUT = 0x0;        //上拉电阻器禁用

 P1REN = 0x0;         

 

谢谢、

Shlomi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您记得吗
    > PM5CTL0 &&~LOCKLPM5; //启用 GPIO
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    哦、还有:这是一个 Launchpad 吗? 如果是、您是否移除了 J10 (LED1)上的跳线?
    [这些是我最常忘记的事情。]
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    这是我的板。 而不是 LaunchPad。

     

    操作。 PM5.... 我只需在读取 HW 版本后执行一条命令。 这可能是一个错误。

    今天、我将对其进行测试并更新您的信息。

    您是否建议在加电后立即执行该操作?

    谢谢、

    Shlomi

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    在清零 LOCKLPM5之前、所有 GPIO 配置都不会生效、因此、是的、您应该在读取 P1.0之前执行此操作。

    如果您不使用 LPM3.5/4.5、您可以在程序中首先清除 LOCKLPM5。 在设置 GPIO 配置的一个永久性部分(在描述所有 GPIO 配置的许多/大多数应用中)后、稍后再执行该操作有一个(小)优势、因为您可能能够避免引脚上的一些干扰。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    这个问题看起来已经解决了。