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.

[参考译文] MSP430F5529:在 TI-RTOS 上执行 MCU 自检(IEC60730库)失败

Guru**** 2812305 points

Other Parts Discussed in Thread: MSP430F5529

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

https://e2e.ti.com/support/microcontrollers/msp-low-power-microcontrollers-group/msp430/f/msp-low-power-microcontroller-forum/1030870/msp430f5529-execute-mcu-self-test-iec60730-lib-fail-on-ti-rtos

主题中讨论的其他器件:MSP430F5529

我使用 MSP430F5529LP、CCSv7和 TI-RTOS 版本2.20.0.06.

当我使用 IEC60730库并调用 IEC60730_oscillator_test_testOsc ()函数时,该函数始终返回 test_failure。

我发现 freqCounter 不在 FREQUENCY COUNT_MIN 和 FREQUENCY COUNT_MAX 之间。

我的执行结果:

FREQUENCY COUNT_MIN:12925

FREQUENCY COUNT_MAX:13724

频率计数器:11733

 >> Oscillator_test 失败。

我的设置:

#define MAIN_CLOCK_FREQUENCY 8MHz

#define LFXT1_FREQUENCY 32768

#define LFXT1_FREQUENCY 分频器1

#define Percent FREQUENCY 漂移3.

但是,当我在非 RTOS 项目上运行时,函数(IEC60730_oscillator_test_testOsc () )将返回 Pass。

有人能告诉你这些不同的吗? 并告诉我如何设置可以在 TI-RTOS 上运行?

谢谢。

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

    您好、Zheng、

    感谢您的详细博文。 根据您的描述、您的 TI-RTOS 项目中的主时钟(MCLK)配置可能与非 RTOS 项目不同。 我建议比较项目之间的设置。   MSP430-IEC60730用户指南中的时钟故障测试部分 提到了如何  使用 FREQUENCY COUNT_MIN 和 FREQUENCY COUNT_MAX 来检查 MCLK 是否在指定频率下振荡。 此外、还使用了计时器 A、因此请检查其时钟源;如果为 XT1使用外部晶体、请确保集成负载电容器在两个项目中使用相同的设置。

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

    尊敬的 James:

    我学习  MSP430-IEC60730用户指南。  在第7节中、它说 TA0必须由具有高精度时钟源的 ACLK 供源。 注意:该测试要求 TA0由 ACLK 提供源、并配置为向上计数模式。 此外、TAIE 将被禁用。 因此、如果应用要求启用 TAIE、用户必须在测试完成时设置 TAIE。

    我发现 MSP430F5529 TI-RTOS 内核(SYS/BIOS)也使用  Timer0_A0 来管理内核。

     IEC60730_oscillator_test_testOsc () 在 TI-RTOS 上返回失败的原因是什么?

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

    您是否检查了 ACLK 的源时钟是否不同? 例如、您的非 RTOS 项目是否使用 ACLK 的外部 XT1晶体?您的 RTOS 项目是否使用内部 REFO? 此外、检查项目之间的 DCO 频率设置。