找回密码
 立即注册
查看: 1437|回复: 1

怎样区分上电复位还是看门狗复位软件复位等等?

[复制链接]
  • 打卡等级:偶尔看看I
  • 打卡总天数:16
  • 最近打卡:2025-04-14 09:15:06
已绑定手机

4

主题

23

回帖

274

积分

中级会员

积分
274
发表于 2023-4-13 17:53:02 | 显示全部楼层 |阅读模式
其他某单片机有上电复位标志,看门狗复位标志等等。

STC好像没有这种标志。
我是根据RAM上电时是“随机”状态,判断是否是某个特殊的值来判断是否是某种复位。
但“随机”概率,也会有可能正好碰上这个特殊值,即使是1/65536也是有缺陷的。(我会把这个值定为4个字节,但无论多少字节,也是有碰上概率的。)
在不增加硬件成本情况下,靠程序好像没有办法避免。
回复

使用道具 举报 送花

  • 打卡等级:以坛为家II
  • 打卡总天数:446
  • 最近打卡:2025-06-18 09:00:43
已绑定手机

40

主题

2064

回帖

7101

积分

论坛元老

积分
7101
发表于 2023-4-13 19:17:27 | 显示全部楼层
可以通过看门狗溢出标志来判断是否看门狗溢出导致的复位:
1.png
  1.     if(WDT_CONTR & 0x80)
  2.     {
  3.         printf("Watchdog reset.temp=%u\r\n",temp);
  4.     }
  5.     else
  6.     {
  7.         printf("Power On reset.temp=%u\r\n",temp);
  8.     }
复制代码
详情参考附件例程

串口验证看门狗-保留数据.zip

7.21 KB, 下载次数: 74

回复 支持 反对

使用道具 举报 送花

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|深圳国芯人工智能有限公司 ( 粤ICP备2022108929号-2 )

GMT+8, 2025-6-18 16:34 , Processed in 0.346814 second(s), 57 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表