[发明专利]一种CAN设备开发系统及其方法有效
申请号: | 201911043123.2 | 申请日: | 2019-10-30 |
公开(公告)号: | CN110806855B | 公开(公告)日: | 2021-06-08 |
发明(设计)人: | 杨腾;陈龙 | 申请(专利权)人: | 中山大学 |
主分类号: | G06F8/20 | 分类号: | G06F8/20 |
代理公司: | 广州粤高专利商标代理有限公司 44102 | 代理人: | 王晓玲 |
地址: | 510275 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 can 设备 开发 系统 及其 方法 | ||
1.一种CAN设备开发系统,其特征在于,包括:
代码生成模块,用于根据本系统中使用树型层级标记语言YAML逐级定义的CAN硬件设备、CAN报文帧、CAN报文帧中的所有字段的所有属性,所生成的用于本系统框架代码的数据协议文件,从而解析CAN数据协议文件,产生与CAN管理模块配合的C++头代码框架,实现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设备业务逻辑组件,实现软硬件解耦的系统特性。
2.一种开发CAN设备的方法,其特征在于,使用权利要求1所述的CAN设备开发系统,具体包括以下步骤:
S1. 根据实际CAN设备情况,开发人员编写本系统格式的CAN数据协议文件;CAN数据协议文件是使用树型层级标记语言YAML逐级定义了CAN硬件设备、CAN报文帧、CAN报文帧中的所有字段的所有属性,所生成的用于本系统框架代码的数据协议文件;
S2.使用系统中的代码生成模块,解析步骤S1的CAN数据协议文件,并生成依赖CAN-SDK的C++代码框架;
S3. 通过代码生成模块产生依赖于CAN-SDK的框架代码,由开发人员补充具体的业务功能实现后,编译为CAN业务功能组件,交由CAN管理模块动态加载;
S4. CAN管理模块通过CAN-SDK初始化各个业务功能组件,并注册协议约定的CAN报文接收事件,在接收到CAN报文时,分开给对应业务功能组件进行处理;
S5. CAN管理模块同时响应业务功能组件的CAN报文发送请求,往动态配置的CAN接口发送相关数据。
3.根据权利要求2所述的开发CAN设备的方法,其特征在于,所述的S2步骤中生成的代码框架结构,最外层是一个ros package文件夹,其中包含编译文件CMakeLists.txt,指导该CAN业务功能组件的编译过程,和描述文件package.xml,指导该CAN业务功能组件的依赖关系,以及include/drivers文件夹和src/drivers文件夹,其分别存放了生成的头文件与源文件。
4.根据权利要求3所述的开发CAN设备的方法,其特征在于,在所述的S3步骤中,使用系统生成的CMakeLists.txt编译生成为框架所用的CAN业务功能组件。
5.根据权利要求3所述的开发CAN设备的方法,其特征在于,所述的 S5步骤具体包括:CAN管理模块根据配置打开对应的CAN接口,同时以操作系统动态库的形式加载CAN业务功能组件,并通过CAN-SDK的初始化入口,执行CAN业务功能组件的初始化流程,其中包括框架的初始化流程以及开发人员的业务功能初始化流程,随后异步启动这些组件的主循环流程,CAN管理模块进入监听主循环。
6.根据权利要求5所述的开发CAN设备的方法,其特征在于,CAN管理模块在监听主循环中,每从CAN接口接收一帧CAN报文,触发一次报文分发流程。
7.根据权利要求6所述的开发CAN设备的方法,其特征在于,CAN管理模块执行CAN业务功能组件的初始化流程时,期间组件的框架部分往CAN管理模块注册了CAN报文接收事件,注册内容包括ID过滤器、接口过滤器、回调处理函数,其中两个过滤器均在步骤S1中由开发人员在数据协议中指定。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911043123.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:交互式特征分箱处理方法、设备及可读存储介质
- 下一篇:人物属性识别方法及装置