单元七---看门狗应用.pptVIP

  1. 1、本文档共46页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多

任务二喂狗应用二、任务目标①检验掌握CC2530单片机看门狗定时器的使用技能。②检验掌握看门狗的特性、作用和相关寄存器配置的技能。③检验掌握看门狗喂狗应用的能力。任务二喂狗应用二、任务目标2.素养目标①培养学生在工作现场的6S意识和用电安全意识。②爱惜工具,注重场地整洁。③具备积极、主动的探索精神。任务二喂狗应用三、相关知识1.看门狗应用看门狗是专门监测单片机程序运行状态的电路结构。其基本原理是:启动看门狗定时器后,它就会从0开始计数,若程序在规定的时间间隔内没有及时对其清零,看门狗定时器就会复位系统。在看门狗模式下,当达到定时间隔时,不会产生中断,取而代之的是向系统发送一个复位信号。任务二喂狗应用三、相关知识2.CC2530看门狗的配置当启动看门狗定时器后,它就会从0开始计数,若程序在规定的时间间隔内没有及时对其清零(喂狗),看门狗定时器就会复位系统(相当于重启),如图7.1所示。任务二喂狗应用图7.1看门狗定时器任务二喂狗应用三、相关知识2.CC2530看门狗的配置在看门狗模式下,看门狗一旦被使能,就不能通过改变WDCTL.MODE[1:0]来改变该模式,而且选定的计数器最终计数值也不能被改变。位域的值在看门狗模式下,看门狗不会产生中断请求。若喂狗超时,则向系统发送一个重置信号。任务二喂狗应用三、相关知识2.CC2530看门狗的配置设置WDCTL.MODE[1:0]位为11,则看门狗定时器工作于定时器模式,看门狗定时器的计数器从0开始递增。当计数器达到选定间隔值时,CPU将IRCON2.WDTIF置1。如果IEN2.WDTIE=1且IEN0.EA=1,则看门狗定时器将产生一个中断请求(IRCON2.WDTIF/IEN2.WDTIE)。任务二喂狗应用三、相关知识3.喂狗应用看门狗的使用可以总结为:选择模式→选择定时器间隔→放狗→喂狗。看门狗定时器工作看门狗或定时器模式。任务二喂狗应用三、相关知识3.喂狗应用本任务要求选择看门狗模式。定时器启动之后,就会从0开始计数。在其计数值达到32768之前(即小于1s),若用以下代码喂狗。WDCTL=0x0A;WDCTL=0x05;则定时器的计数值会被清零,然后它会再次从0x0000开始计数,这样就防止了其发送复位信号,表现在开发板上就是LED一直亮着,不会闪烁。任务二喂狗应用三、相关知识3.喂狗应用喂狗程序一定要严格与上述代码一致,顺序颠倒、写错、少写一句都将起不到清零的作用。任务二喂狗应用四、任务实施1.基本设定本任务是在看门狗模式下实现LED闪烁周期1s的自动复位功能。(1)定时时间间隔设置要设置定时时间间隔为1s,首先设置系统时钟源振荡周期为32kHz,可通过时钟控制寄存器CLKCONCMD.OSC32K位来设定,然后设定看门狗定时器控制寄存器WDCTL.INT[1:0]为00设定时间间隔为1s。设置代码如下。CLKCONCMD=0x80;//系统时钟源选择32kHzWDCTL=0x00;//时间间隔1s任务二喂狗应用四、任务实施1.基本设定本任务是在看门狗模式下实现LED闪烁周期1s的自动复位功能。(2)看门狗定时器WDT工作模式设置设置WDT为看门狗模式,设置WDCTL.MODE[1:0]位为10。设置代码如下。WDCTL=0x00;//看门狗模式任务二喂狗应用四、任务实施1.基本设定本任务是在看门狗模式下实现LED闪烁周期1s的自动复位功能。(3)喂狗设置。看门狗清除序列包括在一个看门狗时钟周期内,写入0xA到WDCTL.CLR[3:0],然后写入0x5到同一个寄存器位。即对寄存器WDCTL进行如下配置。WDCTL|=0xA0;WDCTL|=0x50;但本任务要求LED1周期闪烁自动复位,所以我们在规定的时间间隔1s内不必对其清零(喂狗)。任务二喂狗应用四、任务实施2.代码设计(1)看门狗初始化函数看门狗初始化函数代码如下。voidwatchdog_Init(void){WDCTL=0x00;//看门狗模式,时间间隔一秒WDCTL|=0x08;//启动看门狗}任务二喂狗应用四、任务实施2.代码设计(2)喂狗函数喂狗函数代码如下

文档评论(0)

a105776456 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档