怎样区分上电复位还是看门狗复位软件复位等等?
其他某单片机有上电复位标志,看门狗复位标志等等。STC好像没有这种标志。
我是根据RAM上电时是“随机”状态,判断是否是某个特殊的值来判断是否是某种复位。
但“随机”概率,也会有可能正好碰上这个特殊值,即使是1/65536也是有缺陷的。(我会把这个值定为4个字节,但无论多少字节,也是有碰上概率的。)
在不增加硬件成本情况下,靠程序好像没有办法避免。
可以通过看门狗溢出标志来判断是否看门狗溢出导致的复位:
if(WDT_CONTR & 0x80)
{
printf("Watchdog reset.temp=%u\r\n",temp);
}
else
{
printf("Power On reset.temp=%u\r\n",temp);
}详情参考附件例程
页:
[1]