碧波液压网 欢迎你,游客。 登录 注册

基于μC/OS-Ⅱ嵌入式内核的排气分析仪开发研究

版权信息:站内文章仅供学习与参考,如触及到您的版权信息,请与本站联系。

  随着各国对汽车排放污染物控制的日益严格,用户对排气分析仪的性能提出了更高要求.排气分析仪中移植嵌入式内核μC/OS-Ⅱ主要是基于提高系统的健壮性、可扩展性考虑.嵌入式内核可以更好地协调软件运行,健壮的软件保证了新设计的排气分析仪有比采用普通监控程序更高的可靠性.移植嵌入式操作系统同时也为系统以后的功能扩展提供了比较标准的易于扩展的接口.自动化、多功能化、数字处理能力和友好的人机界面都将是排气分析仪发展的必然趋势,采用单片机加嵌入式内核的系统结构为排气分析仪系统提供了一个良好的技术发展平台.

  1 内核基本功能

  μC/OS-Ⅱ是一个实时操作系统内核,在移植到排气分析仪中μC/OS-Ⅱ内核包含了任务管理、时间管理、任务间通信与同步和内存管理等基本功能[1].

  μC/OS-Ⅱ可以管理多达64个任务,但系统保留了8个优先级以备系统使用,因此用户可以使用多达56个应用任务.必须给每个任务赋予不同的优先级,优先级可以从0到OS_LOWEST_PRIO - 2,优先级号越低,任务的优先级越高.μC/OS-Ⅱ总是运行进入就绪态的优先级最高的任务.在内核中,任务的优先级号就是任务编号.

  μC/OS-Ⅱ的任务调度按抢先式多任务系统设计,即它总是执行处于就绪条件下优先级最高的任务[2].为了简化系统的设计,μC/OS-Ⅱ规定所有任务的优先级必须不同,任务的优先级同时也唯一地标识了该任务.排气分析仪系统通过两种方法进行任务调度:一是时钟节拍或其它硬件中断后系统调用函数OSIntCtxSw()执行切换功能[3];二是任务主动进入挂起或等待状态,这时系统通过发出中断命令完成任务切换,中断服务程序的向量地址必须指向函数OSCtxSw().

  在排气分析仪系统中,没有利用μC/OS-Ⅱ的任务睡眠状态,主要是考虑到系统任务的个数较少,减少任务的状态可以提高系统任务之间切换的效率.μC/OS-Ⅱ要求用户提供一个称为时钟节拍的定时中断.该中断每秒发生10至100次,时钟节拍的实际频率由用户控制.任务申请延时或超时控制的计时基准就是该时钟节拍.该时钟节拍同时还是任务调度的时间基准.μC/OS-Ⅱ提供了与时钟节拍相关的系统服务,允许任务延时一定数量时钟节拍或按时、分、秒、毫秒进行延时.本系统时钟管理中断设为每秒10次,主要是考虑到校准/测量任务和通讯任务有比较连续的数据处理,不利于频繁中断,所以系统对实时性要求并不高.

  对于一个多任务操作系统来说,任务间通信与同步是必不可少的.μC/OS-Ⅱ提供了4种同步对象,分别是信号量、邮箱、消息队列和事件.排气分析仪系统采用了信号量这种同步手段.通过邮箱和消息队列还可以进行任务间的通信.所有的同步对象都有相应的创建、等待、发送的函数.但这些对象一旦创建就不能删除,所以要避免创建过多的同步对象以节约系统资源.

你没有登陆,无法阅读全文内容

您需要 登录 才可以查看,没有帐号? 立即注册

标签:
点赞   收藏

相关文章

发表评论

请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。

用户名: 验证码:

最新评论