飞思卡尔看门狗详解

发布者:qazwsx007最新更新时间:2021-08-30 来源: eefocus关键字:飞思卡尔  看门狗  喂狗程序 手机看文章 扫描二维码
随时随地手机看文章

目前接触到的单片机中都有看门狗模块,不过写过的程序也比较简单,程序能够稳定运行,所以就不怎么理会这看门狗,因此也不知道看门狗是怎么回事。


最近写了个超声波测距的程序,运行过程中程序老是会无故停止,就是死机了。因此不得不重新面对看门狗,经过两天的奋斗,终于让看门狗顺利工作了。下面记一下XS128的看门狗的相关寄存器及用法。


看门狗模块用于检测程序的正常运行,启动看门狗后,必须在看门狗复位之前向ARMCOP中依次写入0X55和0XAA ,这样看门狗就会重新启动计时。如果在规定时间内没有完成向ARMCOP中依次写入0X55和0XAA的操作,就会引起看门狗复位。这样可以使程序重新运行,减小程序跑死的危害。


看门狗的设置比较简单,只要配置好寄存器COPCTL即可用。


COPCTL的第七位为: WCOP。若写入COPCTL_WCOP=1,则看门狗行运在窗口模式下,必须在看门狗周期的后25%时间内向ARMCOP依次写入0X55和0XAA。若在其他时间写入,或写入其他值,都会让看门狗溢出,使单片机复位。若写入COPCTL_WCOP=0,则看门狗运行在正常模式下。当看门狗使能后,只要在看门狗溢出周期内依次向ARMCOP写入0X55和0XAA,使看门狗计数复零,即可。


第六位为:RSBCK,BDM模式下的COP和RTI 停止位。若COPCTL_RSBCK=1,则只要进入BDM模式,就停止COP和RTI(实时中断)计数。若COPCTL_RSBCK=0,则在BDM模式下允许COP和RTI运行。


低三位为:CR2、CR1、CR0。这三位是看门狗时钟分频位。当CR[2:0]=000时,看门狗COP不可用。只要CR[2:0]不为000,看门狗就开启了。当CR[2:0]=001时,分频值为(2的14次方)。当CR[2:0]=010时,分频值为(2的16次方)。当CR[2:0]=011时,分频值为(2的18次方)。当CR[2:0]=100时,分频值为(2的20次方)。当CR[2:0]=101时,分频值为(2的22次方)。当CR[2:0]=110时,分频值为(2的23次方)。当CR[2:0]=111时,分频值为(2的24次方)。


看门狗的溢出频率为:COP溢出频率=OSCCLK / CR[2:0]。OSCCLK为晶振频率。


在正常运行模式下,只要配置好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_RSBCK=0; //在BDM模式下允许COP和RTI运行

COPCTL_CR2=1; //CR[2:0]分频值为(2的23次方)

COPCTL_CR1=1; //COP溢出周期=OSCCLK/CR[2:0]


COPCTL_CR0=0;


喂狗函数如下:

void feeddog()

{

ARMCOP=0X55; //在特定时间内依次向ARMCOP写入0X55,0XAA;

ARMCOP=0XAA;


}

关键字:飞思卡尔  看门狗  喂狗程序 引用地址:飞思卡尔看门狗详解

上一篇:freescale飞思卡尔 HCS12 系列单片机bootloader详解(二)
下一篇:飞思卡尔MC9S12G系列内部看门狗

推荐阅读最新更新时间:2024-11-11 12:40

ARM、飞思卡尔和IBM联手推出物联网开发套件
日前,ARM联合飞思卡尔及IBM,共同开发了一套专供物联网的开发套件。套件基于mbed开发平台,提供开发板、软件和控制板的全套产品,软件包括了完整的IBM Bluemix云平台,提供包括数据存储、网页寄存、分析以及移动资源等。 ARM物联网市场部副总裁Zach Shelby表示: 这款产品非常适合入门级学习,它为云连接的物联网提供了一个交钥匙方案,让初学者尽快的尝试物联网的创意,开发者应该专注于应用程序而不是繁琐的网络连接问题。 当该套件连网后,会自动连接其专属页面,并开始上传传感器数据。 开发板采用的是飞思卡尔Freedom系列开发板,此外有一个包含一个操纵杆,两个分压器、一个三轴加速度计和一个温度传感器的
[物联网]
通讯标准不统一,工业4.0还怎么搞
工业4.0是近年来科技产业相当热门的话题,而这股风潮也吹向了电子元件代理商,负责半导体元件销售的安富利电子元件台湾区总经理郑陆文便向台湾媒体谈到,尽管最近半导体产业不断发生并购,但仍然不影响原厂与安富利之间的关系,像是NXP并购飞思卡尔,对于安富利的影响并没有太大,恰巧的是,这些采取并购策略的业者,都有工业相关领域的解决方案。 而现阶段,工业4.0发展最大的问题在于,工业通讯标准林立造成了系统整合乃至于装置业者在通讯标准的选择上有不少的困扰。郑陆文不讳言,安富利的确看到了这样的情况,在现阶段也只能尽可能就旗下现有的解决方案,来满足市场需求。   安富利电子元件台湾区总经理郑陆文 事实上,一般人对于元件代理商的印
[嵌入式]
飞思卡尔将物联网带入汽车
汽车软硬件解决方案提高了融合以太网音视频桥接技术(AVB)的车载信息娱乐系统的开发效率,为互连汽车创造美好未来。 2014年10月21日,底特律讯-(SAE融合大会暨展览会)-飞思卡尔半导体公司(NYSE:FSL)日前推出一款全面的软硬件开发系统,使新一代车载信息娱乐系统、仪表板、摄像头远程信息处理和后座娱乐设计可以实现汽车级以太网连接。这款全新的解决方案支持整个车辆实现实时数据传输,从而取代了昂贵的数字技术和其他方法。 这款面向车载信息娱乐开发系统(AI)的全新且全面的SABRE(快速架构智能应用蓝图)采用拥有卓越性能和可扩展性的飞思卡尔i.MX 6系列应用处理器,可加快并简化以太网汽车音视频桥接(AVB)的部署。该开
[物联网]
[HAL库学习之路]5.IWDG-独立看门狗
记录自己的STM32的HAL库的学习之路,不定期更新… 一、Pinout 二、Clock Configuration 三、Configuration 配置GPIO 配置IWDG 四、Generate Code 代码 主函数首先点亮两个LED 1S后熄灭,在主循环里检测按键输入进行喂狗,如果在4s内进行喂狗,则1个LED闪烁,否则程序复位。 int main(void) { /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ /* MCU Configuration---------------------------------------
[单片机]
[HAL库学习之路]5.IWDG-独立<font color='red'>看门狗</font>
STM32窗口看门狗WWDG复位
STM32除了有一个独立看门狗外,还有一个窗口看门狗。窗口看门狗当然也能复位MCU,但是与独立看门狗复位不同。首先,窗口看门狗所需要的时钟源来自PCLK2,它时钟是经过PCLK2的4096分频后得到的,能够提供准确的计数。其次,复位的条件有要求:(1)当减计数器的值小于0x40,则产生复位;(2)当减计数值在窗口外被重新装载,则复位。接着,窗口看门狗的计数值与窗口值都只有7位,所以变化范围在0~127之间。还有,装载值一定要大于0x3F,否则就失去了看门狗的功能。 窗口看门狗,它的 窗口 可以有下图体现出来: 图中W 表示窗口值,当看门狗的减计数器不断递减,只有计数值到达窗口值与0x3F之间的时候 喂狗 ,才不会发生复位,
[单片机]
STM32窗口<font color='red'>看门狗</font>WWDG复位
飞思卡尔S12 MagniV混合信号MCU助中国汽车市场应对技术挑战
据中国汽车工业协会统计,中国汽车销售量增长迅速,2013年4月比去年同期增长13%。与此同时,为在这个竞争激烈的市场中脱颖而出,汽车制造商为汽车不断添加新的功能,每辆汽车采用的电子配置也不断增加。为了满足经济高效汽车电子系统的需求,飞思卡尔半导体的S12 MagniV混合信号微控制器(MCU)系列组合为中国汽车制造商提供了高度集成、单芯片解决方案,这些解决方案极为可靠且易于开发,同时有助于降低物料成本(BOM)和总制造成本。 上汽集团(SAIC)技术中心高级经理金哲峰表示:“S12 MagniV单芯片解决方案帮助我们实现了以前需要多个器件才能实现的相同功能,节省了板卡空间,降低了物料成本,并使器件之间的兼容性得到大大改善,使我
[单片机]
飞思卡尔单片机PLL时钟总线模块
要设定PWM模块首先要确定片内总线时钟,MC9S12XS系列单片机增加了时钟产生器模块,锁定内部频率更高的压控振荡器VCO频率,作为系统时钟,单片机的内部时钟可达80MHz,片内总线时钟可达40MHz。 先给出一段例程 Code: REFDV=0x07; //REFDIV=7 SYNR=0x53; //SYNDIV=19 while(LOCK!=1); //等待VCO稳定 POSTDIV=0; //POSTDIV=0,VCO时钟=80MHz CLKSEL_PLLSEL=1; //选择由Fpll产生总线时钟,Fbus=Fpll/2=40MHz 注:LOC
[单片机]
小广播
设计资源 培训 开发板 精华推荐

最新单片机文章
  • 学习ARM开发(16)
    ARM有很多东西要学习,那么中断,就肯定是需要学习的东西。自从CPU引入中断以来,才真正地进入多任务系统工作,并且大大提高了工作效率。采 ...
  • 学习ARM开发(17)
    因为嵌入式系统里全部要使用中断的,那么我的S3C44B0怎么样中断流程呢?那我就需要了解整个流程了。要深入了解,最好的方法,就是去写程序 ...
  • 学习ARM开发(18)
    上一次已经了解ARM的中断处理过程,并且可以设置中断函数,那么它这样就可以工作了吗?答案是否定的。因为S3C44B0还有好几个寄存器是控制中 ...
  • 嵌入式系统调试仿真工具
    嵌入式硬件系统设计出来后就要进行调试,不管是硬件调试还是软件调试或者程序固化,都需要用到调试仿真工具。 随着处理器新品种、新 ...
  • 最近困扰在心中的一个小疑问终于解惑了~~
    最近在驱动方面一直在概念上不能很好的理解 有时候结合别人写的一点usb的例子能有点感觉,但是因为arm体系里面没有像单片机那样直接讲解引脚 ...
  • 学习ARM开发(1)
  • 学习ARM开发(2)
  • 学习ARM开发(4)
  • 学习ARM开发(6)
何立民专栏 单片机及嵌入式宝典

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

换一换 更多 相关热搜器件

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

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