问题描述
我目前正在使用 FreeRTOS 在 Microsemi Smartfusion 2 上开发嵌入式应用程序。
它在调试模式和运行模式下都没有问题。但是,当我不使用调试/运行按钮 Eclipse 启动代码时(即当我关闭电源并再次打开时),它会正常启动,但会在几秒钟后自行重置。我觉得这个问题与调试器有关,但我无法解决。
有什么想法吗?
解决方法
您可能启用了看门狗定时器但未提供服务,但在连接调试器时会延迟?我对 SoC 不熟悉,但在 http://www.actel.com/kb/article.aspx?id=FQ1025 处有一个答案注释:
无论代码是从 eNVM 还是 eSRAM 运行,SoftConsole 都会在调试模式下自动禁用看门狗。
然后同一答案的第一部分指出:
看门狗在上电时启用,除非明确禁用。
所以猜测是您没有为看门狗定时器提供服务。我想向您指出清楚说明这一点的文档,但坦率地说 - 我放弃了!天啊。有一个看门狗 here 的注释。