全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
嵌入式系统看门狗的使用随着32 位微控制器在嵌入式产品中的广泛应用,嵌入式操作系统也逐渐被大量应用。由于嵌入式操作系统的使用, 大大降低了复杂应用系统中软件开发的工作量, 使得嵌入式软件能够采用现代的软件开发技术进行代码编写和调试, 从而也提高了软件的质量。 但在嵌入式应用中, CPU 必须可靠工作, 即使因为某种原因进入一个错误状态, 系统也应该可自动恢复。 看门狗的用途就是使微控制器在进入错误状态后的一定时间内复位。看门狗的基本原理所谓 “看门狗” 是指在系统设计中通过软件或硬件方式在一定的周期内监控系统的运行状况。如果在规定时间内没有收到来自系统的触发信号, 则系统会强制复位, 以保证系统在受到干扰时仍然能够维持正常的工作状态。 它主要有寄存器、 定时器和看门狗模等部件构成, 其内部结构如图1 所示。图1、看门狗内部结构在这里看门狗的原理我想大家都已经比较熟悉,我不再罗嗦关于看门狗在前后台运行的程序(无OS)上使用很简单,我们只需要定时的去喂狗就可以。但是对于使用的嵌入式操作系统的软件我们上面的简单喂狗方式就行不通了。原因是系统是会执行任务调度的。每一个任务在运行时就相当于一个前后台系统。任一时刻只会有一个任务获得CPU的支配权而运行。这样就要求我们必须在每一个任务中都要执行喂狗动作。这样一来虽然达到了及时喂狗而不至于让系统复位的目的,但是如果有一个任务现在异常而不能运行的话,或者是两个任务因为资源问题发生死锁,系统其它的任务还会继续喂狗。这样应用程序虽然出了问题,但是系统依然在按正常运行。所以在OS中使用看门狗就变得复杂起来。下面我说一下我是如何在OS中使用看门狗的。以uCOS-II在STM32的平台上使用为例首先我为每一个任务分配一个软件看门狗计数器。这样就形成了软件看门狗计数器队列。这个队列在系统中使用的是全局变量(关于全局变量的使用可以看我上面一篇的“谈谈在UCOS中使用全局变量”一文)。,设置一个优先级别最高的任务作为监视器 ,以监视各应用任务是否正常运行 ,该监视器即为软件看 门狗该任务对其他任务都设定一个计时器,每个被监视的任务在设定的时间内对软件看门狗中相应的定时器定时清零,即 “ 喂软狗”在其他 任务都正常工作的情况下,软件看门狗对 内置硬件看 门狗定时器周期性清零,即 “ 喂狗” 若某个任务出现故障,则该任务在设置的时间内对软件看门狗不 “ 喂软狗”,此时与之对应的定时器溢出,软件看门狗发送指令,把该任务的堆栈地址指到其起始地址,重启该任务当在设定的次数内不能有效启动,则监视器任务延时 “ 喂狗”,内置硬件看门狗计数器溢出,自动重启系统另外,当监视器任务本身或系统硬件出现故障时,不能及时对硬件看门狗定时器清零,则重启系统监控软件狗的任务原理图如下:喂硬件狗计数器1任务1软狗计数器任务2软狗计数器任务n软狗计数器任务2软狗计数器.系统的实现过程本软件看门狗通过检查各应用任务是否在规定的时间内对其 “ 喂软狗”来确定各任务的运行状态,硬件看门狗通过检查软件看门狗是否在规定的时间内对其 “ 喂狗”来实现对监视器任务的监视通过微 处理器的定时器中断机制,为每个任务分配计时单元和运行标志系统具体的执行操作如下: 1 )系统中某任务空闲时,以小于 “ 喂软狗”设定的时间间隔为周期,周期性地 “ 喂软狗” 2 )在该任务执行时,预计执行所需的最长耗时,并用稍大于该最大耗时的时问间隔设置监视器中与 其对应的定时器参数,同时中断周期性 “ 喂软狗”模块,启动监视器任务中的定时器倒计数当该任务正常执行完毕时,发送信号 “ 喂软狗”,对定时器清零,复位该任务供下次使用,同时恢复周期性 “ 喂软狗”模块 3 )当任务出现异常时,不能在设定的时间间隔内完成该任务,不能对软件看门狗及时清零,使得监 视器中相应的定时器溢出,监视器任务通过内核服务发送指令,把该任务的堆栈地址指到其起始地址,重启该任务,累计其复位次数,同时把该任务的计时器清零如果在设定的次数内不能够有效启动该任务,软件看门狗则延时喂内置硬件看门狗,内置看门狗计数器溢出,自动重启
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 可持续物流模式创新-洞察及研究
- 健康风险感知与行为选择-电子烟用户决策模型-洞察及研究
- 2025年一级建造师《公路实务》考试真题及答案解析(完整版)
- SEO与内容营销的协同优化研究-洞察及研究
- 2025年物流服务师职业技能培训考试题库(附答案)
- 代谢综合征患者糖尿病并发症的营养干预效果评估-洞察及研究
- 2026届安徽省淮北市化学高一第一学期期末综合测试模拟试题含解析
- 邯郸市中心医院招聘管理人员笔试真题2024
- 2026届宣城市重点中学高二化学第一学期期中联考试题含解析
- 苏州科技大学招聘考试真题2024
- 高三英语备考经验交流课件
- 消防设施操作员基础知识课件
- 康熙字典汉字大全及字义解释(按笔画分类)
- 2022危险性较大的分部分项工程安全管理实施细则
- 巡检记录表巡检记录表
- 2023年度青春期家庭教育调查报告
- 音乐生职业生涯规划书
- GB/T 23617-2009林业检疫性有害生物调查总则
- GB 17498.2-2008固定式健身器材第2部分:力量型训练器材附加的特殊安全要求和试验方法
- 二年级硬笔书法教学课件
- 配电线路巡视-配电线路运行与维护
评论
0/150
提交评论