嗨工程师你好:
在调试“watchdog_ex1_service”例程时,将“SysCtl_setWatchdogMode(SYSCTL_WD_MODE_INTERRUPT)”修改为“SysCtl_setWatchdogMode(SYSCTL_WD_MODE_RESET)”时程序跑飞,芯片没有复位
烦请帮忙看一下原因


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.
嗨工程师你好:
在调试“watchdog_ex1_service”例程时,将“SysCtl_setWatchdogMode(SYSCTL_WD_MODE_INTERRUPT)”修改为“SysCtl_setWatchdogMode(SYSCTL_WD_MODE_RESET)”时程序跑飞,芯片没有复位
烦请帮忙看一下原因


该警告是该处没有源码,所以编译器无法进行调试
该处地址的话,应该是在boot处的代码
能否给出上面的/整个调试截图?
SCSR 和 WDCR 寄存器受 EALLOW 保护。代码的前两行与这些寄存器进行交互。可能您没有启用访问。尝试下面的代码:
EALLOW;
setWatchdogMode(SYSCTL_WD_MODE_RESET);
setWatchdogPrescaler(SYSCTL_WD_PRESCALE_16);
EDIS;
serviceWatchdog();
enableWatchdog();
请参考
https://e2e.ti.com/support/microcontrollers/c2000-microcontrollers-group/c2000/f/c2000-microcontrollers-forum/604541/tms320f280049m-correct-way-to-perform-software-reset-operation-using-watchdog