您好、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这一事实?
感谢您的支持。
努内丁。