Part Number:TMS320F28377DOther Parts Discussed in Thread:C2000WARE
本人在调试28377D的看门狗复位功能时,发现有些板子可以正常复位,并从头开始运行程序,而有些板子则卡死在复位中,报如下错误:
C28xx_CPU1: Trouble Reading Register PC: (Error -1137 @ 0x0) Device is held in reset. Take the device out of reset, and retry the operation. (Emulation package 8.4.0.00006)C28xx_CPU1: Trouble Reading Register RPC: (Error -1137 @ 0x13) Device is held in reset. Take the device out of reset, and retry the operation. (Emulation package 8.4.0.00006)
对比了可以成功复位和不能成功复位的XRS引脚的电平信号,发现:
1. 可以成功复位的芯片的XRS电平有一个短暂的下拉脉冲,应该是复位电平拉低后立即拉高,如下图所示:
2. 不能成功复位的芯片的XRS电平在下降沿后就一直处于低电平,如下图所示:
3. 同时RESET失败的芯片在断电重新上电后还可能出现XRS反复复位的情况,如下图所示:
上述的现象,需要使用烧录器重新烧录程序后,芯片才能正常工作
复位电路如下图所示:
其中RESET_DSP连接到28377D的XRS上
开门狗强制复位的代码如下:
void WatchDogResetForBoot(void)
{
EALLOW;
WdRegs.WDKEY.bit.WDKEY = 0x0055;
WdRegs.WDKEY.bit.WDKEY = 0x00AA;
WdRegs.WDCR.all = 0x0028;
WdRegs.WDKEY.bit.WDKEY = 0x00;
EDIS;
}
Green Deng:
你好,看你的描述,你的PCB应该是自己设计的?不知道有没有验证过硬件是否可用?
你可以用官方例程测试一下硬件问题:C:\ti\c2000\C2000Ware_3_04_00_00\driverlib\f2837xd\examples\cpu1\watchdog
,
Haha Wang:
复位芯片也是TI的,复位芯片引脚的高低电平都是按照手册上来配置的。
,
Green Deng:
好的,你这边有用例程测试过了吗?是否还是有同样的问题?
因为正常情况看门狗使能之后出现的应该是周期性的复位信号,如果一直拉低则可能是外部原因更多一些。