飞思卡尔看门狗详解_第1页
飞思卡尔看门狗详解_第2页
飞思卡尔看门狗详解_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、目前接触到的单片机中都有看门狗模块,不过写过的程序也比较简单,程序能够稳定运行,所以就不怎么理会这看门狗,因此也不知道看门狗是怎么回事。DABAO最近写了个超声波测距的程序,运行过程中程序老是会无故停止,就是死机了。因此不得不重新面对看门狗,经过两天的奋斗,终于让看门狗顺利工作了。下面记一下XS128的看门狗的相关寄存器及用法。看门狗模块用于检测程序的正常运行,启动看门狗后,必须在看门狗复位之前向ARMCOP中依次写入0X55和0XAA,这样看门狗就会重新启动计时。如果在规定时间内没有完成向ARMCOP中依次写入0X55和0XAA的操作,就会引起看门狗复位。这样可以使程序重新运行,减小程序跑死

2、的危害。看门狗的设置比较简单,只要配置好寄存器COPCTL即可用。COPCTL的第七位为:WCOP。若写入COPCTL_WCOP=1,贝(J看门狗行运在窗口模式下,必须在看门狗周期的后25%时间内向ARMCOP依次写入0X55和0XAA。若在其他时间写入,或写入其他值,都会让看门狗溢出,使单片机复位。若写入COPCTL_WCOP=0,则看门狗运行在正常模式下。当看门狗使能后,只要在看门狗溢出周期内依次向ARMCOP写入0X55和0XAA,使看门狗计数复零,即可。第六位为:RSBCK,BDM模式下的COP和RTI停止位。若中断)计数。若COPCTL_RSBCK=0,贝U在BDM模式下允许COP和

3、RTI运行。低三位为:CR2、CR1、CR0o这三位是看门狗时钟分频位。当CR2:0=000时,看门狗COP不可用。只要CR2:0不为000,看门狗就开启了。当CR2:0=001时,分频值为(2的14次方)。当CR2:0=010时,分频值为(2的16次方)。当CR2:0=011时,分频值为(2的18次方)。当CR2:0=100时,分频值为(2的20次方)。当CR2:0=101时,分频值为(2的22次方)。当CR2:0=110时,分频值为(2的23次方)。当CR2:0=111时,分频值为(2的24次方)。看门狗的溢出频率为:COP溢出频率=OSCCLK/CR2:0。OSCCLK为晶振频率。在正常

4、运行模式下,只要配置好COPCTL,再写好喂狗程序,看门狗COP就可以工作了。和看门狗COP相关的寄存器还有,不过一般情况下可以不管:CLKSEL_COPWAI:当CLKSEL_COPWAI=1时,COP在等待模式下不可用。当CLKSEL_COPWAI=0时,COP在等待模式下可继续运行。PLLCTL_PCE:当PLLCTL_PCE=1时,COP在伪停止模式下可用。当PLLCTL_PCE=0时,COP要伪停止模式下不可用。看门狗的初始化如下:COPCTL_WCOP=0;/正常COP模式COPCTL_CR2=1;/CR2:0分频值为(2的23次方)COPCTL_CR1=1;/COP溢出周期=OSCCLK/CR2:0COPCTL_CR0=0;喂狗函数如下:/我的喂狗函数v

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论