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:"停止目标 CPU&quot 时出现问题;在闪存中写入并且使用针对 TimerA2的 SMCLK 时

Guru**** 2582405 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/611028/msp430f5529-trouble-halting-target-cpu-when-writing-in-flash-and-using-smclk-for-timera2

器件型号:MSP430F5529

您好、TI、

我将 MSP430F5529 Code Composer Studio 结合使用

在我的程序中、我有一个使用 SMCLK (1MHz)的 TimerA2、并尝试每100ms 保存 uint16_t 样本。 现在、我有2个版本的代码:

第一个:其中我有一个使用 SMCLK 的 timerA2。 我从激活 LPM0开始、直到 SMCLK 唤醒 timerA2以进行测量并可解锁 LPM0、然后我们转到主循环以执行处理、然后它返回到 LPM0并再次等待 TimerA2。 当我调试这个版本时,当我第二次进入 LPM0时程序停止,它不继续,并且它给出一个错误“MSP430:停止目标 CPU 时出现问题:内部错误”

第二个:我对 LPM0进行了拼写检查、我使用了一个标志、因此我有一个 while 循环来查看该标志是否= 1。 当 TimerA2 ISR 变为1时、我转到处理、然后存储在闪存中。 现在、在这个版本中、当执行 EraseBank 指令(来自 DriverLib)时、程序停止、它不再响应唯一有效的按钮是暂停和停止、当我单击暂停时、我收到错误"没有可用于"0x24402"的源、  当我单击"View Disassembly"时、程序会移动到所提到的地址、该地址已满0x3FFF。

我的问题是、您是否知道这两个版本不起作用的原因? 问题是否源于我将 SMCLK 用于 TimerA2这一事实?

感谢您的支持。

努内丁。

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

    您能否提供可以重现问题的小代码片段? 如果删除闪存编程、程序是否正常运行?

    我认为代码片段对于解决此问题非常有帮助。 期待您的回应。

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

    您是否能够解决此问题?

    此致、
    Caleb Overbay