社区
嵌入开发(WinCE)
帖子详情
wince看门狗的问题
叶帆
博客专家认证
业界专家认证
2007-11-26 05:11:13
wince启动后,怎样判断这次启动是看门狗重启,还是正常启动?
...全文
313
14
打赏
收藏
微信扫一扫
点击复制链接
分享
下载分享明细
分享
举报
写回复
14 条
回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
leftyu2010
2011-09-13
帮顶!!
打赏
举报
回复
赞
zclever
2008-08-06
[Quote=引用 12 楼 z820212zg 的回复:]
如果你用的是S3C2410CPU的话,可以查看GSTATUS2寄存器,这个里面的位标志着上电启动、从POWER-OFF模式恢复、以及是否是看门狗启动。
当然如果你是在应用程序里,记得要用虚拟地址访问这个寄存器。
[/Quote]
请教,应该怎么读这个寄存器啊?板子重启了都,应该怎么在它重启后读?是下次上电吗?
打赏
举报
回复
赞
z820212zg
2007-12-20
如果你用的是S3C2410CPU的话,可以查看GSTATUS2寄存器,这个里面的位标志着上电启动、从POWER-OFF模式恢复、以及是否是看门狗启动。
当然如果你是在应用程序里,记得要用虚拟地址访问这个寄存器。
打赏
举报
回复
赞
xingxing_ruby
2007-12-19
哈哈!啥看门狗启动呀!前几天总监还要我看一下如何开机自动安装软件哪。看门狗指的是执行这个程序吗?哈哈,太搞笑了!
打赏
举报
回复
赞
叶帆
2007-11-28
wince系统和windows系统不一样,关机时一般都是直接关闭电源。重启时直接上电即可。看门狗重启有些类似系统的软启动,即不掉电重启。
//看门狗初始化
#if (Use_Watchdog)
if (IsWinCEFlag) CHMIIO.OpenWatchdog(WatchdogTime);
#endif
while (ComServiceFlag)
{
if (ReadDataFlag)
{
ReadData();
}
Thread.Sleep(20);
//清看门狗
#if (Use_Watchdog)
if (IsWinCEFlag) CHMIIO.ResetWatchdog();
#endif
}
//看门狗关闭
#if (Use_Watchdog)
if (IsWinCEFlag) CHMIIO.CloseWatchdog();
#endif
}
注意:如果ReadData长时间没有返回,此时程序在规定时间内无法清看门狗,导致看门狗超时,这时候系统就会重启,该重启过程应用程序不可知,也不可控,提供这个接口的驱动程序仅仅提供看门狗操作的几个接口,也无法知道看门狗何时何地重启的。
我只想问在wince下有经验使用看门狗的,是如何区分当前系统是看门狗启动的,还是正常上电启动的。
打赏
举报
回复
赞
91program
2007-11-28
狗啊,楼上你不喂它,就会咬人的那一种
打赏
举报
回复
赞
wxf0204
2007-11-27
写配置文件,确定一个标志位,但是注意干扰问题保证能喂狗。。
打赏
举报
回复
赞
dthxman
2007-11-27
恩,就是楼上说的,如果那个看门狗是自己写的,直接写个配置文件,要重启的时候在文件中写个标志,每次重启读一次文件,然后再把文件中的标志去掉,,,
打赏
举报
回复
赞
dfpgb
2007-11-27
晕.... 一头雾水... 什么是狗?
打赏
举报
回复
赞
lbing7
2007-11-27
嗯,看门狗启动是热启动不会重置内存
如果不放心那啥的,可以写一个文件,保存到不丢失空间里也成
就是启动后进行读写花点时间...
打赏
举报
回复
赞
KevinCEC
2007-11-27
感觉逻辑上有问题啊。你看门狗是通过什么方式喂狗的啊? 不是你的wince程序吗? 如果是的话就好办了,对不对?
不是的话,也就是说这个看门狗不是你用的。既然你程序都没有死,理论上来说这个看门狗就不应该重启啊。它为什么要把你的程序复位了?
还有一种方法,开启你程序的时候,写一个标记到文件,然后正常关机的话,把这个标记清除掉。 每次启动的时候判断一下就行了。
打赏
举报
回复
赞
dthxman
2007-11-27
你的意思是你的板子上的看门狗是硬件实现的??就是开机后不管怎么样,都会到了时间重启??那能在bios中关了吗
打赏
举报
回复
赞
叶帆
2007-11-27
问题是计数到0的时候,是系统自己(或CPU,这是硬看门狗)重启的,也就是说,我不知道系统什么时候重启的,我也不知道在那个地方添加写标志的代码。
系统是wince4.2 cpu 三星2410 看门狗重启是CPU上的一个管脚触动的。
打赏
举报
回复
赞
91program
2007-11-26
自己设置标志位,启动的时候进行判断
打赏
举报
回复
赞
相关推荐
简易的Tomcat
看门狗
shell实战之tomcat
看门狗
Tomcat服务出
问题
后,自动重启 Tomcat
看门狗
简易的Tomcat
看门狗
tomcatdog shell实现
看门狗
功能 tomcat挂掉自动启动tomcat 程序无响应自动重启 Tomcat监控
icop板卡,
看门狗
例程,
wince
icop x86系列板卡,
看门狗
例程,平台
wince
wince
系统,操作S3C2410
看门狗
源码
evc4.0源码,编程操作2410CPU
看门狗
。系统
wince
系统,测试通过。
WINCE
下好用的IO调试工具IO
看门狗
WINCE
下好用的IO调试工具,IO
看门狗
,界面简单,操作容易,上手快
3、
看门狗
实验
1、
看门狗
作用:配置后用于防止程序进入死循环,喂狗时间到了之后就重启整个程序,所以整个过程中想要程序正常进行就必须进行不断的喂狗。 2、
看门狗
配置过程:先取消寄存器的写保护、设置
看门狗
的预分频系数与转载值、重载计数值喂狗、最后启动
看门狗
。
发帖
嵌入开发(WinCE)
微信扫一扫
点击复制链接
分享社区
下载分享明细
1.9w+
社区成员
4.1w+
社区内容
硬件/嵌入开发 嵌入开发(WinCE)
社区管理员
加入社区
帖子事件
创建了帖子
2007-11-26 05:11
社区公告
暂无公告