1、单击此处编辑母版标题样式,单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,第十二章 S3C2410的看门狗电路控制ppt课件(全),*,第十二章 S3C2410的看门狗电路控制,第十二章 S3C2410的看门狗电路控制ppt课件(全),主要内容:,12.1 看门狗电路的功能及工作原理,12.1.1 S3C2410的看门狗控制,12.1.2 看门狗定时器寄存器,12.2 参考程序及说明,第十二章 S3C2410的看门狗电路控制ppt课件(全),12.1 看门狗电路的功能及工作原理,嵌入式系统运行时受到外部于扰或者系统错误,程序有时会出现“跑飞”,导致整个系统瘫痪。为了防止这一现象的
2、发生,在对系统稳定性要求较高的场合往往要加入看门狗(Watchdog)电路。看门狗的作用就是当系统“跑飞”而进入死循环时,恢复系统的运行。,第十二章 S3C2410的看门狗电路控制ppt课件(全),其基本原理为:设本系统程序完整运行一周期的时间是tp,看门狗的定时周期为ti,且,titp,在程序正常运行一周期中修改定时器的计数值1次,恢复定时器的原定时周期ti,(俗称“喂狗”)。只要程序正常运行,定时器就不会溢出,若由于干扰等原因使系统不能在tp时段修改定时器的计数值,定时器将在ti时刻溢出,引发系统复位,使系统得以重新运行,从而起到监控作用。,第十二章 S3C2410的看门狗电路控制ppt课
3、件(全),12.1.1 S3C2410的看门狗控制,S3C2410的看门狗定时器有两个功能:,1.作为常规定时器使用,并且可以产生中断;,2.作为看门狗定时器使用,期满时,它可以产生128个时钟周期的复位信号。,第十二章 S3C2410的看门狗电路控制ppt课件(全),第十二章 S3C2410的看门狗电路控制ppt课件(全),看门狗定时器计数值的计算公式如下:,输入到计数器的时钟周期:,t_watchdog=1/(PCLK/(Prescaler value+1)/Division_ factor),其中,PCLK为系统时钟频率;Prescaler value为预定标值(值0255);Divis
4、ion_ factor为四分频值,可以是16、32、64或128。,看门狗的定时周期:,T=WTCNT*t_Watchdog,其中WTCNT是看门狗定时器计数器初值。,第十二章 S3C2410的看门狗电路控制ppt课件(全),12.1.2 看门狗定时器寄存器,1.看门狗定时器控制寄存器WTCON,第十二章 S3C2410的看门狗电路控制ppt课件(全),2.看门狗定时器数据寄存器WTDAT,该数据寄存器用于设置看门狗定时器的初值。在初始的操作中,该值不会自动加载到定时器中,首次定时器初始值为0 x8000,以后该寄存器的值会被自动加载到WTCNT寄存器中。一般是该定时器工作在通用定时器模式下时
5、使用。该寄存器及其各位的定义如表12-2所列。,第十二章 S3C2410的看门狗电路控制ppt课件(全),第十二章 S3C2410的看门狗电路控制ppt课件(全),3.看门狗定时器/计数器寄存器WTCNT,该寄存器为看门狗定时器的计数器,它的值表示该定时器的当前计数值,即到下一次期满还需要经历的时钟数。当该定时器工作在看门狗模式时使用该寄存器,计数器减到0前需要重新设置其值,以防止发生复位。该寄存器及其各位的定义如表12-3所列。,第十二章 S3C2410的看门狗电路控制ppt课件(全),第十二章 S3C2410的看门狗电路控制ppt课件(全),12.2 参考程序及说明,设程序预定标值Pres
6、caler value=PCLK/1000000-1;分频因子=128;看门狗输入时钟周期=1/(PCLK/(Prescaler value+1)/Division_ factor)=1/(PCLK/(PCLK/1000000-1+1)/Division_ factor)=1/1000000/128=1/7812;允许中断;看门狗超时复位,每秒中断一次,10秒后结束。看门狗的定时周期=1秒。看门狗的定时周期:T=WTCNT*t_Watchdog=WTCNT*1/7812,因T=1秒,所以WTCNT=7812。,第十二章 S3C2410的看门狗电路控制ppt课件(全),第十二章 S3C2410的看门狗电路控制ppt课件(全),第十二章 S3C2410的看门狗电路控制ppt课件(全),第十二章 S3C2410的看门狗电路控制ppt课件(全),