dsp看门狗定时器
DSP第6章TMS320F2812的时钟及看门狗
1 1 1 1 1 1 1 1 1 3 1 6 程序监视器控制寄存器 程序监视器复位密钥寄存器 PLL控制寄存器 控制寄存器 系统控制&状态寄存器 系统控制 状态寄存器 程序监视器计数寄存器 低功耗工作模式控制寄存器0 低功耗工作模式控制寄存器 低功耗工作模式控制寄存器1 低功耗工作模式控制寄存器
10
PLL旁路 旁路
PLL使能 使能
7
盐城工学院
电气与新能源综合实验教学示范中心
DSP应用技术 DSP应用技术
处理器内部时钟电路
8
盐城工学院
电气与新能源综合实验教学示范中心
DSP应用技术 DSP应用技术
6.1.3 时钟单元寄存器
长度 (×16 位)
寄存器名
地址
描述
保留
0x7010~ ~ 0x7019
第6章 TMS320F2812的时钟及看门狗 TMS320F2812的时钟及看门狗
1
盐城工学院
电气与新能源综合实验教学示范中心
DSP应用技术 DSP应用技术
6.1 时钟单元
6.1.1 时钟单元基本结构
TMS320F2812处理器内部集成了振荡器、锁相环、看 处理器内部集成了振荡器、锁相环、 处理器内部集成了振荡器 门狗及工作模式选择等控制电路。 门狗及工作模式选择等控制电路。 振荡器、锁相环主要为处理器 主要为处理器CPU及相关外设提供可 振荡器、锁相环主要为处理器 及相关外设提供可 编程的时钟, 编程的时钟,每个外设的时钟都可以通过相应的寄存器 进行编程设置; 进行编程设置 看门狗可以监控程序的运行状态 提高系统的可靠性。 可以监控程序的运行状态, 看门狗可以监控程序的运行状态,提高系统的可靠性。
8
SPIENCLK
SP第6章看门狗定时器模块
位7:是WD的标志位。该位表明了WD是否发生过系统复 位信号。WD引发的系统复位可将该位置1,任何其他的系统复 位事件对该位都没有影响。当该位为0时,表示自上次 WDCNTR清零以来,WD没有发出过系统复位信号;为1时, 表示自上次WDCNTR清零以来,WD已经发出过系统复位信 号。 位6:是WD的使能位。该位只有在系统配置寄存器SCSR2的
《DSP原理及应用》
4
北京理工大学珠海学院信息学院
第6章 看门狗定时器模块
6.2 WD寄存器的配置
WD的所有寄存器都是8位字宽,并且与16位CPU外设 数据总线的低8位相连。对WD操作的设置比较简单,可通过 3个相关寄存器来配置。 1.WD计数寄存器(WDCNTR) :地址为7023h WD计数寄存器包含看门狗计数器的计数值,复位值为0。 2.WD复位关键字寄存器(WDKEY) :地址为7025h 当55h及紧接其后的AAh顺序写入WDKEY时,则该寄存器 将清除WDCNTR寄存器中的内容。写入到WDKEY中任何其他 内容,都将产生一个系统复位操作。
《DSP原理及应用》
5
北京理工大学珠海学院信息学院
第6章 看门狗定时器模块
3.WD控制寄存器(WDCR) :地址为 7 6 4 3 5 7029h
WDFLAG WDDIS WDCHK2 WDCHK1 WDCHK0
2 WDPS2
1
0
WDPS1
WDPS0
WD OVERRIDE位为1时,才可以进行写操作。该位写0时,使 能看门狗;写1时禁止看门狗。 位5-3:是看门狗校验位。当用户对WDCR进行访问时,必须 将这3位写入101ห้องสมุดไป่ตู้否则将引发一个系统复位事件。
第6章 看门狗定时器模块
看门狗芯片原理
看门狗芯片原理
看门狗芯片是一种用于监控系统运行状态的硬件设备。
它通过定时检测系统的运行情况,以确保系统在出现故障或崩溃时能够自动重启或采取其他应急措施,从而提高系统的稳定性和可靠性。
看门狗芯片的工作原理如下:
1. 看门狗计时器:看门狗芯片内置了一个计时器,其作用是定时检测系统的运行情况。
通常,看门狗计时器的定时周期较短,例如几十毫秒或几秒钟。
2. 系统运行状态监测:看门狗芯片会周期性地向系统发送一个重启信号,例如通过触发系统复位信号。
只要系统正常运行,系统会在短时间内清除重启信号,以示系统正常。
但如果系统发生故障或崩溃,就无法及时响应和清除重启信号。
3. 看门狗定时器复位:当看门狗芯片向系统发送重启信号后,在一个设定的时间内,看门狗芯片会不断检测系统是否给出相应的回应。
如果系统未能及时回应或清除该信号,看门狗芯片会认为系统出现故障,并产生一个复位信号。
4. 系统复位:当看门狗芯片检测到系统出现故障时,它会向系统发送复位信号,强制系统重新启动。
这样,系统就可以在发生故障时快速恢复运行,从而减少故障造成的影响。
总之,看门狗芯片通过定时检测系统运行状态,并根据系统的
响应情况采取相应的动作,确保系统能够及时发现并处理故障,从而提高系统的可用性和可靠性。
(3)DSP_28335关于看门狗
(3)DSP_28335关于看门狗看门狗主要⽤来检测软件和硬件的运⾏状态,当内部计数器⼀处时将产⽣⼀个复位信号,为了避免不必要的复位,要求⽤户软件周期地对看门狗定时器进⾏复位。
如不明原因使CPU中断程序,⽐如系统软件进⼊了⼀个死循环或者CPU的程序运⾏到了不确定的程序空间,会使系统不能正常⼯作。
看门狗电流将产⽣⼀个复位信号使CPU复位,程序从系统软件的开始执⾏,从⽽有效的提⾼了系统的可靠性。
程序中⼀般是在主函数中,初始化时就禁⽌看门狗,等到初始化设置都结束时,打开看门狗。
在主循环中进⾏喂狗。
下⾯是28335中的喂狗,禁⽌看门狗,使能看门狗函数例程;//---------------------------------------------------------------------------// Example: ServiceDog://---------------------------------------------------------------------------// This function resets the watchdog timer.// Enable this function for using ServiceDog in the applicationvoid ServiceDog(void){EALLOW;SysCtrlRegs.WDKEY = 0x0055;SysCtrlRegs.WDKEY = 0x00AA;EDIS;}//---------------------------------------------------------------------------// Example: DisableDog://---------------------------------------------------------------------------// This function disables the watchdog timer.void DisableDog(void){EALLOW;SysCtrlRegs.WDCR= 0x0068;EDIS;}void EnableDog(void){EALLOW;SysCtrlRegs.WDCR= 0x002E;///256*20M/512/32 时间 EDIS;}。
看门狗定时器
一、外部看门狗
一般硬件设计的时候使用芯片外部看门狗,该看门狗使用一个不停翻转GPIO来控制。
二、内部看门狗
一般ARM芯片都是有内部看门狗模块。
S5PV210内部看门狗模块有两个功能:
1、作为看门狗。
打开看门口狗后,如果没有“喂狗”,看门狗计数值减到0,会产生一个reset信号,S5PV210就会复位,从BL0重新执行代码。
2、普通的定时器。
可以产生周期性的中断。
三、210看门狗模块的框图
1、看门狗“喂狗”就是向计数寄存器赋一个新的计数值。
2、看门狗clock(基准周期)=
四、看门狗的寄存器
1、WTCON
2、WTDA T
3、WTCNT
4、WTCLRINT
五、实验程序。
DSP实验看门狗
《DSP技术与实验》实验报告姓名:学号:学期:实验名:看门狗实验一、实验目的1.了解VC5509内部WDT的工作基本原理2.了解如何通过软件正确的使用WDT3.了解WDT的正确操作过程二、实验设备1.一台装有CCS4的电脑2.HX5509 dsp 开发板3.XDS100-USB V1仿真器三、实验原理硬件看门狗是利用了一个定时器,来监控主程序的运行,也就是说在主程序的运行过程中,我们要在定时时间到之前对定时器进行复位如果出现死循环,或者说PC指针不能回来。
那么定时时间到后就会使单片机复位。
常用的WDT芯片如MAX813 ,5045, IMP 813等,价格4~10元不等.软件看门狗技术的原理和这差不多,只不过是用软件的方法实现,用DSP的片上外设资源定时器timer来对主程序的运行进行监控。
HX5509的看门狗包括一个16bit的预定标计数器和一个16bit 的主计数器。
从而提供一个32bit的动态范围计数器。
当主计数器减为0时,产生超时事件,引发以下可编程事件1.00b,一个看门狗定时器中断2.01b,看门狗复位3.10b,产生一个非屏蔽中断(NMI)4.11b,不发生任何事件.所产生的超时事件,用过编程控制寄存器WDTCR中的WDOUT域来控制。
四、实验步骤1.打开CCS4,打开watchdog工程,编译工程2.连接好DSP,连接好仿真器3.设置目标configurationa.点击target 下的new target configuration选项b.Connection选择Texas Instruments XDS100V1-USBEmulatorc.Device选择TMS320C5509Ad.点击Save配置,如图五、实验结果及分析六、参考文献所有实验说明.pdfTMS320C55x DSP原理及应用汪春梅,孙洪波,电子工业出版社附件:程序及说明#include <csl.h>#include <csl_wdtim.h>#include <stdio.h>int i, pscVal;WDTIM_Config getConfig;WDTIM_Config myConfig = {0x1000, /* WDPRD */0x0000, /* WDTCR */0x1000 /* WDTCR2 */};main(){CSL_init();#if (_WDTIM_SUPPORT)WDTIM_config(&myConfig);WDTIM_FSET(WDTCR, WDOUT, 1); /* Connect to NMI */WDTIM_FSET(WDTCR, TDDR, 0xF); /* Value to load PSC field */ WDTIM_FSET(WDTCR2, PREMD, 0); /* Set direct mode */WDTIM_service(); /* enable watchdog *///for (i = 0; i < 100; i++)for (;;){WDTIM_getConfig(&getConfig);pscVal = WDTIM_FGET(WDTCR,PSC);printf("pscVal: %x, wdtcr: %x\n",pscVal, getConfig.wdtcr);/* write periodically to WDTIMER - when this line is commented out,the watchdog times out, WDFLAG set to 1, indicatingthat a Watchdog time-out occurred.*/WDTIM_service();} //end for loop#endif}/******************************************************************** **********\* End of wdt.c\******************************************************************** **********/。
dsp看门狗定时器
看门狗定时器看门狗在外围监控DSP中软件的运行以及硬件的操作,当CPU出现故障时,看门狗将执行系统复位。
如果软件进入了一个不正确的循环或者CPU出现暂时的混乱,看门狗定时器将出现溢出来使系统复位。
在大多数情况下,DSP短暂的混乱以及CPU不正确的操作都可以被看门狗所清除并重新进行设置。
由于看门狗稳定的性能,其增加了CPU的可靠性,以确保系统的完整。
在看门狗中这个外围设备中,所有的寄存器都是8位的,连接到16位CPU的低8位外围数据总线上。
240XA看门狗定时器和C240看门狗定时器唯一的区别就是其缺乏实时的中断能力。
(这句话我也不明白哦)。
看门狗定时器将通过对从CPU出来的CLKOUT进行分频而得到自己所需的时钟。
1.1看门狗定时器的特征看门狗模块包含如下特征:n8位的看门狗计数器通过计数溢出从而使系统复位n6位的独立运行计数器通过对看门狗计数器预定标来feed看门狗计数器(上句为字面意思,我的理解是:该6位的独立运行的计数器通过对WD CLK(看门狗工作时钟)进行分频从而使看门狗计数器得到不同频率的时钟。
独立运行的意思是该计数器不受其他器件的影响,只要启动系统,就开始工作)n看门狗复位键寄存器,当向该寄存器写下合适的组合值(在该DSP中,通过向该寄存器相继写55h和AAh值)时,该寄存器将使看门狗计数器清零,当向该寄存器写下不合适的组合值(除55h和AAh以外的值)时,该寄存器将使系统复位n看门狗核对位,当看门狗定时器出现错误情况时,通过看门狗核对位来复位系统n当系统复位时,将自动启动看门狗定时器n可对独立运行计数器输出的6路分频信号进行选择以下为看门狗定时器的功能框图+含义:向WDCR.5-3位(看门狗核对位)写除101以外的任何数将导致系统复位。
含义:分频后的值与WDCLK有关。
1.1看门狗定时器的操作1.1.1概述看门狗的操作由三个寄存器进行控制n看门狗计数寄存器(WDCNTR)——这个寄存器包含了看门狗计数器的值n看门狗键位寄存器(WDKEY)——当向该寄存器先写55h,然后写AAh时,该寄存器将WDCNTR清零n看门狗控制寄存器(WDCR)——该寄存器包含了用于看门狗配置的如下控制位²看门狗禁止位²看门狗标志位²看门狗核对位(3位)²看门狗分频选择位(3位)1.1.2看门狗定时器时钟看门狗定时器时钟(WDCLK)是一种低频率的时钟。
看门狗定时器
5.12 模数转换器(ADC)
在数字信号处理器的具体应用中,往往需要采集 一些模拟信号量,如电池电压、面板旋钮输入值 等,模数转换器就是用来将这些模拟量转化为数 字量来供DSP使用。 本节主要介绍TMS320VC5509A内部集成的10 位的连续逼近式模数转换器(ADC)。
1 ADC的结构和时序
ADC数据寄存器ADCDATA
位 字 段 数 值 ADC 转换标志位: 15 ADCBUSY 0 1 采样数据已存在 正在转换之中,在 ADCSTART 置为 1 后,ADCBUSY 变为 1,直到转换结束 数据通道选择: 000 14~12 CHSELECT 001 010 011 100~111 11~10 9~0 保留 ADCDATA AIN0 通道 AIN1 通道 AIN2 通道(BGA 封装) AIN3 通道(BGA 封装) 保留 保留,读时总为 0 存放 10 位 ADC 转换结果 说 明
5.时钟同步
在正常状态下,只有一个主设备产生时钟信号,但 如果有两个或两个以上主设备进行仲裁,这时就需 要进行时钟同步。串行时钟线SCL具有线与的特性, 这意味着如果一个设备首先在SCL线上产生一个低 电平信号就将否决其他设备,这时其他设备的时钟 发生器也将被迫进入低电平。如果有设备仍处在低 电平,SCL信号也将保持低电平,这时其他结束低 电平状态设备必须等待SCL被释放后开始高电平状 态。通过这种方法时钟得到同步。
表8-37 I2C模块的寄存器
寄存器 I2CMDR I2CIER I2CSTR I2CISRC I2CPSC I2CCLKL I2CCLKH I2CSAR I2COAR I2CCNT I2CDRR I2CDXR I2CRSR I2CXSR I2CIVR I2CGPIO 说 明 包含 I2C 模块的控制位 使能或屏蔽 I2C 中断 用来判定中断是否发生,并可查询 I2C 的状态 用来判定产生中断的事件 用来对系统时钟分频以获得 12MHz 时钟 对主时钟分颁,产生低速传输频率 对主时钟分颁,产生低速传输频率 存放所要通信的从设备的地址 保存自己作为从设备的 7 位或 10 位地址 该寄存器被用来产生结束条件以结束传输 供 DSP 读取接收的数据 供 DSP 写发送的数据 DSP 无法访问 DSPF 无法访问 供 DSP 查询已经发生的中断 当 I2C 模块工作在通用 IO 模式下时,控制 SDA 和 SCL 引脚 功 能 I2C 模式寄存器 I2C 中断使能寄存器 I2C 中断状态寄存器 I2C 中断源寄存器 I2C 预定标寄存器 I2C 时钟分频低计数器 I2C 时钟分频高计数器 I2C 从地址寄存器 I2C 自身地址寄存器 I2C 数据计数寄存器 I2C 数据接收寄存器 I2C 数据发送寄存器 I2C 接收移位寄存器 I2C 发磅移位寄存器 I2C 中断向量寄存器 I2C 通用输入输出寄存器
DSP原理与应用2009-第四章时钟,中断,看门狗
36
第4.2节TMS320F2833X 中断
复位:从内部BOOT ROM的0X3FFFC0开始读取
DSP原理与应用
2020年3月30日
37
第4.2节TMS320F24X 中断
自学:
1.不可屏蔽(NMI)中断机理及处理过程 2.中断等待时间
DSP原理与应用
2020年3月30日
38
第四章:TMS320F2833X 系统功能和其他功能
IMR) 外设中断寄存器 外部中断
DSP原理与应用
2020年3月30日
15
第4.2节TMS320F2833X 中断
DSP原理与应用
2020年3月30日
16
第4.2节TMS320F2833X 中断
DSP原理与应用
2020年3月30日
17
第4.2节TMS320F2833X 中断
PIEIER,PIEIFR,PIECTRL,PIEACK
DSP原理与应用
2020年3月30日
8
第4.1节TMS320F2833X 时钟 外设时钟信号
DSP原理与应用
2020年3月30日
9
第4.1节TMS320F2833X 时钟
DSP原理与应用
2020年3月30日
10
第4.1节TMS320F2833X 时钟
DSP原理与应用
2020年3月30日
11
第4.1节TMS320F2833X 时钟
Sin/cos表:1282个字,32位浮点数 Arctan表:388字, 32位浮点数
DSP原理与应用
2020年3月30日
34
第4.2节TMS320F2833X 中断
DSP原理与应用
dsp看门狗定时器的作用解析
dsp 看门狗定时器的作用解析
一、DSP 看门狗定时器介绍
看门狗在外围监控DSP 中软件的运行以及硬件的操作,当CPU 出现故障时,看门狗将执行系统复位。
如果软件进入了一个不正确的循环或者CPU 出现暂时的混乱,看门狗定时器将出现溢出来使系统复位。
在大多数情况下,DSP 短暂的混乱以及CPU 不正确的操作都可以被看门狗所清除并重新进行设置。
由于看门狗稳定的性能,其增加了CPU 的可靠性,以确保系统的完整。
在看门狗中这个外围设备中,所有的寄存器都是8 位的,连接到16 位CPU 的低8 位外围数据总线上。
240XA 看门狗定时器和C240 看门狗定时器唯一的区别就是其缺乏实时的中断能力。
看门狗定时器将通过对从CPU 出来的CLKOUT 进行分频而得到自己所需的时钟
二、看门狗定时器工作原理
使用时,WDT 将递增,直到溢出,或称超时。
除非处于休眠或空闲模式,WDT 超时会强制器件复位。
为避免WDT 超时复位,用户必须定期用。
DSP课件、、、看门狗
表4 看门狗复位寄存器位功能介绍
位 15~8 名 Reserved 称 保留 首先写0x55,然后再写0xAA到WDKEY会使WDCNTR (看门狗计数器)清零。写其他的任何值都会使看门狗 产生复位信号;读操作将返回WDCR寄存器的值 功能介绍
需要特别说明的是,看门狗模块可以产生复位信号和中断信号,但是 两者不能同时产生。当产生复位信号时,出现故障时,信号直接使器件复位; 当产生中断信号时,出现故障时,模块只能产生中断信号,如果中断使能, 则执行中断服务子程序。看门狗模块的中断信号和复位信号是通过寄存器 SCSR的第二位WDENIN位决定的,具体的位信息在前面已经介绍了,在本程序 中,设置该位信息为1,即屏蔽看门狗复位信号,使能看门狗中断信号,所 以在产生故障时,不会复位芯片,而是执行中断服务子程序。
组员:余洋勇、张佳杰、张萌
1.看门狗模块介绍 1.看门狗模块介绍
看门狗,又叫 watchdog timer,是一个定时器电路, 一般有一个 输入,叫喂狗,一个输出到MCU的RST端,MCU正常工作的时候,每隔一端 时间输出一个信号到喂狗端,给 WDT 清零,如果超过规定的时间不喂 狗,(一般在程序跑飞时),WDT 定时超过,就回给出一个复位信号到MCU, 是MCU复位. 防止MCU死机. 看门狗的作用就是防止程序发生死循环, 或者说程序跑飞 在实际的DSP应用系统当中,运行时极有可能发生干扰和被干扰的 现象。特别是产品化的DSP系统,可靠性是一个不容忽视的问题,严重 时系统会出现程序“跑飞”现象。为了克服这种情况,在可能的情况 下软硬件都应作相应的处理。目前,看门狗技术就是这种处理的有效 措施之一。 F2812中的看门狗模块与240x器件上的看门狗模块基本相同。当8 位看门狗递增计数器计数达到最大值时,看门狗模块输出一个脉冲信 号(512个振荡器时钟宽度)。为了阻止这种情况发生,用户可以屏 蔽计数器或者利用软件定时向看门狗复位控制寄存器写“0x55+0xAA” 序列(可以复位看门狗计数器)。
第4章 DSP片内外设(1)
D7 D7 RW_0
D6 D6 RW_0
D5 D5 RW_0
D4 D4 RW_0
D3 D3 RW_0
D2 D2 RW_0
D1 D1 RW_0
D0 D0 RW_0
_”后为复位后的值 后为复位后的值。 注:R=可读; “_”后为复位后的值。 可读; D7~D0:数据值。这些只读数据位包含8 WD复位关键字值 复位关键字值, D7~D0:数据值。这些只读数据位包含8位WD复位关键字值, 若读该寄存器, WDKEY不返回上次关键字值 而返回WDCR 不返回上次关键字值, 若读该寄存器,则WDKEY不返回上次关键字值,而返回WDCR 寄存器的内容。 寄存器的内容。 WD定时器控制寄存器 WDCR)——地址 定时器控制寄存器( 地址7029h ⑶ WD定时器控制寄存器(WDCR)——地址7029h WDCR用来存放看门狗配置的控制位 用来存放看门狗配置的控制位。 8位WDCR用来存放看门狗配置的控制位。
D7 WDFLAG RC_x D6 WDDIS RWC_0 D5 D4 D3 WDSHK2 WDCHK1 WDCHK0 RW_0 RW_0 RW_0 D2 WDPS2 RW_0 D1 WDPS1 RW_0 D0 WDPS0 RW_0
注:R=读;W=写;C=写1则清零;WC=当系统控制寄存器SCSR2 :R=读 W=写 C=写 则清零;WC=当系统控制寄存器SCSR2 当系统控制寄存器 OVERRIDE位为 时可写;“_”后为复位后的值,“x” 位为1 ;“_”后为复位后的值,“x”不 的WD OVERRIDE位为1时可写;“_”后为复位后的值,“x”不 确定值。 确定值。
D7:WDFLAG,看门狗标志位。该位指出WD定时器是否要求了 D7:WDFLAG,看门狗标志位。该位指出WD定时器是否要求了 WD 一个系统复位。该位由WD产生的复位来置1 WD产生的复位来置 一个系统复位。该位由WD产生的复位来置1,其它任何系统 复位对该位无效。 复位对该位无效。 WD定时器没有要求一个复位 0:WD定时器没有要求一个复位 WD定时器要求一个复位 1:WD定时器要求一个复位 D6:WDDIS,禁止看门狗。只有当SCSR2中的WD OVERRIDE位 SCSR2中的 D6:WDDIS,禁止看门狗。只有当SCSR2中的WD OVERRIDE位 向该位写有效。 为1时,向该位写有效。 0:使能看门狗 1:禁止看门狗 D5~D3:WDCHK2~WDCHK0,看门狗检查位。必须向这3 D5~D3:WDCHK2~WDCHK0,看门狗检查位。必须向这3位写 101,系统才能继续正常工作。否则将要求一个系统复位。 入101,系统才能继续正常工作。否则将要求一个系统复位。 读这3位总是000 000。 读这3位总是000。 D2~D0:WDPS2~WDPS0,看门狗预定标因子选择位。 D2~D0:WDPS2~WDPS0,看门狗预定标因子选择位。这3位 旋转产生用于WD计数器CLK的计数器溢出抽头( 4.1列出了 WD计数器CLK的计数器溢出抽头 旋转产生用于WD计数器CLK的计数器溢出抽头(表4.1列出了 WD溢出时间的选择)。由于WD计数器在溢出前计数257个时 溢出时间的选择)。由于WD计数器在溢出前计数257 WD溢出时间的选择)。由于WD计数器在溢出前计数257个时 所以给出的时间是溢出的最小值。 钟,所以给出的时间是溢出的最小值。因为预定标因子未被 清除而产生了附加的不精确性, 清除而产生了附加的不精确性,所以最大溢出的时间比表 列出的时间长1/256 1/256。 列出的时间长1/256。
2407DSP第6章 看门狗定时器模块
第6章 看门狗定时器模块
《DSP原理及应用》
1
北京理工大学珠海学院信息学院
第6章 看门狗定时器模块
在计算机控制系统的实际应用中,可靠性是一个非常重要 的问题,尤其是在工业应用场合,系统抗干扰能力显得尤为突 出。为解决干扰问题,除了对干扰源的适当处理外,在计算机 控制系统中也应增加一些防范措施,从而避免程序“跑飞”或 “死机”现象,导致系统工作异常。
为解决这个问题,在TMS320LF240x芯片中增加了看门狗 (WD)定时电路。WD监视系统软件和硬件的运行,它可以按照用 户设定的时间间隔产生中断。如果软件进入非正常循环或CPU 运行出现异常时,则WD定时器计数上溢,并产生系统复位信号, 使系统进入用户预定义的状态。 在系统中的绝大多数异常情况都可以通过WD的操作清除, 故此WD设可大大提高系统的稳定性和可靠性。
《DSP原理及应用》
6
北京理工大学珠海学院信息学院
《DSP原理及应用》
4
北京理工大学珠海学院信息学院
第6章 看门狗定时器模块
6.2 WD寄存器的配臵
WD的所有寄存器都是8位字宽,并且与16位CPU外设数据 总线的低8位相连。对WD操作的设臵比较简单,可通过3个相 关寄存器来配臵。 1.WD计数寄存器(WDCNTR) :地址为7023h WD计数寄存器包含看门狗计数器的计数值,复位值为0。 2.WD复位关键字寄存器(WDKEY) :地址为7025h 当55h及紧接其后的AAh顺序写入WDKEY时,则该寄存器将清 除WDCNTR寄存器中的内容。写入到WDKEY中任何其他内容,都将 产生一个系统复位操作。
位6:是WD的使能位。该位只有在系统配臵寄存器SCSR2的WD OVERRIDE位为1时,才可以进行写操作。该位写0时,使能看门狗; 写1时禁止看门狗。 位5-3:是看门狗校验位。当用户对WDCR进行访问时,必须将 这3位写入101,否则将引发一个系统复位事件。
看门狗的计算公式
看门狗的计算公式
摘要:
1.看门狗定时器的概念和作用
2.看门狗定时器的计算公式
3.计算公式的实际应用
正文:
1.看门狗定时器的概念和作用
看门狗定时器,又称为监视定时器,是一种电子定时器,主要用于检测系统的运行状态。
当系统出现异常时,看门狗定时器可以自动进行干预,以防止系统进一步损坏或发生故障。
因此,看门狗定时器在电子设备中具有非常重要的作用,可以提高系统的可靠性和稳定性。
2.看门狗定时器的计算公式
看门狗定时器的计算公式为:
看门狗定时时间= 系统时钟周期×(1 + 设定阈值)
其中,系统时钟周期是指系统时钟发生一次跳变的时间间隔;设定阈值是指看门狗定时器允许系统时钟周期的最大偏差。
当系统时钟周期超过设定阈值时,看门狗定时器将产生中断信号,触发系统复位。
3.计算公式的实际应用
看门狗定时器的计算公式在实际应用中具有重要意义。
通过合理设置系统时钟周期和设定阈值,可以确保系统在正常运行状态下不会发生误操作,同时,当系统出现异常时,看门狗定时器可以及时进行干预,保护系统的安全。
例如,假设系统时钟周期为1ms,设定阈值为0.5ms,则看门狗定时时间为1.5ms。
这意味着,只要系统时钟周期在1.5ms 内波动,看门狗定时器就不会产生中断信号。
然而,如果系统时钟周期超过1.5ms,看门狗定时器将立即触发系统复位,以防止系统进一步损坏。
总之,看门狗定时器的计算公式对于保证系统的可靠性和稳定性具有重要作用。
看门狗定时器的工作原理
看门狗定时器的工作原理嘿,小伙伴们!今天咱们来聊一聊看门狗定时器这个超有趣的东西。
你可以把看门狗定时器想象成一个超级负责的小管家。
在电子设备这个大家庭里呀,有时候会出现一些小混乱,就像我们生活中家里突然电线短路啦之类的情况。
这个时候,看门狗定时器就开始发挥它的大作用了。
简单来说呢,看门狗定时器有个内部的计数器。
这个计数器就像一个小沙漏,沙子不断地流,代表着时间在不停地走。
设备正常运行的时候呀,就会定期给这个小沙漏来个“倒转”,让沙子重新开始流,这就叫做“喂狗”。
比如说,我们设定每10秒“喂狗”一次,就像我们每10分钟给家里的小宠物喂一次食一样。
那要是设备出问题了呢?就像主人突然不在家,没办法给小宠物喂食了。
这时候,计数器里的沙子一直流,一直流,等到沙子全部流完了,也就是计数器达到了预先设定的一个时间上限,比如说30秒,这个时候,看门狗定时器就会认为设备出大问题啦。
然后它就像一个小警报器一样,触发一个复位信号。
这个复位信号就像给整个电子设备来了个重启按钮,让设备重新开始工作,就像我们电脑死机了,按一下重启键一样。
看门狗定时器的这个时间上限是可以根据不同的设备需求来设置的。
比如说一些对稳定性要求特别高的医疗设备,这个时间可能就设置得比较短,因为哪怕一点点小故障都可能影响病人的安全。
就像医院里的一些精密仪器,必须时刻保持最佳状态。
而一些普通的电子小玩意呢,这个时间可能就设置得稍微长一点。
而且哦,看门狗定时器的计数器通常是基于时钟信号来工作的。
这个时钟信号就像整个定时器的心跳一样,有规律地跳动着,驱动着计数器的运行。
如果时钟信号不正常了,那这个小管家也会察觉到,就像我们的心跳不正常了,身体肯定也会出问题一样。
总之呢,看门狗定时器就是通过这种简单又巧妙的方式,时刻监督着电子设备的运行,保证设备不会因为一些突发的故障而一直处于错误的状态,是不是很神奇呢?。
看门狗的工作原理和应用
看门狗的工作原理和应用简介看门狗是一种常用的硬件监控机制,主要用于确保系统或设备的稳定运行。
本文将介绍看门狗的工作原理和应用。
工作原理看门狗的工作原理基于定时器和复位机制,其具体流程如下:1.启动定时器:看门狗通过启动一个定时器来计时。
2.监控程序:看门狗监控系统或设备中的关键程序,确保其正常运行。
3.定时器复位:监控程序定时重置定时器的计时。
4.定时器溢出:如果定时器计时超过了预定的时间,即定时器溢出。
5.复位信号:定时器溢出后,看门狗发送一个复位信号给系统或设备。
6.设备重启:系统或设备在接收到复位信号后会进行重启操作,重新启动。
应用场景看门狗的应用非常广泛,在许多领域中发挥着重要的作用。
以下列举了几个常见的应用场景:•嵌入式系统:嵌入式系统通常是长时间运行的,看门狗可以确保系统在长时间运行后仍然稳定,避免死机或其他故障。
•服务器:服务器运行的应用程序往往非常复杂,存在各种潜在的问题,看门狗可以监控服务器的关键进程,及时发现异常情况并进行复位。
•工业自动化:在工业自动化过程中,看门狗可以监控各种设备和传感器,实时检测故障,并进行相应的处理,确保生产过程的稳定进行。
•汽车电子:随着汽车电子的普及和发展,看门狗在汽车电子中也有重要的应用,可以监控汽车各个系统的运行情况,确保汽车的安全和稳定。
•无人机:无人机是一种高度自动化的飞行器,看门狗可以监控无人机的各个部件,检测故障并采取相应的措施,确保飞行安全。
优点看门狗的应用有许多优点,包括:•提高系统的稳定性:看门狗可以监控系统的运行状态,及时发现并处理异常情况,保证系统的稳定性和可靠性。
•自动化处理:看门狗可以自动检测和处理故障,减少人工干预的需求,提高系统的自动化程度。
•快速恢复:一旦发生故障,看门狗可以快速进行复位操作,使系统尽快恢复正常运行。
•灵活性:看门狗可以根据实际需求进行定制,灵活适应不同应用场景。
注意事项在使用看门狗的过程中,需要注意以下几点:•设定合适的定时器时间:定时器时间的设置需要根据具体的应用场景来确定,过短的时间可能会导致频繁的复位,过长的时间则可能会延误故障的处理。
dsp看门狗原理
dsp看门狗原理
看门狗(Watchdog)是一种硬件或软件机制,用于监控系统
的运行状态,并在系统出现异常或故障时进行自动恢复或报警。
下面介绍DSP(Digital Signal Processor)中的看门狗原理。
DSP的看门狗基本原理如下:
1. 看门狗定时器:DSP中集成了一个看门狗定时器,其功能
是定时计数,当计数值达到特定阈值时,看门狗会产生一个复位信号。
2. 激活看门狗:软件或硬件可以周期性地激活看门狗,通常通过给看门狗定时器提供一个特定的信号或定时器配置来完成。
3. 程序正常运行:当DSP系统正常运行时,软件会周期性地
激活看门狗,保证看门狗定时器的计数值不会达到复位阈值。
4. 异常或故障检测:如果DSP系统出现异常或故障,例如程
序崩溃、死循环或停滞不动等,软件无法去激活看门狗,看门狗定时器的计数值就会超过复位阈值。
5. 复位处理:当看门狗定时器计数值超过复位阈值时,看门狗会产生一个复位信号,该信号会强制DSP系统复位,将系统
恢复到初始状态。
通过看门狗的原理,可以保证DSP系统的可靠性和稳定性。
当系统出现异常时,看门狗会自动进行复位处理,避免系统长
时间出现故障而无法恢复。
同时,看门狗还可以通过产生警报信号,通知系统管理员或相关人员进行相应的处理和调查。
这样可以提高DSP系统的可维护性和故障排除的效率。
DSP第6章TMS320F2812的时钟及看门狗
13
盐城工学院
电气与新能源综合实验教学示范中心
DSP应用技术 DSP应用技术
位10 SCIAENCLK 外设模块的低速时钟(LSPCLK),要让器件 ),要让器件 如置1,使能 ,使能SCI-A外设模块的低速时钟 外设模块的低速时钟 ), 进入低功耗工作模式,用户可以将该位清零或复位。 进入低功耗工作模式,用户可以将该位清零或复位。 位9 Reserved 保留位 位8 SPIAENCLK 如置1,使能串行外设接口的低速时钟( ),要让器件 如置 ,使能串行外设接口的低速时钟(LSPCLK),要让器件 ), 进入低功耗工作模式,用户可以将该位清零或复位。 进入低功耗工作模式,用户可以将该位清零或复位。 位7~4Reserved 保留位 ~ R
2
盐城工学院
电气与新能源综合实验教学示范中心
DSP应用技术 DSP应用技术
CLKIN=SYSCLKOUT
3
盐城工学院
电气与新能源综合实验教学示范中心
DSP应用技术 DSP应用技术6.1.2 锁相环电路
器件所有必须的时钟信号以及 模块提供了器件所有必须的时钟信号以及低 模块提供了器件所有必须的时钟信号以及低 功耗工作模式的控制 的控制。 功耗工作模式的控制。 PLL有4位比率控制,用来选择不同的 有 位比率控制,用来选择不同的CPU 位比率控制 时钟频率。 时钟频率。
19
盐城工学院
电气与新能源综合实验教学示范中心
DSP应用技术 DSP应用技术
3.锁相环控制寄存器( PLLCR ) 锁相环控制寄存器( 锁相环控制寄存器
15 Reserved R-0 4 3 DIV R/W-0 0
位15~4 ~
Reserved 保留位
20
看门狗定时器参考资料
看门狗定时器参考资料:S3C2410A 的看门狗定时器有两个功能:作为常规时钟,并且可以产生中断; 作为看门狗定时器使用,当时钟计数减为0(超时)时,它将产生一个128 个时钟周期(PCLK)的复位信号. 主要特性如下:通用的中断方式的16bit 定时器. 当计数器减到0(发生溢出) ,产生128 个PCLK 周期的复位信号. 下图为看门狗的电路示意图,看门狗时钟使用PCLK 作为他的时钟源,PCLK 通过预分频产生适合的看门狗时钟.看门狗模块包括一个预比例因子放大器,一个是四分频器,一个16bit 计数器.看门狗的时钟源来自PCLK,为了得到较宽范围的看门狗信号,PCLK 先被预分频,之后再经过分频器分频.预分频比例因子的分频值,都可以由看门狗控制器(WTCON)决定,预分频值的有效范围从0 到256-1.分频因子可以选择16,32,64 或者128. 看门狗定时器记数值的计算公式如下: t_watchdog=1/ [PCLK/( prescaler value +1)/ Division_factor ] 看门狗的定时周期为T=WTCH×t_watchdog 一旦看门狗定时器被允许,看门狗定时器数据寄存器(WTDAT)的值不能被自动的装载到看门狗计数器(WTCNT)中.因此,看门狗启动前要将一个初始值写入看门狗计数器(WTCNT)中. 调试环境下的看门狗当S3C2410A 用嵌入式ICE 调试的时候,看门狗定时器的复位功能不能启动,看门狗定时器能从CPU 内核信号判断出当前CPU 是否处于调试状态, 如果看门狗定时器确定当前模式是调试模式,尽管看门狗能产生溢出信号,但是仍然不会产生复位信号.5,S3C2410A 相关寄存器WTCON――看门狗定时器控制寄存器看门狗控制寄存器能够禁止或者允许看门狗时钟,从四个不同的时钟源中挑选时钟信号,允许或禁止中断,并且能允许或禁止看门狗时钟输出.如果用户想要使用看门狗作为普通时钟,应该中断使能,禁止看门狗定时器复位.WTDAT――看门狗定时器数据寄存器WTDAT 用于设置看门狗定时器的超时时间值,在初始化看门狗过程中,WTDAT 的值不会自动加载到定时计数器中,首次使用定时器超时值为其初始值即0x8000,以后该寄存器的值会被自动加载到WTCNT 寄存器中.WTCNT――看门狗定时器计数寄存器WTCNT 为看门狗定时器工作的时间计数器的当前计数值,注意在初始化看门狗操作后,看门狗数据寄存器(WTDAT)的值不能自动装载到看门狗计数寄存器(WTCNT)中, 所以看门狗被允许之前应高初始化看门狗计数寄存器的值.6,实验程序由于看门狗是对系统的复位或者中断的操作,所以不需要外围的硬件电路.要实现看门狗的功能,只需要对看门狗的寄存器组进行操作.即对看门狗的控制寄存器(WTCON) , 看门狗数据寄存器(WTDAT) ,看门狗计数寄存器(WTCNT)的操作. 设计流程如下: 设置看门狗中断操作, 包括全局中断和看门狗中断的使能, 看门狗中断向量的定义. 对看门狗控制寄存器(WTCON)的设置,包括设置预分频比例因子,分频器的分频值,中断使能和复位使能等. 对看门狗数据寄存器(WTDAT)和看门狗技术寄存器(WTCNT)的设置. 启动看门狗定时器.6.1 主功能函数int Main(void) {ChangeClockDivider(1,1);ChangeMPllValue(0xa1,0x3,0x1);Port_Init();Uart_Select(0);Uart_Init(0,115200);Uart_Printf("watchdog test is beginning\n");watchdog_test();while(1); }6.2 看门狗复位功能程序实现void watchdog_test(void) {//Prescaler value=100; lock division factor=128 ;PCLK=67.5MHz//t_watchdog=1/[PCLK/(Prescaler value+1)/Division_factor]=0.0002//disable watchdogrWTCON=((100<<8)|(3<<3));//看门狗时钟周期T=WTCNT*t_watchdog=3S//看门狗喂狗rWTDAT=15000;rWTCNT=15000;//disable watchdog interruptrWTCON &= ~(3<<1);//enable Watchdog timer;reset signal.rWTCON|=((1<<5)|(1<<0));while(1); }6.3 看门狗定时器功能程序实现void watchdog_test(void) {//initialize interrupt registersClearPending(BIT_WDT);//建立WatchDog 中断pISR_WDT=(unsigned)watchdog_int;//Prescaler value=100,clock division factor=128//t_watchdog=1/[PCLK/(Prescaler value+1)/Division_factor]=0.00025856//disable watchdogrWTCON=((100<<8)|(3<<3));//看门狗时钟周期T=WTCNT*t_watchdog=4S//看门狗喂狗rWTDAT=15000;rWTCNT=15000;rWTCON|=((1<<5)|(1<<2)); //enable Watchdog timer ang watchdog interrupt //rWTCON|=((1<<5)|(1<<2)|1);//watchdog 复位,时间间隔为4S.rWTCON|=(1<<5)|(1<<2); //每4S watchdog 一次中断.//设置watchdog 为IRQ 中断模式rINTMOD&=0xFFFFFDFF;//开中断EnableIrq(BIT_WDT);while(f_ucSencondNo<11);}。
bf531快速应用
目录目录 (1)第1章TIMERS (2)1.1通用定时器 (2)1.2通用定时器寄存器 (2)1.2.1TIMER_ENABLE寄存器 (3)1.2.2TIMER_DISABLE寄存器 (3)1.2.3TIMER_STA TUS寄存器 (3)1.2.4TIMERx_CONFIG寄存器 (4)1.2.5TIMERx_COUNTER寄存器 (6)1.2.6TIMERx_PERIOD和TIMERx_WIDTH寄存器 (6)1.3定时器的使用 (7)1.3.1PWM_OUT模式 (7)1.3.2WDTH_CAP模式 (9)1.3.3外部事件模式 (10)1.3.4定时器与PPI结合使用 (10)1.3.5中断 (10)1.3.6非法状态 (11)1.4内核定时器 (11)1.4.1TCNTL寄存器 (11)1.4.2TCOUNT寄存器 (11)1.4.3TPERIOD寄存器 (12)1.4.4TSCALE寄存器 (12)1.5看门狗定时器 (12)1.5.1看门狗定时器的操作 (12)1.5.2WDOG_CNT寄存器 (13)1.5.3WDOG_STA T寄存器 (13)1.5.4WDOG_CTL寄存器 (13)第1章 TIMERSDSP具有三个等同的32位通用定时器,一个内核定时器和一个看门狗定时器。
通用定时器可以配置为如下三种模式:➢脉宽调制模式(PWM_OUT);➢脉宽计数和捕获模式(WDTH_CAP);➢外部事件计数模式。
内核定时器用于产生各种系统定时功能的周期性中断。
看门狗定时器用来实现软件看门狗功能。
如果在软件更新前定时器计数结束,软件看门狗产生一个事件到DSP内核,从而提高系统性能。
1.1通用定时器每个通用定时器都有一个专用双向管脚TMRx。
PWM_OUT模式下,作为输出管脚,WDTH_CAP和EXT_CLK模式下,作为输入管脚。
当使用内部时钟时,时钟源是系统时钟(SCLK)。
1.2通用定时器寄存器每个定时器具备四个寄存器:TIMERx_CONFIG[15:0]-定时器配置寄存器;TIMERx_WIDTH[31:0]-定时器脉冲宽度寄存器;TIMERx_PERIOD[31:0]-定时器周期寄存器;TIMERx_COUNTER[31:0]-定时器计数寄存器。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
看门狗定时器
看门狗在外围监控DSP中软件的运行以及硬件的操作,当CPU出现故障时,看门狗将执行系统复位。
如果软件进入了一个不正确的循环或者CPU出现暂时的混乱,看门狗定时器将出现溢出来使系统复位。
在大多数情况下,DSP短暂的混乱以及CPU不正确的操作都可以被看门狗所清除并重新进行设置。
由于看门狗稳定的性能,其增加了CPU的可靠性,以确保系统的完整。
在看门狗中这个外围设备中,所有的寄存器都是8位的,连接到16位CPU的低8位外围数据总线上。
240XA看门狗定时器和C240看门狗定时器唯一的区别就是其缺乏实时的中断能力。
(这句话我也不明白哦)。
看门狗定时器将通过对从CPU出来的CLKOUT进行分频而得到自己所需的时钟。
1.1看门狗定时器的特征
看门狗模块包含如下特征:
n8位的看门狗计数器通过计数溢出从而使系统复位
n6位的独立运行计数器通过对看门狗计数器预定标来feed看门狗计数器(上句为字面意思,我的理解是:该6位的独立运行的计数器通过对
WD CLK(看门狗工作时钟)进行分频从而使看门狗计数器得到不同频率
的时钟。
独立运行的意思是该计数器不受其他器件的影响,只要启动
系统,就开始工作)
n看门狗复位键寄存器,当向该寄存器写下合适的组合值(在该DSP中,通过向该寄存器相继写55h和AAh值)时,该寄存器将使看门狗计数
器清零,当向该寄存器写下不合适的组合值(除55h和AAh以外的值)
时,该寄存器将使系统复位
n看门狗核对位,当看门狗定时器出现错误情况时,通过看门狗核对位来复位系统
n当系统复位时,将自动启动看门狗定时器
n可对独立运行计数器输出的6路分频信号进行选择
以下为看门狗定时器的功能框图
+含义:向WDCR.5-3位(看门狗核对位)写除101以外的任何数将导致系统复位。
含义:分频后的值与WDCLK有关。
1.1看门狗定时器的操作
1.1.1概述
看门狗的操作由三个寄存器进行控制
n看门狗计数寄存器(WDCNTR)——这个寄存器包含了看门狗计数器的值
n看门狗键位寄存器(WDKEY)——当向该寄存器先写55h,然后写AAh时,该寄存器将WDCNTR清零
n看门狗控制寄存器(WDCR)——该寄存器包含了用于看门狗配置的如下控制位
²看门狗禁止位
²看门狗标志位
²看门狗核对位(3位)
²看门狗分频选择位(3位)
1.1.2看门狗定时器时钟
看门狗定时器时钟(WDCLK)是一种低频率的时钟。
当CPUCLK(为根据SCSR1中分频位对外部时钟分频后值)为40MHz时,WDCLK 理论上为78125Hz。
WDCLK时钟是由对CPU的输出时钟CLKOUT 进行分频所产生。
这就能够确保当CPU处于IDLE1和IDLE2 模式时,看门狗仍能进行计数。
WDCLK是在外围设备中产生(不是在CPU中产生),WDCLK的频率可由如下公式进行计算:
WDCLK=CLKOUT/512
当看门狗定时器被允许运行时,WDCLK可在DSP的CLKOUT引脚测出(需要对该复用引脚进行设置,确定是输出CLKOUT还是
WDCLK时钟)。
在看门狗定时器被允许运行时,看门狗计数器应该在器溢出之前被清零,否则DSP将被复位。
1.1.3看门狗的停止
当CPU的停止信号产生时,WDCLK将被中止。
这种情况是通过如下方式实现的:通过停止对从CLKOUT产生WDCLK的时钟分频器的时钟而实现中止WDCLK的产生。
注意:当实时仿真器在运行时,看门狗定时器时钟不会产生。
这和F/C240不一样
1.1.4看门狗定时器的操作
看门狗定时器是一个由从预分频器出来的时钟进行驱动的连续增计数的计数器。
在看门狗计数器溢出之前如果WDKEY寄存器没有对其进行清零,该定时器将对系统复位以保证系统软件和硬件的正常运行。
WDCLK是由芯片内的时钟模块产生,并且在除HALT模式之外的任何操作模式下都是激活的。
WDCLK使看门狗定时器不考虑芯片内的任何寄存器状态的情况下运行。
除了HALT低功耗模式,因为它可以使WDCLK信号中止。
WDCNTR的当前状态可以在对其进行操作的任何时候进行读操作。
1.1.4.1看门狗预定标的选择
8位WDCNTR的输入时钟可以是WDCLK时钟信号或者是从独立运行计数器中出来的六个分频信号中任何一个。
该6位的独立运行的计数器在WDCLK时钟的驱动下连续的进行增计数。
只要给看门狗定时器输入WDCLK时钟,看门狗将开始起作用。
预定标器的六路分频信号由WDPS2—0位进行选择。
这种分频可使看门狗在WDCLK时钟为78125Hz时溢出时间从3.28ms到209.7ms。
在芯片处于正常工作状态时,独立运行计数器是不能被停止或复位的,除了系统的复位。
清除WDCNTR不能清除独立运行计数器。
1.1.4.2对看门狗定时器的操作
在WDCNTR寄存器溢出之前,向WDKEY写相应的数将使
WDCNTR被清零。
当向WDKEY写55h时,WDCNTR将可以
被清零,当紧接着向WDKEY写AAh时,WDCNTR就将被清
零。
向WDKEY写除55h或者AAh之外的任何值都将导致系统
复位。
只有向WDKEY写55h后写AAh才能使WDCNTR复位。
1.1.4.3看门狗复位
当WDCNTR溢出时,看门狗定时器才强制使系统复位。
复位发生在WDCNTR溢出一个时钟周期之后。
只要WDCLK在正常工作,
溢出就不能被停止。
只有当WDCLK没有工作,振荡器处于低
功耗模式时看门狗定时器才无法溢出使系统复位。
看门狗定时
器可以通过设置WDCR寄存器中的WDDIS位使其停止工作。
注意在240XA设备中没有WDDIS引脚。
在SCSR2 中的
watchdog override 位提供了WDDIS引脚的功能。
1.1.4.4看门狗的设置
开门狗独立于CPU的操作并且一般是打开的状态。
其不需要任
何CPU的初始化操作。
当系统复位发生时,开门狗定时器默认
为其输入时钟为最快的时钟(在78125Hz的WDCLK信号下溢
出时间为3.28ms)。
当复位结束时,CPU开始执行代码,看门
狗计数器开始计数。
1.2看门狗控制寄存器
下面表中详细讲述了看门狗控制寄存器中各位的作用。
1.2.1看门狗计数寄存器
8位的看门狗计数寄存器(WDCNTR)包含了看门狗计
数器的当前值。
该寄存器以WDCR中设置的时钟频率进
行持续的计数。
当WDCNTR溢出时,一个时钟周期后
系统开始复位。
当向WDKEY写合适的数值序列后
WDKEY将对WDCNTR清零以阻止系统复位的发生。
尽管如此,其不能对独立运行计数器清零。
看门狗计数寄存器的8位为只读位,向其写数没任何作用。
1.2.2看门狗复位键寄存器
当向WDKEY先写55h后写AAh后其将给WDCNTR清
零。
除55h和AAh之后的任何值将导致系统复位。
1.2.3看门狗定时器控制寄存器
WDCR包含了对开门狗进行配置的控制位。
包含复位标
志位,核对位,以及对输入时钟进行预分频的选择位。
1.2.4.4 看门狗核对位逻辑
开门狗定时器核对位(WDCR5—3位)一直与一个恒定值(101)进行比较,如果核对位的值与101不同,其将使系统复位。
这
种逻辑的作用是防止软件向WDCR中赋不正确的值,或者是
外面的刺激因素(电压尖峰,电磁干扰,或者是其他影响因素)。
通过这种方式可以防止WDCR的值出现错误。
(个人理解: 电
磁干扰或者软件以及其他因素有可能使WDCR出现错误,当
WDCR出现错误时,将导致整个看门狗的错误运行,因此,通过
这种方法,如果WDCR中5到3位出现与初值不同时就意味着该
控制寄存器已经出现错误了,这时必须使系统出现复位才能解
决错误).向WDCR5—3写除101以外的任何值都将引发系统
的复位。
读核对位时读出数始终为000,向其写数无效。
第七位:看门狗复位标志位。
复位发生时,改为置1
0:标明看门狗定时器自从最近一次清除来没有复位过。
1:标明看门狗定时器已经复位。
第六位:看门狗禁止位。
当SCSR2中的OVERRIDE位为
1时,向其写1将关闭看门狗。
0:看门狗使能。
1:看门狗关闭。
清除SCSR2寄存器中的OVERRIDE位将使WD
由关闭状态变为使能状态。
第五、四、三位:该三位组合起来为101时系统正常工作,
任何一位发生变化将导致系统复位。
第二、一、零位:该三位为WDPS位,通过该三位的组
合使看门狗计数器得到不同频率的时钟。
预定标器逻辑
看门狗定时器控制寄存器
看门狗复位键寄存器
看门狗计数寄存器
看门狗功能框图。