麻烦TI专家和大侠们讲解一下:
1.看门狗程序大致如下,和例程差不多。运行后看门狗没有起作用。不知道是什么原因。
2.黄色语句改为SysCtrlRegs.SCSR = 0;后,程序处于始终初始化状态,后续程序不运行。
3.绿色语句历程中没有,需不需要设置?
4看门狗复位是否要和看门狗中断配合使用?
main()
{
DeviceInit();
……
EALLOW;
SysCtrlRegs.SCSR = BIT1;
EDIS;
// Enable the watchdog
EALLOW;
SysCtrlRegs.WDCR = 0x0028;
SysCtrlRegs.WDCNTR = 0x0064;
EDIS;
……
for(;;)
{
LoopCount++;
if(c==1) ServiceDog();
}
。
。
。
}
Hong Ji:
上面程序运行后发现寄存器中的WDCNTR从0到FF变化,WDKEY和WDCR为0x0000,为什么WDCR不是0x0028呢?这样的话watchdog module disabled,应该怎么操作呢?
麻烦TI专家和大侠们讲解一下:
1.看门狗程序大致如下,和例程差不多。运行后看门狗没有起作用。不知道是什么原因。
2.黄色语句改为SysCtrlRegs.SCSR = 0;后,程序处于始终初始化状态,后续程序不运行。
3.绿色语句历程中没有,需不需要设置?
4看门狗复位是否要和看门狗中断配合使用?
main()
{
DeviceInit();
……
EALLOW;
SysCtrlRegs.SCSR = BIT1;
EDIS;
// Enable the watchdog
EALLOW;
SysCtrlRegs.WDCR = 0x0028;
SysCtrlRegs.WDCNTR = 0x0064;
EDIS;
……
for(;;)
{
LoopCount++;
if(c==1) ServiceDog();
}
。
。
。
}
Seven Han:
建议您先调试下例程C:\ti\controlSUITE\device_support\f2803x\v130\DSP2803x_examples_ccsv5\watchdog
以及手册sprugl8c
麻烦TI专家和大侠们讲解一下:
1.看门狗程序大致如下,和例程差不多。运行后看门狗没有起作用。不知道是什么原因。
2.黄色语句改为SysCtrlRegs.SCSR = 0;后,程序处于始终初始化状态,后续程序不运行。
3.绿色语句历程中没有,需不需要设置?
4看门狗复位是否要和看门狗中断配合使用?
main()
{
DeviceInit();
……
EALLOW;
SysCtrlRegs.SCSR = BIT1;
EDIS;
// Enable the watchdog
EALLOW;
SysCtrlRegs.WDCR = 0x0028;
SysCtrlRegs.WDCNTR = 0x0064;
EDIS;
……
for(;;)
{
LoopCount++;
if(c==1) ServiceDog();
}
。
。
。
}
Hong Ji:
回复 Seven Han:
运行例程了,寄存器WDCNTR一直在计数,WDCR和WDKEY的值怎么都是0,看门狗中断也一直在计数。servicedog只在enable watchdog前执行了一次,为什么看门狗不复位。
怎么能看出来看门狗执行了复位功能。
麻烦TI专家和大侠们讲解一下:
1.看门狗程序大致如下,和例程差不多。运行后看门狗没有起作用。不知道是什么原因。
2.黄色语句改为SysCtrlRegs.SCSR = 0;后,程序处于始终初始化状态,后续程序不运行。
3.绿色语句历程中没有,需不需要设置?
4看门狗复位是否要和看门狗中断配合使用?
main()
{
DeviceInit();
……
EALLOW;
SysCtrlRegs.SCSR = BIT1;
EDIS;
// Enable the watchdog
EALLOW;
SysCtrlRegs.WDCR = 0x0028;
SysCtrlRegs.WDCNTR = 0x0064;
EDIS;
……
for(;;)
{
LoopCount++;
if(c==1) ServiceDog();
}
。
。
。
}
Hong Ji:
回复 Hong Ji:
程序容易跑飞,只想在程序跑飞时,看门狗程序能复位即可。怎么实现?
麻烦TI专家和大侠们讲解一下:
1.看门狗程序大致如下,和例程差不多。运行后看门狗没有起作用。不知道是什么原因。
2.黄色语句改为SysCtrlRegs.SCSR = 0;后,程序处于始终初始化状态,后续程序不运行。
3.绿色语句历程中没有,需不需要设置?
4看门狗复位是否要和看门狗中断配合使用?
main()
{
DeviceInit();
……
EALLOW;
SysCtrlRegs.SCSR = BIT1;
EDIS;
// Enable the watchdog
EALLOW;
SysCtrlRegs.WDCR = 0x0028;
SysCtrlRegs.WDCNTR = 0x0064;
EDIS;
……
for(;;)
{
LoopCount++;
if(c==1) ServiceDog();
}
。
。
。
}
Hong Ji:
回复 Hong Ji:
看门狗启用复位功能,SCSR是这么设置吗?
watchdog disable;
SysCtrlRegs.SCSR = BIT0
watchdog enable;
麻烦TI专家和大侠们讲解一下:
1.看门狗程序大致如下,和例程差不多。运行后看门狗没有起作用。不知道是什么原因。
2.黄色语句改为SysCtrlRegs.SCSR = 0;后,程序处于始终初始化状态,后续程序不运行。
3.绿色语句历程中没有,需不需要设置?
4看门狗复位是否要和看门狗中断配合使用?
main()
{
DeviceInit();
……
EALLOW;
SysCtrlRegs.SCSR = BIT1;
EDIS;
// Enable the watchdog
EALLOW;
SysCtrlRegs.WDCR = 0x0028;
SysCtrlRegs.WDCNTR = 0x0064;
EDIS;
……
for(;;)
{
LoopCount++;
if(c==1) ServiceDog();
}
。
。
。
}
Hong Ji:
回复 Hong Ji:
谁能解答一下