加入收藏 | 设为首页 | 会员中心 | 我要投稿 济源站长网 (https://www.0391zz.cn/)- 数据工具、数据仓库、行业智能、CDN、运营!
当前位置: 首页 > 站长资讯 > 动态 > 正文

巨头们缘何疯狂扎堆无人机的研究?

发布时间:2021-01-30 16:12:08 所属栏目:动态 来源:互联网
导读:三、看门狗定时器的程序编写 1、看门狗软件程序设计流程 因为看门狗是对系统地复位或中断的操作,所以不需要外围的硬件电路。要实现看门狗的功能,只需要对看门狗的寄存器组进行操作,即对看门狗的控制寄存器(WTCON)、看门狗数据寄存器(WTDAT)、看门狗计数寄

三、看门狗定时器的程序编写

1、看门狗软件程序设计流程

因为看门狗是对系统地复位或中断的操作,所以不需要外围的硬件电路。要实现看门狗的功能,只需要对看门狗的寄存器组进行操作,即对看门狗的控制寄存器(WTCON)、看门狗数据寄存器(WTDAT)、看门狗计数寄存器(WTCNT)的操作。

「其一般流程如下:」

设置看门狗中断操作,包括全局中断和看门狗中断使能及看门狗中断向量的定义,如果只是进行复位操作,这一步不用设置。

对看门狗控制寄存器(WTCON)的设置,包括设置预分频比例因子、分频器的分频值,中断使能和复位使能等。

对看门狗数据寄存器(WTDAT)和看门狗计数寄存器(WTCNT)的设置。

启动看门狗定时器。
 

WTDAT用于指定超时时间,在看门狗把复位功能禁止并打开中断使能后,此时看门狗定时器就是一个普通的定时器,使用方法和普通定时器一样。

当使用复位功能后,由于WTCNT的值减到0时,系统就会复位,所以WTDAT的值装不进看门狗计数寄存器(WTCNT)中。复位后初始值为0x8000。

3) 看门狗计数寄存器(WTCNT) 喂狗用

WTCNT包含看门狗定时器工作的时候,计数器的当前计数值。WTCNT描述如下:
 

式中Prescaler value 为预分频比例放大器的值;Divison_factor是四分频的分频比,可以是16、32、64或128。

4. 工作流程

一旦看门狗定时器被允许,看门狗定时器数据寄存器(WTDAT)的值就不能被自动地装在到看门狗定时器(WTCNT)中。因此,看门狗启动前要将一个初始值写入看门狗计数器(WTCNT)中。

【注意】 当4412用嵌入式ICE调试时,看门狗定时器的复位功能就不被启动,看门狗定时器能从CPU内核信号判断出当前CPU是否处于调试状态。如果看门狗定时器确定当前模式是调试模式,尽管看门狗产生溢出信号,但是仍然不会产生复位信号。

每个时钟周期都会将看门狗定时计数器WTCNT里的值减1,当计数器WTCNT里的值变为0时开始执行超时操作。

首先,判断看门狗控制寄存器里bit2 WTCON[2]设置情况, 如果为1则产生中断信号,引起系统中断, 如果为0不做任何操作,进入复位信号产生器,如果WTCON[0]位为1,则产生控制器复位信号,否则不做任何操作。每次超时操作之后,看门狗WTCON会自动加载看门狗数据寄存器WTDAT里的用户设置值,继续执行递减操作。

二、寄存器设置

1)看门狗定时器控制寄存器(WTCON)

(编辑:济源站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读