基于VxWorks的看门狗定高效定时机制设计实现.doc
《基于VxWorks的看门狗定高效定时机制设计实现.doc》由会员分享,可在线阅读,更多相关《基于VxWorks的看门狗定高效定时机制设计实现.doc(3页珍藏版)》请在三一文库上搜索。
1、基于VxWorks的看门狗定高效定时机制设计实现VxWorks是目前应用最多的嵌入式实时操作系统之一,广泛应用于工业控制、医疗器械、通信、航空航天以及武器装备等领域。VxWorks是32位实时嵌入式操作系统,自20世纪80年代由风河公司推出以来,其良好的实时性、对多任务的支持、体积精简、可剪裁等优点得到众多公司、开发者及用户的喜爱。在实时性要求高的应用系统中,定时器是经常被用到的重要器件。而对于VxWorks操作系统本身来说,并未提供一个通用、高效的定时器组件。文章所提出的共享看门狗定时机制就是针对这种情况实现的一种通用型定时器组件。1 VxWorks定时的方法1.1 使用taskDely函数
2、函数原型为:STATUS taskDelay(int TICks)该函数提供一种简单的任务休眠机制,常用于需要不精确定时或延时的应用中,其定时的单位为TIck,默认情况下60(TIcks)为1s (利用sysClkRateSet函数可以修改系统默认的时钟速率)。在任务中调用taskDelay函数可以在指定的TIcks期间空出CPU的使用权,同时改变该任务的状态为DELAY.由于经常受到任务调度的影响,该定时机制并不精确。1.2 看门狗watchDogVxWorks提供了一个看门狗定时器(watchDog timer),它由以下四个函数维护:wdCreate( ) 创建并初始化一个看门狗定时器;
3、wdDelete( ) 终止并删除一个看门狗定时器;wdStart( ) 启动看门狗定时器;wdCANcel( ) 暂停当前看门狗定时器运行。利用wdCreate函数,在任何任务中都可以创建一个看门狗定时器,经过设置的时间段后,实现指定的C函数。watchDog定时器作为系统时钟中断服务程序的一部分来维护。因此看门狗所定时执行的程序工作在系统中断级别具有很高的优先级,该程序必须遵守一般ISR程序的规定,不能使用任何可能被阻塞的程序。文章所介绍的高效定时器就是在看门狗定时器的基础上设计的。1.3 POSIX标准的timerVxWorks同时也提供IEEE的POSIX 1003.1b标准定时器接口
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 VxWorks 看门狗 高效 定时 机制 设计 实现
链接地址:https://www.31doc.com/p-3416557.html