面向物联网的嵌入式系统开发-09-CC2530看门狗应用开发课件_第1页
面向物联网的嵌入式系统开发-09-CC2530看门狗应用开发课件_第2页
面向物联网的嵌入式系统开发-09-CC2530看门狗应用开发课件_第3页
面向物联网的嵌入式系统开发-09-CC2530看门狗应用开发课件_第4页
面向物联网的嵌入式系统开发-09-CC2530看门狗应用开发课件_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

CC2530和STM32嵌入式接口技术开发3.6CC2530看门狗应用开发CC2530和STM32嵌入式接口技术开发3.6CC253看门狗介绍CC2530与看门狗定时器项目场景说明项目实践看门狗介绍看门狗概念看门狗定时器(WDT,WatchDogTimer)是单片机的一个组成部分,它实际上是一个计数器,一般给看门狗一个数字,程序开始运行后看门狗开始倒计数。如果程序运行正常,过一段时间CPU应发出指令让看门狗复位,重新开始倒计数。如果看门狗减到0就认为程序没有正常工作,强制整个系统复位。看门狗概念看门狗定时器(WDT,WatchDogTime看门狗IC的基本原理看门狗,是一个定时器电路,一般有一个输入,叫喂狗(kickingthedogorservicethedog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给WDT清零。如果超过规定的时间不喂狗(一般在程序跑飞时),WDT定时超过,就会给出一个复位信号到MCU,使MCU复位以此防止MCU死机。看门狗的作用就是防止程序发生死循环,或者说程序跑飞。看门狗IC的基本原理看门狗,是一个定时器电路,一般有一个输入项目场景说明看门狗介绍CC2530与看门狗定时器项目实践项目场景说明CC2530看门狗定时器介绍CC2530单片机看门狗定时器有一下特性:四个可选的定时器间隔看门狗模式定时器模式在定时器模式下产生中断请求CC2530看门狗定时器介绍CC2530单片机看门狗定时器有CC2530看门狗定时器之看门狗模式在CC2530单片机系统复位之后,看门狗定时器同时被复位。此时要设置WDT为看门狗模式,必须从新设置WDCTL.MODE[1:0]位为10。然后启动看门狗,看门狗定时器的计数器就会从0开始递增。在看门狗模式下,一旦定时器使能,就不可以禁用该定时器,因此如果WDT位已经运行在看门狗模式下,再往WDCTL.MODE[1:0]写入00或10就不起作用了。CC2530看门狗定时器之看门狗模式在CC2530单片机系统CC2530看门狗定时器之定时器模式CC2530的看门狗定时器可以直接配置为定时器来使用,若要将WDT设置为一般定时器模式,必须把WDCTL.MODE[1:0]位设置为11。设置成功后定时器开始执行,且计数器从0开始递增。当计数器达到设定的计数值后,定时器将产生一个中断请求(IRCON2.WDTIF/IEN2.WDTIE)。CC2530看门狗定时器之定时器模式CC2530的看门狗定时寄存器介绍CC2530的看门狗的配置寄存器只有一个WDCTL(看门狗控制寄存器)。位名称复位R/W描述7:4CLR[3:0]0000R0/W清除定时器。当0xA跟随0x5写到这些位,定时器被清除(即加载0)。注意定时器仅写入0xA后,在1个看门狗时钟周期内写入0x5时被清除。当看门狗定时器是IDLE为时写这些位没有影响。当运行在定时器模式,定时器可以通过写1到CLR[0](不管其他3位)被清除为0x0000(但是不停止)。3:2MODE[1:0]00R/W模式选择。该位用于启动WDT处于看门狗模式还是定时器模式。当处于定时器模式,设置这些位为IDLE将停止定时器。注意:当运行在定时器模式时要转换到看门狗模式,首先停止WDT,然后启动WDT处于看门狗模式。当运行在看门狗模式,写这些位没有影响。00:IDLE01:IDLE(未使用,等于00设置)10:看门狗模式11:定时器模式1:0INT[1:0]00R/W定时器间隔选择。这些位选择定时器间隔定义为32kHz振荡器周期的规定数。注意间隔只能在WDT处于IDLE时改变,这样间隔必须在定时器启动的同时设置。00:定时周期×32,768(~1s)当运行在32kHzXOSC01:定时周期×8192(~0.25s)10:定时周期×512(~15.625ms)11:定时周期×64(~1.9ms)当通过CLKCONCMD.CLKSPD使能时钟分频时,看门狗定时器的长度间隔减少一个等于当前振荡器时钟频率除以设定时钟的因数速度。例如,如果选择32-MHx晶体并且时钟速度被设置为4MHz,则看门狗超时时间减少了32MHz/4MHz=8倍。如果看门狗时间间隔由WDCTL.INT设置是1秒,名义上是这个时钟分频因子的1/8秒。寄存器介绍CC2530的看门狗的配置寄存器只有一个WDCTL项目场景说明看门狗介绍CC2530与看门狗定时器项目实践项目场景说明项目场景车辆在中国的使用量越来越高,国内的车辆保有量已经达到了1.7亿辆,车辆在方便人们生产生活的同时也,车辆安全也越来越受到人们的重视,这种重视是多方面的,例如交通事故,城市拥堵,车辆安全等等,其中最关心的就是车辆安全,车辆安全直接影响到道路安全、交通安全和人身安全所以保证车辆的使用安全变的尤为重要,车辆安全由车辆的控制系统来保障。车辆的控制系统是通过CAN总线进行连接的,当一个系统出现故障时,最为重要的是能够快速修复,而修复的方法就是通过重新启动,在短时间内重新启动能够保证车辆的安全。项目场景车辆在中国的使用量越来越高,国内的车辆保有量已经达到任务目标使用CC2530微处理器模拟车辆设备复位重启,通过编辑程序使用CC2530微处理器的看门狗外设实现假设CC2530微处理器宕机后的系统复位重启,使用按键输入作为CC2530微处理器正常运行的条件,通过连接在CC2530微处理器管脚上的指示灯表示CC2530微处理器当前的工作状态。任务目标使用CC2530微处理器模拟车辆设备复位重启,通过编项目分析程序宕机后要让设备自动重启就需要用到CC2530单片机的看门狗外设,通过模拟喂狗以保持程序正常运行,中断喂狗则程序复位重启。CC2530看门狗的的配置比较简单,主要就是对WDCTL寄存器的配置,首先开启IDLE功能,功能开启后通过WDCTL寄存器低两位配置喂狗时间即可。喂狗操作则是依次向WDCTL寄存器写入0x0A和0x05即可。项目分析程序宕机后要让设备自动重启就需要用到CC2530单片程序流程图程序流程图项目实现看门狗初始化程序如下:voidwatchdog_init(void){WDCTL=0x00;//打开IDLE才能设置看门狗WDCTL|=0x08;//定时器间隔选择,间隔一秒}项目实现看门狗初始化程序如下:voidwatchdog_i项目实现喂狗程序内容如下:voidfeed_dog(void){WDCTL=0xa0;//清除定时器。当0xA跟随0x5写到这些位,定时器被清除WDCTL=0x50;LED2=ON;//系统不复位LED灯长亮LED1=ON;//系统不复位LED灯长亮}项目实现喂狗程序内容如下:voidfeed_dog(voi项目实现按键按下,执行喂狗操作:while(1){LED2=ON;//没有按下按键系统走动复位,所以LED0会闪烁LED1=ON;if(KEY1==ON){//按键按下,执行喂狗操作,LED0点亮delay_ms(10);//按键防抖if(KEY1==ON){//再次检测按键按下

feed_dog();//喂狗操作

}}}项目实现按键按下,执行喂狗操作:while(1){项目思考看门狗的基本工作原理?CC2530微处理器的看门狗有几种模式?如何实现CC2530看门狗的喂狗?如何驱动CC2530微处理器的看门狗?项目思考看门狗的基本工作原理?CC2530和STM32嵌入式接口技术开发3.6CC2530看门狗应用开发CC2530和STM32嵌入式接口技术开发3.6CC253看门狗介绍CC2530与看门狗定时器项目场景说明项目实践看门狗介绍看门狗概念看门狗定时器(WDT,WatchDogTimer)是单片机的一个组成部分,它实际上是一个计数器,一般给看门狗一个数字,程序开始运行后看门狗开始倒计数。如果程序运行正常,过一段时间CPU应发出指令让看门狗复位,重新开始倒计数。如果看门狗减到0就认为程序没有正常工作,强制整个系统复位。看门狗概念看门狗定时器(WDT,WatchDogTime看门狗IC的基本原理看门狗,是一个定时器电路,一般有一个输入,叫喂狗(kickingthedogorservicethedog),一个输出到MCU的RST端,MCU正常工作的时候,每隔一段时间输出一个信号到喂狗端,给WDT清零。如果超过规定的时间不喂狗(一般在程序跑飞时),WDT定时超过,就会给出一个复位信号到MCU,使MCU复位以此防止MCU死机。看门狗的作用就是防止程序发生死循环,或者说程序跑飞。看门狗IC的基本原理看门狗,是一个定时器电路,一般有一个输入项目场景说明看门狗介绍CC2530与看门狗定时器项目实践项目场景说明CC2530看门狗定时器介绍CC2530单片机看门狗定时器有一下特性:四个可选的定时器间隔看门狗模式定时器模式在定时器模式下产生中断请求CC2530看门狗定时器介绍CC2530单片机看门狗定时器有CC2530看门狗定时器之看门狗模式在CC2530单片机系统复位之后,看门狗定时器同时被复位。此时要设置WDT为看门狗模式,必须从新设置WDCTL.MODE[1:0]位为10。然后启动看门狗,看门狗定时器的计数器就会从0开始递增。在看门狗模式下,一旦定时器使能,就不可以禁用该定时器,因此如果WDT位已经运行在看门狗模式下,再往WDCTL.MODE[1:0]写入00或10就不起作用了。CC2530看门狗定时器之看门狗模式在CC2530单片机系统CC2530看门狗定时器之定时器模式CC2530的看门狗定时器可以直接配置为定时器来使用,若要将WDT设置为一般定时器模式,必须把WDCTL.MODE[1:0]位设置为11。设置成功后定时器开始执行,且计数器从0开始递增。当计数器达到设定的计数值后,定时器将产生一个中断请求(IRCON2.WDTIF/IEN2.WDTIE)。CC2530看门狗定时器之定时器模式CC2530的看门狗定时寄存器介绍CC2530的看门狗的配置寄存器只有一个WDCTL(看门狗控制寄存器)。位名称复位R/W描述7:4CLR[3:0]0000R0/W清除定时器。当0xA跟随0x5写到这些位,定时器被清除(即加载0)。注意定时器仅写入0xA后,在1个看门狗时钟周期内写入0x5时被清除。当看门狗定时器是IDLE为时写这些位没有影响。当运行在定时器模式,定时器可以通过写1到CLR[0](不管其他3位)被清除为0x0000(但是不停止)。3:2MODE[1:0]00R/W模式选择。该位用于启动WDT处于看门狗模式还是定时器模式。当处于定时器模式,设置这些位为IDLE将停止定时器。注意:当运行在定时器模式时要转换到看门狗模式,首先停止WDT,然后启动WDT处于看门狗模式。当运行在看门狗模式,写这些位没有影响。00:IDLE01:IDLE(未使用,等于00设置)10:看门狗模式11:定时器模式1:0INT[1:0]00R/W定时器间隔选择。这些位选择定时器间隔定义为32kHz振荡器周期的规定数。注意间隔只能在WDT处于IDLE时改变,这样间隔必须在定时器启动的同时设置。00:定时周期×32,768(~1s)当运行在32kHzXOSC01:定时周期×8192(~0.25s)10:定时周期×512(~15.625ms)11:定时周期×64(~1.9ms)当通过CLKCONCMD.CLKSPD使能时钟分频时,看门狗定时器的长度间隔减少一个等于当前振荡器时钟频率除以设定时钟的因数速度。例如,如果选择32-MHx晶体并且时钟速度被设置为4MHz,则看门狗超时时间减少了32MHz/4MHz=8倍。如果看门狗时间间隔由WDCTL.INT设置是1秒,名义上是这个时钟分频因子的1/8秒。寄存器介绍CC2530的看门狗的配置寄存器只有一个WDCTL项目场景说明看门狗介绍CC2530与看门狗定时器项目实践项目场景说明项目场景车辆在中国的使用量越来越高,国内的车辆保有量已经达到了1.7亿辆,车辆在方便人们生产生活的同时也,车辆安全也越来越受到人们的重视,这种重视是多方面的,例如交通事故,城市拥堵,车辆安全等等,其中最关心的就是车辆安全,车辆安全直接影响到道路安全、交通安全和人身安全所以保证车辆的使用安全变的尤为重要,车辆安全由车辆的控制系统来保障。车辆的控制系统是通过CAN总线进行连接的,当一个系统出现故障时,最为重要的是能够快速修复,而修复的方法就是通过重新启动,在短时间内重新启动能够保证车辆的安全。项目场景车辆在中国的使用量越来越高,国内的车辆保有量已经达到任务目标使用CC2530微处理器模拟车辆设备复位重启,通过编辑程序使用CC2530微处理器的看门狗外设实现假设CC2530微处理器宕机后的系统复位重启,使用按键输入作为CC2530微处理器正常运行的条件,通过连接在CC2530微处理器管脚上的指示灯表示CC2530微处理器当前的工作状态。任务目标使用CC2530微处理器模拟车辆设备复位重启,通过编项目分析程序宕机后要让设备自动重启就需要用到CC2530单片机的看门狗外设,通过模拟喂狗以保持程序正常运行,中断喂狗则程序复位重启。CC2530看门狗的的配置比较简单,主要就是对WDCTL寄存器的配置,首先开启IDLE功能,功能开启后通过WDCTL寄存器低两位配置喂狗时间即可。喂狗操作则是依次向WDCTL寄存器写入0x0A和0x05即可。项目分析程序宕机后要让设备自动重启就需要用到CC2530单片程序流程图程序流程图项目实现看门狗初始化程序如下:voidwatchdog_init(void){WDCTL=0x00;//打开IDLE才能设置看门狗WDCTL|=0x08;//定时器间隔选择,间隔一秒}项目实现看门狗初始化程序如下:voidwatchdog_i项目实现喂狗程序内容如下:vo

温馨提示

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

评论

0/150

提交评论