[发明专利]基于vxWorks系统的多任务访问同一IIC总线的方法有效
申请号: | 201911192484.3 | 申请日: | 2019-11-28 |
公开(公告)号: | CN110955507B | 公开(公告)日: | 2022-10-21 |
发明(设计)人: | 查荣明;曹峰;王瑞球 | 申请(专利权)人: | 苏州长风航空电子有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 北京国坤专利代理事务所(普通合伙) 11491 | 代理人: | 赵红霞 |
地址: | 215000 江*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 vxworks 系统 任务 访问 同一 iic 总线 方法 | ||
1.基于vxWorks系统的多任务访问同一IIC总线的方法,其特征在于包括如下步骤:
步骤一,消息及任务创建,
创建一个基于优先级的消息队列,创建一个IIC访问请求处理任务,创建有IIC访问请求任务;
步骤二,IIC访问请求处理任务的运行,
IIC访问请求处理任务创建后,定期查询并接收消息队列中的消息,解析消息后,至少得到IIC地址、读写类型、寄存器地址信息,屏蔽任务抢占及中断后,调用IIC访问接口,然后使能任务抢占及中断,最后等待固定时间,如果没有消息,则等待固定时间,等待固定时间用于优先级低的任务能够得到运行;
步骤三,有IIC访问请求任务的运行,
有IIC访问请求任务创建后,检查是否有需要访问IIC总线,如果有,则根据当前任务的优先级,将IIC地址、读写类型、寄存器地址信息组装成IIC访问请求信息,调用消息发送接口,将请求信息发送到消息队列中,如果没有,则进行其他处理,消息队列会根据优先级,将请求信息按照优先级高低顺序排序。
2.根据权利要求1所述基于vxWorks系统的多任务访问同一IIC总线的方法,其特征在于:
所述步骤一中,所述消息队列在所述IIC访问请求处理任务与有IIC访问请求任务之前创建。
3.根据权利要求1所述基于vxWorks系统的多任务访问同一IIC总线的方法,其特征在于所述步骤一包括:
步骤201,设备上电,程序运行;
步骤202,基于优先级的消息队列创建,该消息队列的消息内容包含读写类型、IIC地址、寄存器类型;
步骤203,IIC访问请求处理任务的创建,用于处理IIC请求消息及访问;
步骤204,IIC访问请求处理任务的运行;
步骤205,有IIC访问请求任务的创建,具备若干个任务创建;
步骤206,有IIC访问请求的任务的运行。
4.根据权利要求1所述基于vxWorks系统的多任务访问同一IIC总线的方法,其特征在于所述步骤二包括:
步骤301,监听消息队列,检查是否有新消息产生;
步骤302,有新消息产生,运行步骤303,否则,运行步骤309;
步骤303,解析消息,从消息中获取IIC地址、读写类型、寄存器地址信息;
步骤304,屏蔽任务抢占,屏蔽高优先级任务的抢占,保证步骤306运行时,不被其他任务抢占;
步骤305,屏蔽中断,保证步骤306运行时,不被中断打断;
步骤306,调用IIC访问接口,用于对IIC总线的访问;
步骤307,使能中断,保证中断能够正常工作;
步骤308,使能任务抢占,恢复任务抢占,使得不影响其他任务的运行;
步骤309,等待固定时间,用于其它优先级较低任务的运行。
5.根据权利要求1所述基于vxWorks系统的多任务访问同一IIC总线的方法,其特征在于所述步骤三包括:
步骤401:非消息队列的其它任务处理;
步骤402:检查有IIC访问请求;
步骤403:如果存在有IIC访问请求,那么运行步骤404;否则运行步骤401;
步骤404:组装请求信息,包括但不限于IIC地址、读写类型、寄存器地址;
步骤405:根据任务的优先级,调用消息发送接口,将信息发送到消息队列中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州长风航空电子有限公司,未经苏州长风航空电子有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911192484.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种自动化车用后视镜支架加工设备
- 下一篇:一种财务数据处理系统