[发明专利]一种CAN设备开发系统及其方法有效
申请号: | 201911043123.2 | 申请日: | 2019-10-30 |
公开(公告)号: | CN110806855B | 公开(公告)日: | 2021-06-08 |
发明(设计)人: | 杨腾;陈龙 | 申请(专利权)人: | 中山大学 |
主分类号: | G06F8/20 | 分类号: | G06F8/20 |
代理公司: | 广州粤高专利商标代理有限公司 44102 | 代理人: | 王晓玲 |
地址: | 510275 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 can 设备 开发 系统 及其 方法 | ||
本发明提供一种CAN设备开发系统,包括:代码生成模块:根据本系统约定的特有格式,解析CAN数据协议文件,产生与CAN管理模块配合的代码框架,实现CAN报文的数据解析;CAN管理模块:动态配置CAN接口,动态加载由本框架产生的CAN设备业务功能组件,从多个CAN硬件并行地读取报文,并根据CAN数据协议的约定,为每个业务功能组件分发报文,同时接受各个业务功能组件的报文发送请求,向CAN硬件发送报文;CAN‑SDK:与开发阶段与运行时阶段,链接CAN管理模块和由本框架产生的业务功能组件的调用接口。本系统实现了对CAN数据协议解析的自动化,使得协议解析与业务逻辑功能的实现得以分开,大大降低了开发人员的代码工作量与有关协议解析的出错率。
技术领域
本发明属于CAN设备开发技术领域,更具体地,涉及一种CAN设备开发系统及其方法。
背景技术
CAN(控制器局域网络,Controller Area Network的简称)作为一种实时性好、可靠性高、灵活性强、结构简单的通信总线,广泛地用于工业自动化、船舶、医疗设备、工业设备等嵌入式计算机控制系统中。而随着无人系统研究的逐渐火热,CAN设备的业务功能开发需求也逐渐增多,传统开发手段已经难以应付易变而多样的CAN设备应用程序开发。
发明内容
本发明为克服上述现有技术中的缺陷,提供一种CAN设备开发系统及其方法,。
为解决上述技术问题,本发明采用的技术方案是:一种CAN设备开发系统,包括:
代码生成模块,用于根据本系统约定的特有格式,解析CAN数据协议文件,产生与CAN管理模块配合的C++代码框架,实现CAN报文的数据解析,并为CAN设备开发者提供接口进行二次开发;该代码框架兼容了ros框架下的package格式,以方便开发人员接入基于ros框架的其他系统模块。框架代码实现了CAN报文的数据解析(包括反解析),使用泛化的方法,为CAN设备开发者提供继承接口以处理数据接收事件,同时提供调用接口,往CAN管理模块发送CAN数据。另外,生成的框架代码中也隐含了提供给CAN管理模块调用的初始化入口,以及往CAN管理模块注册回调事件的流程。开发人员在框架上补充业务逻辑功能后,即可编译为由CAN管理模块动态加载的CAN业务功能组件(以操作系统动态库的形式存在)。
CAN管理模块,用于首先根据CAN-SDK的接口,执行各个CAN设备业务功能组件的初始化流程,实现CAN管理模块对CAN数据事件的注册,同时异步启动各个CAN设备业务功能组件的主循环;然后CAN管理模块进入多CAN接口并行监听的处理流程,同时响应各个CAN设备业务功能组件的报文发送请求;当CAN管理模块从某个CAN接口接收到新的报文时,其会根据该CAN报文的ID,调用相应的回调处理函数;
CAN-SDK,用于作为操作系统动态库及相关C++头文件,为CAN管理模块以及产生的CAN设备业务逻辑组件的公共依赖,封装CAN硬件读写、CAN报文数据解析、动态库加载等系统功能;同时提供CAN设备业务逻辑组件的初始化接口、CAN管理模块回调事件注册接口、CAN管理模块数据发送接口,连接CAN管理模块与CAN设备业务逻辑组件,实现软硬件解耦的系统特性。
在本发明中,通过解析本框架特有格式的CAN数据协议文件,使用代码生成的方式,为开发人员产生可二次开发的解析CAN报文数据的代码框架,实现报文解析与业务功能分离;开发人员在框架留下的接口中补充业务逻辑功能的实现后,即可编译为CAN业务功能组件,由CAN管理模块在运行时动态加载;同时CAN管理模块还可配置多个CAN接口,并根据业务功能组件的协议要求自动分发报文,实现软硬件解耦。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911043123.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:交互式特征分箱处理方法、设备及可读存储介质
- 下一篇:人物属性识别方法及装置