[发明专利]一种应用于嵌入式软件的通用系统有效
申请号: | 202011240696.7 | 申请日: | 2020-11-09 |
公开(公告)号: | CN112328313B | 公开(公告)日: | 2023-07-14 |
发明(设计)人: | 谌兴良;徐雪峰;李海军;张子昌;李兵军;丁磊;朱江涛;孙寒冰;但杨文;李彬 | 申请(专利权)人: | 中国船舶重工集团公司第七0七研究所九江分部 |
主分类号: | G06F9/4401 | 分类号: | G06F9/4401;G06F9/445;G06F8/36 |
代理公司: | 北京慕达星云知识产权代理事务所(特殊普通合伙) 11465 | 代理人: | 符继超 |
地址: | 332007 江西*** | 国省代码: | 江西;36 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 应用于 嵌入式 软件 通用 系统 | ||
本发明公开了一种应用于嵌入式系统的通用架构,包括:硬件驱动层、数据分发层、数据交换层和业务应用层,硬件驱动层根据Drivers.xml文件中的配置信息,实现底层通讯接口的配置、初始化、启动、数据收发中断、数据缓存及事件通知;数据分发层将来自硬件驱动层的数据进行分流处理;数据交换层用于接收数据分发层分流的数据以及为业务应用层提供访问接口;业务应用层完成嵌入式系统的任务需求。实现了嵌入式系统开发的通用化、组件化、规范化。
技术领域
本发明涉及嵌入式系统技术领域,更具体的说是涉及一种应用于嵌入式系统的通用架构。
背景技术
嵌入式系统软件的特点是系统功能复杂、网络协议繁多、软件环境多样、硬件平台互异。现实中每一型号产品的软件开发只关注满足眼前特定需求,很少考虑软件的复用度和通用性,这就导致具体产品具体定制、类似产品重复开发的不良局面。不合理的软件架构会增加大量的重复的编码和测试工作、无法或较难应对需求变更的风险,具体表现为投入人员多、开发周期长、难以适应修改、进度难以保证、后期维护难度大的问题。
因此,如何提供一种通用性强的嵌入式系统软件架构是本领域技术人员亟需解决的问题。
发明内容
有鉴于此,本发明提供了一种应用于嵌入式软件的通用系统,能够屏蔽底层硬件差异,统一上层应用,并且拥有良好跨平台特性,提高了编程效率、可移植性和可扩展性。
为了实现上述目的,本发明采用如下技术方案:
一种应用于嵌入式软件的通用系统,包括:硬件驱动层、数据分发层、数据交换层和业务应用层,
所述硬件驱动层根据Drivers.xml文件中的配置信息,实现底层通讯接口的配置、初始化、启动、数据收发中断、数据缓存及事件通知;
所述数据分发层将来自所述硬件驱动层的数据进行分流处理;
所述数据交换层用于接收数据分发层分流的数据以及为所述业务应用层提供访问接口;
所述业务应用层完成嵌入式系统的任务需求。
进一步,所述数据分发层的分流处理包括向数据池的传递、向通信接口的透明转发或重新组帧转发、以及数据帧过滤。
进一步,所述数据交换层包括网络协议描述模型、系统配置文件解析模块、动态加载子模块、节点设备监控模块、和数据接收、数据缓存及数据发送模块;
所述网络协议描述模型用于实现各种通讯协议格式的统一描述;
所述系统配置文件解析模块用于实现网络协议配置文件Devices.xml的解析、通讯接口配置文件Drivers.xml的解析、以及节点设备对象、数据帧对象和数据对象的动态创建;
所述动态加载子模块采用XML格式的系统配置文件对系统所需动态加载子模块的名称及参数进行描述,系统主框架在完成初始化后,读取并解析系统配置文件,逐一传入模块参数并完成各子模块的动态加载;
所述节点设备监控模块用于实现网络内各节点设备工作状态的监视;
所述数据接收、数据缓存及数据发送模块用于接收来自数据分发层的数据帧,根据数据帧头信息找到数据帧在数据池中的对应内存位置完成数据拷贝,实现数据在数据池中的缓存。
进一步,所述网络协议描述模型包括Device元素、PDO元素和Signal元素,
所述Device元素用于记录总线上与所述嵌入式系统进行数据交互的所有节点设备;
所述PDO元素用于记录节点设备发送的数据帧;
所述Signal元素用于记录组成数据帧的所有数据信息。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国船舶重工集团公司第七0七研究所九江分部,未经中国船舶重工集团公司第七0七研究所九江分部许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011240696.7/2.html,转载请声明来源钻瓜专利网。