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.
工具/软件:Code Composer Studio
您好!
我将使用此微控制器来控制两个电源转换器、每个转换器具有每个 CPU 及其 CLA。 CPU 负责 通信 和 状态 机、而 CLA 执行转换器的控制环路。
我的问题是 CPU1在没有顺序或明显原因的情况下自行复位、但 CPU2未复位。 首先、我在这两个 RAM 中对所有内容进行了编程、并且我能够知道 CPU1 复位 是因为它返回到 main ()(在 while (1)之前)、并且它尝试再次运行该程序、并且当它到达 EINT 时;指令它 反复复位。 我看 了 RESC 寄存 器、唯一的位设置(除了 TRSn 和 XRSn 位)是 WDRSn、但我从未配置过看门狗、实际上我一直禁用它。 然后、我 意识到 、有时当对微控制器进行编程时、该位会从头开始置位。 我还查看了 CPU2的 NMIFLG 寄存器、但一切看起来都很好、所有的位都被清除了。 问题是随机的,也许有一天发生了两次,接下来的两次没有发生。 我还要说的是、当转换器运行时、问题始终存在、而当转换器处于待机状态而没有开关时、问题从未发生。 它是否与电磁 干扰有关?
在遇到所有 这些问题 并认为这是 由.cmd 中的问题引起的情况下、我更改了它、现在我正在闪存中进行编程、但这次问题 稍有 不同、因为 CPU1失去控制、似乎没有程序。 在开关和测试转换器时、幸运的是、它会打开开关、但其输出 GPIO 会不断变化; 此外、当我进行调试时、所有变量的随机值 都会不断变化 、当我尝试停止程序以了解 正在发生的情况时、CCS 会提示 CPU 中没有符号。 问题可能是什么? 可能是电源错误吗?
我始终调试代码而不使用实时模式。 我尝试调试启用它、但代码停止、我得到错误-1142 (请参阅下图)。这次、转换器以不必要的危险方式停止、我决定不尝试重复该错误。
此致、
卢卡斯 B.
您好 Lucas、
在此器件上、CPU1复位时、CPU2始终会复位。 因此、如果您没有看到 CPU2被复位、则可能是 CPU1也没有被复位、但出于某种原因跳转到 main。 您是否曾尝试在 CPU1和 CPU2的 BootROM 入口点设置断点以查看断点是否在那里暂停(而不是在 main 上)?
此致、
Vivek Singh
您好、Vivek、
感谢您的回答。 最好确认、如果 CPU1复位、CPU2会复位。
它会使程序 跳转到 main 的原因是什么?
否、我没有尝试在 BootROM 中设置断点、但当我仅使用 RAM 存储器时、所有变量似乎都被重置为其初始值(在声明变量时定义)。 使用闪存的问题是程序似乎消失了、所有变量开始更改其值、当我尝试停止代码时、CCS 会提示没有符号。
此致、
卢卡斯 B.
它只能被复位、甚至 CPU2也会被复位。 复位后、如果您未正确设置仿真启动、则器件将不会跳转到您的闪存代码。 它将保留在 BootROM 中、因此您会看到没有符号的消息。 请正确设置仿真启动、然后它应该跳转至您的闪存中的代码。 此外、在 WD 复位时、该器件上的所有 RAM 都会被清除、因此如果您从 RAM 运行代码并且发生 WD 复位、它将清除所有 RAM、因此在复位后不会出现有效代码。
此致、
Vivek Singh
您好 Lucas、
是否有关于此问题的进一步更新?
此致、
Vivek Singh