看门狗定时器
- 格式:doc
- 大小:302.50 KB
- 文档页数:3
s3c2440看门狗定时器的应用看门狗定时器的主要作用是在程序因为干扰而跑飞后,能够使系统复位,不至于使系统永远的死下去。
它的原理与一般的定时器没有多大区别,就是先要设置好一段时间,当超过这段时间后,就从当前运行的程序中跳出进入中断处理程序中。
但两者的主要差别是,一般的定时器中断是我们希望它发生的,因此我们不会在定时器中断发生前的那个时间段内干预它;而看门狗定时器中断是我们不希望它发生的,因此我们要想方设法地避免其发生。
主要的方法就是在中断发生前,重新对看门狗定时器的寄存器进行赋值,使它的定时器重新开始计时。
这种方法俗称喂狗,形象地比喻就是一条看门狗每隔一段时间(比如说一个小时)就会饿,所以就要叫唤,唯一使它不叫的方法就是给它喂食,那么下次叫唤的时间就是从当前喂食起的一个小时后。
因此只要在上次喂食后的一个小时内再给它喂食,它就永远不会叫唤。
s3c2440的看门狗定时器不仅可以引起系统复位,还可以引起一般的中断,因此s3c2440的看门狗定时器可以当作一般的定时器使用。
s3c2440看门狗定时器的时钟频率的公式为:PCLK÷(Prescaler + 1)÷Division其中Prescaler的取值范围为0~255,Division的取值为16,32,64和128。
例如,当PCLK 为50MHz时,设置Prescaler为249,Division为16,则看门狗定时器的时钟频率为12.5kHz。
这两个参数由寄存器WTCON提供,除此以外,该寄存器还可以设置是否有效看门狗定时器的超时复位,是否有效看门狗定时器的超时中断等。
看门狗定时器还有两个寄存器WTDA T和WTCNT,WTDA T用于确定超时期限,WTCNT为当前看门狗定时器的计数值,在第一次设置看门狗超时时间时,这两个寄存器都要被写入超时时间的初始值。
当要启动超时中断时,还要设置必要的中断寄存器,下面这个程序就是一个看门狗定时器的实例。
WATCHDOG定时器-jammys3c2440的看门狗定时器是当操作发生如噪声干扰、系统错误等故障时重启控制器。
看门狗定时器是可以作为一般的16位定时器用于响应中断请求,也可以是用于产生复位信号。
看门狗定时器的工作频率是将PCLK经过8位预分频器后,再通过16分频、32分频、64分频、或者128分频后得到的。
分频可在WTCON中设置。
用下面的公式算出watchdog定时器的工作频率:看门狗定时器的工作频率= 1/[ PCLK / (Prescaler value + 1) / Division_factor ]Prescaler value = 0~255Division_factor = {16,32,64,128}WTDAT & WTCNT当看门狗寄存器启动时,看门狗定时器数据寄存器(WTDAT)不能自动重装到定时计数器(WTCNT)。
因此,初始值必须在看门狗定时器启动前写入定时计数寄存器(WTCNT)。
l WATCHDOG TIMER CONTROL (WTCON) REGISTER 该寄存器用于允许/禁止看门狗定时器、中断,四种时钟信号的选择,以及预分频系数的设定。
l WATCHDOG TIMER DATA (WTDAT) REGISTERWTDAT寄存器用于设置看门狗定时持续时间。
在初始化看门狗定时器WTDAT的数值不能自动重载到定时计数器。
但是,当计数到0时,WTDAT会自动重载到WTCNT。
l WATCHDOG TIMER COUNT (WTCNT) REGISTERWTCNT寄存器是当前看门狗定时器正常工作下的数值。
注意,WTDAT寄存器的数值在初始化时不能重在到WTCNT寄存器,因此WTCNT寄存器需要在启动看门狗前设置好初始值。
演示程序:启动看门狗定时器后,程序进入LED闪烁循环,并且显示WTCNT的数值。
当WTCNT到0时候,系统重启。
/******************************************************函数名:void init_watchdog(void)作者:jammy-lee创建日期:2009-02-21说明:初始化看门狗定时器******************************************************/void init_watchdog(void){rWTCON = ((0x60<<8)|(3<<3)); //设置预分频值0x60,分频因子128rWTDAT = 0x6000;rWTCNT = 0x6000;rWTCON &= ~(1<<2); //禁止中断rWTCON |= ((1<<5)|(1<<0)); //启动看门狗,允许复位信号}/******************************************************函数名:void Main(void)作者:jammy-lee创建日期:2009-02-21说明: 主函数******************************************************/void Main(void){int wt_count;rGPBCON = 0x55555;rGPBUP = 0x7ff;while(1)Led(1,1);Uart_Printf("LED 1 power ON\n");delay(100);Led(1,0);Uart_Printf("LED 1 power ON\n");delay(100);wt_count = rWTCNT; //读取WTCNT寄存器当前的值Uart_Printf("the value of WTCNT is %d\n",wt_count); }}。
本次实训旨在使学生了解看门狗定时器的基本原理、工作方式以及在嵌入式系统中的应用,通过实际操作,掌握看门狗定时器的配置、使用方法,并学会利用看门狗定时器解决嵌入式系统中的故障和异常。
二、实训内容1. 看门狗定时器原理- 看门狗定时器是一种监测硬件或软件故障的定时器,其工作原理是在程序运行过程中不断重装载,以防止溢出引发中断或复位。
- 看门狗定时器分为独立看门狗和窗口看门狗两种类型。
2. 独立看门狗(FWDGT)- 独立看门狗使用独立的32kHz内部时钟,适用于对计时精度要求不高的场合。
- 独立看门狗内部有一个12位的向下计数的定时器,当计数值达到0时,会产生一个系统复位。
3. 窗口看门狗(WWDGT)- 窗口看门狗使用PCLK分频而来的时钟,计数器位数较小,需要在窗口范围内重装载以防复位。
4. 看门狗定时器的配置与使用- 了解看门狗定时器的相关寄存器,如预分频器、计数器、重装载寄存器、键寄存器和状态寄存器等。
- 根据实际需求配置看门狗定时器的时钟源、计数器值、窗口范围等参数。
- 在程序中定期重装载看门狗定时器,以防止系统复位。
5. 看门狗定时器的实际应用- 利用看门狗定时器解决嵌入式系统中的故障和异常。
- 通过看门狗定时器监控程序运行状态,防止死锁。
- 作为系统安全特性的一部分,确保在检测到异常时能够安全地重启系统。
1. 准备工作- 准备好实训所需的硬件设备和软件环境,如单片机开发板、调试器、IDE等。
2. 环境搭建- 根据实际需求搭建实训环境,包括硬件电路连接和软件配置。
3. 看门狗定时器配置- 了解看门狗定时器的相关寄存器,如预分频器、计数器、重装载寄存器、键寄存器和状态寄存器等。
- 根据实际需求配置看门狗定时器的时钟源、计数器值、窗口范围等参数。
4. 程序编写- 编写程序,实现看门狗定时器的初始化、重装载和监控功能。
- 在程序中定期重装载看门狗定时器,以防止系统复位。
5. 调试与验证- 使用调试器对程序进行调试,观察看门狗定时器的运行状态。
016:MSP430_WDT看门狗定时器1, 看门狗定时器概述看门狗定时器(WDT)是 MSP430 系列单⽚机中常⽤的⼀种部件。
在⼯业现场,往往会由于供电电源、空间电磁⼲扰或其他原因引起强烈的⼲扰噪声。
这些⼲扰作⽤于数字器件,极易使其产⽣误动作,从⽽失去应有的控制功能,引起 MSP430 发⽣“程序跑飞”事故。
若不进⾏有效的处理,程序就不能回到正常的状态,从⽽失去应有的控制功能。
看门狗定时器正是为了解放这类问题⽽产⽣的,尤其是在具有循环结构的程序任务中更为有效。
在正常操作器件,⼀次 WDT 定时时间到,将产⽣⼀次器件复位。
如果通过编制程序使 WDT 定时时间稍⼤于程序执⾏⼀遍所⽤的时间时,并且程序执⾏过程中都有对看门狗定时器清零的指令,使计数器重新计数,则程序正常执⾏时,就会在 WDT 定时时间到达之前对 WDT 清零,不会产⽣ WDT 溢出,如果由于⼲扰使程序跑飞,则不会在 WDT 定时时间到达之前执⾏ WDT 清零指令,WDT 就会产⽣溢出,从⽽产⽣系统复位 CPU 需⽤重新运⾏⽤户程序,这样程序就可以⼜恢复正常运⾏状态。
MSP430 看门狗除了具有上述系统监测的特定⽤途之外,还可以作为内部定时器来使⽤,当选择的时间到达之后,和其他定时器⼀样产⽣⼀个定时中断。
此外 WDT 还可以被完全停⽌活动以⽀持超低功耗应⽤2 看门狗定时器结构3 看门狗定时器寄存器[1] WDTCTL 看门狗控制寄存器WDTCTL 由两部分组成:⾼ 8 位是对 WDT 操作的控制命令。
要写⼊操作 WDT 的控制命令,出于安全原因必须先正确写⼊⾼字节看门狗⼝令。
⼝令位 5AH,如果⼝令写错将导致系统复位。
读 WDTCTL 时,不需要⼝令,可直接读取地址 120H 中的内容,读出数据低字节位 WDTCTL 的值,⾼字节始终位 69H。
WDTCTL 除了看门狗定时器的控制位之外,还有两个⽤于设置 NMI 引脚功能。
WDTISx:选择看门狗定时器的计时输出其中 T 是 WDTCNT 的输⼊时钟源周期。
dsp 看门狗定时器的作用解析
一、DSP 看门狗定时器介绍
看门狗在外围监控DSP 中软件的运行以及硬件的操作,当CPU 出现故障时,看门狗将执行系统复位。
如果软件进入了一个不正确的循环或者CPU 出现暂时的混乱,看门狗定时器将出现溢出来使系统复位。
在大多数情况下,DSP 短暂的混乱以及CPU 不正确的操作都可以被看门狗所清除并重新进行设置。
由于看门狗稳定的性能,其增加了CPU 的可靠性,以确保系统的完整。
在看门狗中这个外围设备中,所有的寄存器都是8 位的,连接到16 位CPU 的低8 位外围数据总线上。
240XA 看门狗定时器和C240 看门狗定时器唯一的区别就是其缺乏实时的中断能力。
看门狗定时器将通过对从CPU 出来的CLKOUT 进行分频而得到自己所需的时钟
二、看门狗定时器工作原理
使用时,WDT 将递增,直到溢出,或称超时。
除非处于休眠或空闲模式,WDT 超时会强制器件复位。
为避免WDT 超时复位,用户必须定期用。
看门狗定时器的使用流程简介看门狗定时器是一种用于监控系统运行状态的硬件设备。
当系统出现故障或超时的情况下,看门狗定时器会自动重启系统,以确保系统的稳定运行。
本文将介绍看门狗定时器的使用流程,包括初始化、配置、启动和监控等步骤。
初始化初始化是使用看门狗定时器的第一步。
在使用之前,需要确保系统已经正确连接了看门狗定时器,并且加载了相应的驱动程序。
步骤1.打开终端或命令行界面。
2.使用以下命令初始化看门狗定时器:$ watchdog_init3.检查初始化结果,确保看门狗定时器成功初始化。
配置配置是使用看门狗定时器的关键步骤。
通过配置,可以设置看门狗定时器的超时时间和动作。
步骤1.打开终端或命令行界面。
2.使用以下命令配置看门狗定时器的超时时间:$ watchdog_set_timeout 5这里将超时时间设置为5秒,你可以根据需要进行调整。
3. 使用以下命令配置看门狗定时器的重启动作:$ watchdog_set_action restart这里将重启动作设置为自动重启。
启动启动是使用看门狗定时器的关键步骤。
通过启动,可以使看门狗定时器开始监测系统运行状态。
步骤1.打开终端或命令行界面。
2.使用以下命令启动看门狗定时器:$ watchdog_start3.检查启动结果,确保看门狗定时器成功启动。
监控监控是看门狗定时器的主要功能。
通过监控,可以实时检测系统的运行状态,并在系统超时或故障时进行相应的动作。
步骤1.让系统正常运行。
2.看门狗定时器会定时检测系统的运行状态。
3.如果系统在超时时间内未接收到看门狗定时器的喂狗信号,则看门狗定时器会触发动作,例如自动重启系统。
总结通过以上的流程,我们可以使用看门狗定时器来监控系统的运行状态。
首先,我们需要初始化看门狗定时器,并配置超时时间和重启动作。
然后,启动看门狗定时器,并让其监控系统的运行状态。
在系统发生故障或超时的情况下,看门狗定时器会自动触发相应的动作,以确保系统的稳定运行。
内部与外部看门狗定时器的比较摘要:本文对内部(集成在处理器内部)看门狗定时器(wtd)与外部(基于硬件)wdt的优势和劣势进行了对比。
内部看门狗便于设计,但容易失效。
maxq2000微控制器的wdt可以作为内部看门狗的一个例子。
基于硬件的看门狗定时器需要占用额外的电路板空间,但在对于可靠性要求较高的设计中确实不可或缺的。
本文给出了一个对照表,总结了每种wdt方案的优缺点。
引言看门狗定时器(wdt)在发生违宪的软件运转状态时用以私自登位(硬件登位)嵌入式微处理器或微控制器,失灵状态可以就是直观地引爆寄存器的某一位,或者就是射线阻碍或emi(电磁辐射)。
本文介绍了一些针对具体应用选择最佳定时器的考虑。
wdt的典型应用领域防止微处理器闭锁是wdt的一个典型应用,通常,嵌入式软件有一个“主循环”程序,用其调用子程序以实现不同的任务。
每次程序循环对wdt进行一次复位,如果任何原因造成程序循环操作失败,看门狗定时器则发生超时,对器件进行复位。
具备wdt功能的系统非常适合检测误码,中断(包含存储器故障,emi对存储器或USB振动)可能将引致临时性的误码。
这些误码可以引致处理器输出、输入数据的极性滑动,当误码没有导入至程序信息中时,微处理器将可以继续执行错误的代码。
很有可能导致处理器已经开始继续执行操作数,而非操作方式代码。
程序已经开始继续执行这种错误代码时,将导致程序运行不正常,无法提供更多看门狗清零信号,从而引致处理器登位。
合理的系统设计能在登位后恢复正常系统的正常运转。
需要注意的是,wdt不能检测瞬态故障,按照定义,只有在wdt计数器达到预定的时间间隔时才会复位处理器。
正是这一原因,需要选择一个最短超时周期,以便在系统失控之前由wdt产生复位,使系统恢复正常工作。
内部和外部wdtwdt可以内置于微处理器,例如:maxq2000微控制器;也可以是一个独立的ic(外部wdt),或作为支持asic的一部分。
无论是内部wdt,还是外部wdt,各有其优缺点。
MSP430学习点滴——看门狗定时器看门狗有三种工作模式:停止模式,计时器模式,看门狗模式。
控制寄存器WDTCTL 由两部分组成,高8 位用作口令,低8 位实现对WDT 的控制操作。
要实现对WDT 的操作控制,必须先写入高字节看门狗口令。
口令为5AH,头文件里一般将WDTPW 宏定义为5AH.WDTCTL 寄存器各位定义如下:15~8 7 6 5 4 3 2 1 0 口令HOLD NMIES NMI TMSEL CNTCL SSEL IS1 IS0IS0 IS1 选择看门狗定时器的定时输出,其中T 是WDTCNT 的输入时钟源周期。
一般宏定义WDTIS0 为0x0001,WDTIS1 为0x0002. 0 T*2(PUC 复位后的值)1 T*22 T*23 T*2SSEL选择WDTCNT 的时钟源。
一般宏定义WDTISSEL 为0x0004. 0 SMCLK (PUC 复位后的值) 1 ACLKCNTCL 当该位为1 时清除WDTCTL。
一般宏定义WDTCNTL 为0x0008.TMSEL 工作模式的选择。
一般宏定义WDTTMSEL 为0x0010. 0 看门狗模式(默认) 1 定时器模式NMI选择RST/NMI 引脚功能,在PUC 后被复位。
一般宏定义WDTNMI 为0x0020.0 RST/NMI 引脚为复位端 1 RST/NMI 引脚为边沿触发的非屏蔽中断输入。
NMIES 选择中断的边沿触发方式。
一般宏定义WDTNMIES 为0x0040. 0 上升沿触发NMI 中断1 下降沿触发NMI 中断HOLD 停止看门狗定时器工作降低功耗。
一般宏定义WDTHOLD 为0x0080. 0 WDT 功能激活1 时钟禁止输入,计数停止。
因此,可以根据WDTCTL 寄存器的TMSEL 和HOLD 控制位设置WDT 工作在看门狗模式、定时器模式和低功耗模式。
C 语言实现低功耗模式的语句:WDTCTL = WDTPW + WDTHOLD;C 语言实现定时器模式的语句:WDTCTL =WDTPW+WDTTMSEL+WDTCNTCL+WDTIS0;C 语言实现看门狗模式的语句:设置看门狗:WDTCTL = WDT_MRST_0_5。
watchdogtimer技术原理在嵌入式系统中,实时时钟(RTC)与看门狗(WatchDog)是两个非常重要的组成部分。
RTC用于提供时间基准和定时功能,而WatchDog则用于系统出现异常情况时的一种保护机制。
今天,我们主要来谈谈看门狗定时器(WatchDogTimer)的基本原理及其在嵌入式系统中的应用。
一、看门狗定时器的基本原理看门狗定时器是一种被动设备,它有一个计数器,当计数溢出时,它会自动复位CPU或者向CPU发送一个中断信号。
如果复位信号没有到达CPU或者CPU没有响应溢出信号,那么这个看门狗定时器就会不断地产生复位信号,导致系统崩溃。
因此,为了防止系统崩溃,我们通常会在程序中设置一个手动复位看门狗定时器的指令,以使系统恢复正常运行。
看门狗定时器可以分为软件看门狗和硬件看门狗两种类型。
软件看门狗通过修改CPU的系统时钟信号来实现其计数功能,硬件看门狗则通过一个独立的定时器芯片来实现其计数功能。
在实际应用中,硬件看门狗更为常见,因为它具有更高的可靠性和稳定性。
二、嵌入式系统中的看门狗定时器嵌入式系统中的看门狗定时器通常被用来保护系统的正常运行。
当系统出现异常情况时,看门狗定时器会自动复位CPU或者向CPU发送一个中断信号,从而避免系统崩溃。
具体来说,嵌入式系统中的看门狗定时器通常有以下几种应用方式:1.嵌入式系统的时钟基准:嵌入式系统的时钟基准通常由RTC和看门狗定时器共同完成。
首先,RTC提供时间基准和定时功能;其次,看门狗定时器用来检测系统是否正常运行。
如果系统出现异常情况,看门狗定时器会自动复位CPU或者向CPU发送一个中断信号,从而保证系统的时钟基准不会出现偏差。
2.嵌入式系统的安全保护:嵌入式系统中的安全保护通常由看门狗定时器和其他的保护机制共同完成。
当系统出现异常情况时,看门狗定时器会自动复位CPU或者向CPU发送一个中断信号,从而避免系统崩溃;同时,其他的保护机制可以用来检测系统的其他异常情况,如电源异常、通信异常等。
PIC单片机之看门狗
PIC 单片机之看门狗
看门狗定时器
看门狗定时器(WDT,WatchDogTImer)是单片机的一个组成部分,它实际上是一个计数器,一般给看门狗一个数字,程序开始运行后看门狗开始倒计数。
如果程序运行正常,过一段时间CPU 应发出指令让看门狗复位,重新开始倒计数。
如果看门狗减到0 就认为程序没有正常工作,强制整个系统复位。
工作原理
使用时,WDT 将递增,直到溢出,或称超时。
除非处于休眠或空闲模式,WDT 超时会强制器件复位。
为避免WDT 超时复位,用户必须定期用PWRSAV 或CLRWDT 指令将看门狗定时器清零。
如果WDT 在休眠或空闲模式下超时,器件将唤醒并从PWRSAV 指令执行处继续执行代码。
在上述两种情况下,WDTO 位(RCON《4》)都会置1,表示该器件复位或唤醒事件是由于WDT 超时引起的。
如果WDT 将CPU 从休眠或空闲模式唤醒,休眠状态位(RCON《3》)或空闲状态位(RCON《2》)也会置1,表示器件之前处于省电模式。
看门狗的工作原理
看门狗是一种系统监控机制,其工作原理是通过周期性的定时器或硬件电路监控系统的运行状态。
当系统正常运行时,看门狗会定时收到一个重置信号,并将计数器清零,保持系统处于正常状态。
若系统发生故障或崩溃,计数器无法被重置,看门狗将会触发重启或采取其他的故障处理措施。
具体来说,看门狗工作的步骤如下:
1. 看门狗定时器初始化:在系统启动时,看门狗定时器会进行初始化,设置定时周期和计数器初始值。
2. 看门狗喂狗操作:系统在正常运行过程中,会周期性地执行一个喂狗操作,将一个特定的值写入看门狗计数器,并重置计数器。
这个操作会告诉看门狗系统正常运行,并保持计数器在安全范围内。
3. 看门狗超时检测:看门狗会一直监控计数器的数值,如果在设定的时间内没有收到喂狗操作,即计数器没有被重置,看门狗会认为系统出现故障。
4. 看门狗触发故障处理:当看门狗检测到系统故障时,它会采取相应的故障处理措施,比如触发硬件重启、发出警告信号、记录故障信息等。
总的来说,看门狗的工作原理是通过定时监控和检测系统状态,
保证系统处于正常运行状态,并在系统故障时采取相应的处理措施,提高系统的可靠性和稳定性。
看门狗定时器的工作原理嘿,小伙伴们!今天咱们来聊一聊看门狗定时器这个超有趣的东西。
你可以把看门狗定时器想象成一个超级负责的小管家。
在电子设备这个大家庭里呀,有时候会出现一些小混乱,就像我们生活中家里突然电线短路啦之类的情况。
这个时候,看门狗定时器就开始发挥它的大作用了。
简单来说呢,看门狗定时器有个内部的计数器。
这个计数器就像一个小沙漏,沙子不断地流,代表着时间在不停地走。
设备正常运行的时候呀,就会定期给这个小沙漏来个“倒转”,让沙子重新开始流,这就叫做“喂狗”。
比如说,我们设定每10秒“喂狗”一次,就像我们每10分钟给家里的小宠物喂一次食一样。
那要是设备出问题了呢?就像主人突然不在家,没办法给小宠物喂食了。
这时候,计数器里的沙子一直流,一直流,等到沙子全部流完了,也就是计数器达到了预先设定的一个时间上限,比如说30秒,这个时候,看门狗定时器就会认为设备出大问题啦。
然后它就像一个小警报器一样,触发一个复位信号。
这个复位信号就像给整个电子设备来了个重启按钮,让设备重新开始工作,就像我们电脑死机了,按一下重启键一样。
看门狗定时器的这个时间上限是可以根据不同的设备需求来设置的。
比如说一些对稳定性要求特别高的医疗设备,这个时间可能就设置得比较短,因为哪怕一点点小故障都可能影响病人的安全。
就像医院里的一些精密仪器,必须时刻保持最佳状态。
而一些普通的电子小玩意呢,这个时间可能就设置得稍微长一点。
而且哦,看门狗定时器的计数器通常是基于时钟信号来工作的。
这个时钟信号就像整个定时器的心跳一样,有规律地跳动着,驱动着计数器的运行。
如果时钟信号不正常了,那这个小管家也会察觉到,就像我们的心跳不正常了,身体肯定也会出问题一样。
总之呢,看门狗定时器就是通过这种简单又巧妙的方式,时刻监督着电子设备的运行,保证设备不会因为一些突发的故障而一直处于错误的状态,是不是很神奇呢?。
LPC2103之看门狗定时器WatchDog Timer (WDT)page225 看门狗定时器的定时范围为TPCLK x 256x 4 到TPCLK x 232 x 4)。
看门狗定时器的设置步骤如下:?在WDTC 寄存器设置看门狗定时器的重装值?在WDMOD 寄存器设置模式?先后写入0xaa 和0x55到WDFEED 寄存器以启动看门狗定时器?为防止看门狗产生复位/中断,必须在看门狗计数器下溢前进行喂狗当看门狗定时器下溢,程序计数器将如同产生了外部复位信号一样从0x00000000 地址重新启动。
看门狗定时输出标志(WDTOF)能够检测并是否看门狗导致了复位。
WDTOF 标志位必须软件清除。
看门狗相关寄存器寄存器功能访问复位值地址WDMOD 看门狗模式寄存器,这个寄存器包括了看门狗定时器的基本模式和状态R/W00xE000 0000WDTC 看门狗定时器常量寄存器,存放定时器计数值R/W0XFF0xE0000004WDFEEDWatchdog Feed sequence register,写入oxaa 和0x55 重新加载计数值WONA0xE000 0008WDTV 看门狗定时器值寄存器,该寄存器读出定时计数当前值RO0XFF0xE000 000CWatchdog Mode register (WDMOD - 0xE000 0000)看门狗操作模式选择WDENWDRESET 操作模式0X (0 or 1)不启动看门狗定时器10 看门狗中断模式。
运行看门狗中断,但WDRESET 不使能。
当看门狗定时器下溢,WDINT 标志位将置位并且产生看门狗中断请求11 看门狗复位模式。
运行看门狗中断且WDRESET 使能。
看门狗定时器下溢将复位控制器,一旦WDEN 或WDRESET 位设置后将不能够软件清除,只有在外部复位或者看门狗定时器下溢时才会被清除。
当看门狗定时器溢出时,看门狗定时器溢出标志位WDTOF 置位。
一、外部看门狗
一般硬件设计的时候使用芯片外部看门狗,该看门狗使用一个不停翻转GPIO来控制。
二、内部看门狗
一般ARM芯片都是有内部看门狗模块。
S5PV210内部看门狗模块有两个功能:
1、作为看门狗。
打开看门口狗后,如果没有“喂狗”,看门狗计数值减到0,会产生一个reset信号,S5PV210就会复位,从BL0重新执行代码。
2、普通的定时器。
可以产生周期性的中断。
三、210看门狗模块的框图
1、看门狗“喂狗”就是向计数寄存器赋一个新的计数值。
2、看门狗clock(基准周期)=
四、看门狗的寄存器
1、WTCON
2、WTDA T
3、WTCNT
4、WTCLRINT
五、实验程序。