历史上的今天

今天是:2024年10月21日(星期一)

正在发生

2021年10月21日 | ATmega48 看门狗定时器

发布者:火箭飞人 来源: eefocus关键字:ATmega48  看门狗定时器 手机看文章 扫描二维码
随时随地手机看文章

看门狗定时器由独立的128 kHz片内振荡器驱动。通过设置看门狗定时器的预分频器可以调节看门狗复位的时间间隔,如 P44Table26 所示。看门狗复位指令 WDR 用来复位看门狗定时器。此外,禁止看门狗定时器或发生复位时它也被复位。复位时间有 10 个选项。如果没有及时复位定时器,一旦时间超过复位周期, ATmega48/88/168 就复位,并执行复位向量指向的程序。具体的看门狗复位时序在 P44Table26 有说明。
看门狗定时器还可用来产生中断。这在使用看门狗将系统从掉电状态唤醒是非常有用的。

为了防止无意之间禁止看门狗定时器或改变了复位时间,熔丝位 WDTON 为此提供了 2个不同的保护级别,如 Table 24.所示。请参见P47”改变看门狗定时器配置的时间序列” 。

看门狗定时器控制寄存器-WDTCSR

· Bits 7 – WDIF: 看门狗超时中断标志
当看门狗定时器超时且定时器作为中断使用时,该位置位。执行相应的中断处理程序时 WDIF 由硬件清零。也可通过对标志位写 "1” 对 WDIF 清零。当 SREG 寄存器中的 I 位与 WDIE 也置位时, MCU 执行看门狗超时中断。
· Bit 6 – WDIE: 看门狗超时中断使能
WDIE置"1”时WDE被清零,状态寄存器中的I位置位,看门狗超时中断使能。当看门狗定时器出现超时时执行相应的中断程序。

如果 WDE置位,当超时出现时, WDIE 由硬件自动清零。 这对使用中断时保证看门狗复 位的安全性非常有效。在 WDIE 位被清零后,下一个超时将引发系统复位。为避免看门狗 复位,在每次中断后必须对 WDIE置位。

· Bit 4 – WDCE: 看门狗修改使能
清零 WDE时必须置位 WDCE,否则不能禁止看门狗。一旦置位,硬件将在紧接的 4 个时 钟周期之后将其清零。请参考有关 WDE 的说明来禁止看门狗。修改预分频器也必须置位 WDCE,如 P47“改变看门狗定时器配置的时间序列”所示。
· Bit 3 – WDE: 使能看门狗
WDE为“1” 时,看门狗使能,否则看门狗将被禁止。只有在WDCE为“1”时WDE 才能清零。以下为关闭看门狗的步骤:
1. 在同一个指令内对WDCE 和WDE 写"1",即使WDE 已经为"1"。
2. 在紧接的4 个时钟周期之内对WDE 写"0"。这会禁用看门狗。

工作于安全级别 2 时,即使使用了上述的算法,也无法禁止看门狗定时器。参见 P47“改变看门狗定时器配置的时间序列”所示。

工作于安全级别 1 时, WDE 被 MCUSR 的 WDRF 功能所替换 ,请参见 P41”MCU 状态寄存器 – MCUSR” 中关于 WDRF 的说明。这意味着当 WDRF 置位时 WDE 同时置位。为清零 WDE,在使用上述过程禁用看门狗之前必须清零 WDRF。这一特性保证在出现故障时有多重复位,且在故障解决后可以安全地启动。

Note: 如果在应用中不需要使用看门狗定时器,则在器件初始化时应运行看门狗禁用程序。如果 看门狗被意外使能,如程序跑飞或出现 BOD,器件将会复位,且在结束复位时 WDRF 标 志位置位。这将自动激活看门狗,引发新的看门狗复位。为避免出现这种状况,在初始化 过程中应用程序应将 WDRF 标志位与 WDE控制位清零 。

· Bits 5,2..0 – WDP3..0:看门狗定时器预分频器 3, 2, 1, 与 0
当看门狗定时器使能时, WDP3..0 决定看门狗定时器的预分频器,如 Table26 所示。

下面的例子分别用汇编和 C 实现了关闭 WDT 的操作。在此假定中断处于用户控制之下 ( 比如已经禁止了x全局中断 ) ,因而在执行下面程序时中断不会发生。 

汇编代码例程
WDT_off:
; MCUSR中的WDRF 清零
ldi r16, ( 0<< WDRF ) 
out MCUSR, r16 ; 置位WDCE 与 WDE 
ldi r16, (1<< WDCE )|( 1<< WDE ) ; 关闭WDT 
ldi r16, (0<< WDE ) 
out WDTCSR, r16
ret

C 代码例程
void WDT_off(void)
{
/*MCUSR 中的 WDRF清零*/
MCUSR = 0x00
/* 置位WDCE 与 WDE */
WDTCSR = (1<< WDCE) | (1<< WDE);
/* 关闭WDT */
WDTCSR = 0x00;
}


关键字:ATmega48  看门狗定时器 引用地址:ATmega48 看门狗定时器

上一篇:ATmega48 中断向量
下一篇:ATmega48 基准电压使能信号和启动时间

推荐阅读

全球连接和传感领域的技术领军企业泰科电子(TE Connectivity,以下简称“TE”)将携严苛航空航天环境下的电气互联解决方案亮相2018中国国际航空航天博览会,为本地客户带来创新性系统连接解决方案,帮助飞机平台享受更低成本,更高效电力及数据连接,助力中国航空工业智能化升级。新一轮工业革命下,中国制造核心聚焦于“中国装备”,航空制造业作为先进...
在上海市市长国际企业家咨询会议的媒体采访活动上,东芝公司代表执行役社长兼首席运营官纲川智(Satoshi Tsunakawa)表示,“华为是我们芯片和半导体零部件非常重要的客户,这个地位迄今为止没有任何变化。” 今年 5 月底的时候,外界有消息称,东芝已经停止与华为合作,这引起了业界的广泛关注,随后东芝中国在其官方澄清说有关报道中所说的上海东芝公...
10月16日,小鹏车主和部分蔚来车主的微信群炸开了锅。据车主反馈,车辆的车机系统出现大面积断网,车机内部显示有信号但无法正常联网。虽然断网期间车辆可以正常行驶,车机系统亦能正常操作,但诸如在线音乐,导航信息,车载智能语音系统等功能通通无法正常使用,这引起了大批车主的不满。当日晚上,蔚来官方发布公告,技术部已初步查明为运营商网络问题,...
一年一度的双十一电商大战即将拉开序幕,各大商家摩拳擦掌推出多种优惠活动,以吸引“剁手党”目光。  据了解,今年天猫双11分为两个阶段售卖,两个售卖期时间分别是11月1——3日和11月11日。  同时,预售时间也分两波进行,两波预售时间提前到了晚上20点进行:10月20日晚20点启动第一波预售,11月4日晚20点开启第二波预售。  日前,从Play...

史海拾趣

问答坊 | AI 解惑

这个程序看的不明白

各位大侠,小弟是菜鸟,就懂点51单片机,最近公司要让用义隆的,小弟没接触过啊,现在忙着恶补呢,赶紧找了个程序熟悉一下。这个里面有一些地方不明白(小弟是超级菜鸟啊,如果有大侠好心就给赐教一下,千万别骂,好心的大侠可以加我84099711 (注 ...…

查看全部问答∨

关于F28027功耗问题

刚用F28027,PCB做好以后,通上电发现电流就有60MA,很奇怪,烧入程序后发现电流有90MA,不知道为什么耗那么多电流,这个正常吗,根据芯片资料,我只给3.3V供电,那个VREGENZ我用电阻下拉到地了,在没烧程序前拿掉电阻,电流就没了,但是烧好程序后那个电阻有无 ...…

查看全部问答∨

请教LPC1114驱动SD卡的问题

LPC1114, ZLG的那个板, 用的是 P0.3 - CS P0.6 - SCK P0.8 - MISO P0.9 - MOSI 用的是TKstudio   SSP那部分驱动过595, 没问题, 但不能驱动SD卡, SD驱动部分是ZLG的SD卡驱动, 在其基础上更改的 代码如下: void  SSP_Init (void){ ...…

查看全部问答∨

麻烦大家了,关于短信通过模块反向发送回单片机的问题,卡住了

单片机串口连接sim100模块,可以通过单片机串口发送指令给sim100正常发送短信,但是当我反过来用手机发送信息给sim100,再用单片机读取时,发现单片机似乎无法明白我发的是什么 比如我们平常用串口调试助手,除了用来接受单片机向串口发送的数据外 ...…

查看全部问答∨

SQLServer CE 3.1

哪位大哥有SQLServer CE 3.1在WinCE6.0下应用的例子啊,以及如何详细部署的 资料,有的请指教,问题解决在送分.谢谢~…

查看全部问答∨

msntp使用问题

请问各位大侠,msntp启动时候,能不能指定时区??? 如果不行,有没有其他的ntp软件可以的或其他的办法,我嵌入式的,请各位指点!!!!…

查看全部问答∨

治疗打呼噜的止鼾器

治疗打呼噜的止鼾器,抢救婚姻稻草根据很多报道可以看出,打呼噜已经成为损坏夫妻情绪的一大罪魁祸首,由于打呼噜而导致分居并最终离婚的例子多不胜数。也许大家会感到这种说法很新鲜,但这却是真实存在的问题,所以涌现了很多种治疗打呼噜的方法和 ...…

查看全部问答∨

超声波测距 UR-V10 说明书

1、UR-V10概况 1.1、产品特点●非接触性:利用超声波往返时间,换算出距离(有温度补偿);●量 程 大:量呈最大可达6米;●温度补偿:距离换算和 测距角度 都有温度补偿;●供电简单:与MCU 共用DC5V±5%电源;●低 功 耗:休眠状态几乎不耗电 ...…

查看全部问答∨

XL1101-D02的问题

我有两个无线模块XL1101-D02。例程是51的,可是通讯时时灵时不灵,偶尔能连上。 我移植到NUC140上以后,完全通讯不上了。 哪位大神搞过这个无线模块,给支个招。谢谢! …

查看全部问答∨

求助画PCB时出现的问题

在画PCB时,想让下图中间部分可以放置器件,环形部分不放器件,即把器件放在环形区域要变绿色,显示规则检查错误。我就将整个环形做成了一个PCB封装,但是这样器件放在中间部位也变绿色显示错误了。怎么才能只让环形区域部分显示绿色错误,而中间掏 ...…

查看全部问答∨
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
随便看看

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

电子工程世界版权所有 京ICP证060456号 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved