[AVR单片机] 关于MAGE8硬件看门狗

[复制链接]
 楼主| SDCW 发表于 2009-9-17 14:19 | 显示全部楼层 |阅读模式
请教各位MAGE8硬件看门狗如何喂狗?
我是这样操作的但是不行,请问是哪里不对,谢谢!!
1、在熔丝位设置硬件看门狗
2、初始化程序:
_WDR();
WDTCR = ((1 << WDTOE) | (1 << WDE)); /*启动时序*/
WDTCR&=~(1<<WDCE);
WDTCR|=((1<<WDP2)|(1<<WDP1)|(1<<WDP0));//启动狗
3、喂狗程序:
_WDR();
NE5532 发表于 2009-9-17 22:05 | 显示全部楼层
你哪个地方不行?
 楼主| SDCW 发表于 2009-9-19 12:12 | 显示全部楼层
喂狗不行
zhujw2002 发表于 2009-9-22 10:08 | 显示全部楼层
WDTCR = ((1 << WDTOE) | (1 << WDE)); /*启动时序*/
WDTCR|=((1 << WDE)|(1<<WDP2)|(1<<WDP1)|(1<<WDP0));//启动狗
 楼主| SDCW 发表于 2009-9-22 21:38 | 显示全部楼层
我试过这样写法,结果狗不能启动。
Karlshen 发表于 2009-9-22 23:57 | 显示全部楼层
再检查一下其他的吧
zhujw2002 发表于 2009-9-23 09:08 | 显示全部楼层
不会吧,把WDTCR|= 改成 WDTCR=应该就可以了。
下面是我这边的用法,使用没有问题,你再试试
WDTCR = (1 << WDCE)|(1 << WDE)|(1 << WDP2)|(1 << WDP1);
WDTCR = (1 << WDE)|(1 << WDP2)|(1 << WDP1);
lovelyegle 发表于 2009-9-23 12:31 | 显示全部楼层
为啥那么改?讲讲道理
 楼主| SDCW 发表于 2009-9-25 14:03 | 显示全部楼层
谢谢!zhujw2002的热心,但是还是不行。
请问:再检查一下其他的吧,是指检查哪里?(软件狗可以启动也可以喂狗)
xuxindd 发表于 2009-9-25 15:12 | 显示全部楼层
记得在哪看过,m16的定义WDTCR时不能用&和|之类的  要直接赋值
您需要登录后才可以回帖 登录 | 注册

本版积分规则

61

主题

222

帖子

3

粉丝
快速回复 在线客服 返回列表 返回顶部