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.

[参考译文] MSP-EXP430FR2433:Energia IDE 中针对延迟和睡眠命令的不同时序

Guru**** 2587345 points
Other Parts Discussed in Thread: ENERGIA, MSP-EXP430FR2433, MSP430G2553, MSP-EXP430FR5969, MSP430FR2433, MSP430FR5969

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/720094/msp-exp430fr2433-different-timing-for-delay-and-sleep-command-in-energia-ide

器件型号:MSP-EXP430FR2433
主题中讨论的其他器件:MSP430G2553MSP-EXP430FR5969MSP-EXP430G2MSP430FR2433EnergiaMSP430FR5969

您好!

我目前正在将一个项目从 MSP430G2553 MCU 迁移到较新的 MSPFR2433。 我有 MSP-EXP430FR2433板和 Energia 1.6.10E18 IDE 软件。

从一开始、我就看到了非常奇怪的东西- 延迟 和睡眠间隔之间有很大的差异、但仅在 MSP-EXP430FR2433电路板上。 在 MSP-EXP430G2和 MSP-EXP430FR5969中、一切正常。

例如、在 MSP-EXP430FR2433上运行最简单的闪烁基本代码:

#define LED RED_LED

void setup(){
引脚模式(LED、输出);

void loop(){
digitalWrite (LED、HIGH);//打开 LED (HIGH 是电压电平)
睡眠(5000);//等待5秒钟
digitalWrite (LED、low);//通过将电压设置为低电平来关闭 LED
延迟(1000);//等待一秒钟

 在该电路板上、打开的间隔几乎等于 关闭间隔(!)。  

而 MSP-EXP430G2和 MSP-EXP430FR5969上的相同代码运行正常。

原因是什么? 看起来、就像用于 MSP430FR2433的 Energia 库存在一些问题...是否可以修复它?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Vladimir、
    MSP430FR2和 MSP430G2之间存在一些差异。 因此、您使用的延迟函数(SLEEP()和 DELAY())无法在 MSP430FR2中正常工作。 如果要在代码中添加延迟、请尝试使用计时器或__delay_cycles ()。

    有关 MSP430FR2和 MSP430G2之间差异的更多信息。 请访问 guide.www.ti.com/.../slaa649e.pdf

    此致、
    现金 Hao
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    尊敬的 Cash Hao:
    感谢您的想法、我将检查该文件。
    但我的代码在 MSP430FR5969上也可以正常工作。 它是否也不同?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    您好、Vladimir、
    这是一个大问题。 MSP430之间有一些公共资源、但它们的名称不同是有原因的。 此代码用于 MSP430G2、可在 MSP430FR5969上正常工作。 但您不能说这两个器件是相同的。

    此致、
    现金 Hao
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的、我明白了。
    我的第一个问题是另一个方向-关于 Energia IDE 中 MSP430FR2的支持。虽然已经发布、但通过电路板管理器添加了11/20/17 MSP-EXP430FR2433支持、实际上一些基本功能不起作用。 但这个问题现在已经向 Energia IDE 开发人员提出了、我将尝试与他们联系。

    要解决睡眠命令的当前问题,是否有人会向我推荐采用 LPM3模式的 MSP430FR2433代码示例,如睡眠定时器?
    在我的情况下、MCU 频率将为1MHz (以降低功耗)、仅限内部振荡器。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已部分解决了这个问题。 数字示波器测量结果表明、MSP430FR2433上睡眠的实际计时间隔恰好比实际测量值大4 (四)倍(至少对于大间隔)

    例如、要获得1秒的低功耗延迟、需要使用睡眠(4000)等代码。 而延迟(1000)提供相同的1秒。

    在这个阶段、我将只使用校正因数、也许稍后我会尝试找到原因。