[发明专利]一种基于DBC的协议层代码生成方法及生成工具在审
| 申请号: | 202310050107.6 | 申请日: | 2023-02-01 |
| 公开(公告)号: | CN116301881A | 公开(公告)日: | 2023-06-23 |
| 发明(设计)人: | 李兆平 | 申请(专利权)人: | 浙江万里扬新能源驱动有限公司杭州分公司 |
| 主分类号: | G06F8/41 | 分类号: | G06F8/41;G06F8/35 |
| 代理公司: | 北京国翰知识产权代理事务所(普通合伙) 11696 | 代理人: | 李笑磊 |
| 地址: | 310000 浙江省杭州*** | 国省代码: | 浙江;33 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 基于 dbc 协议 代码 生成 方法 工具 | ||
本发明涉及一种基于DBC的协议层代码生成方法及生成工具,所述方法包括:获取DBC文件并遍历DBC文件以获取DBC文件信息;基于所述DBC文件及DBC文件信息,依据预先输入的目标节点选择项和大小端选择项,生成协议层代码文件;其中所述DBC文件信息包括:DBC文件里定义的帧的帧个数、帧的帧信息、帧的所有信号信息、基于信号名的信号描述的信息。方法以DBC文件作为输入文件,支持多路CAN总线的代码实现,适用于标准CAN的标准帧,可高效率生成协议层代码,开发过程减少甚至避免了手动编写代码,减少了代码错误率,降低了人力和时间成本,缩短了开发周期。
技术领域
本发明主要关于计算机软件开发技术领域,特别是关于一种基于DBC的协议层代码生成方法及生成工具。
背景技术
CAN是Control Area Network的缩写,即控制局域网,是一种用于实时应用的串行通讯协议总线,它可以使用双绞线来传输信号,是世界上应用最广泛的现场总线之一,CAN总线协议已经成为汽车计算机控制系统和嵌入式工业控制局域网的标准总线,CAN协议用于汽车中各种不同元件之间的通信,以此取代昂贵而笨重的配电线束。由于CAN总线协议本身的特点,其应用范围目前已不再局限于汽车行业,而是向自动控制、航空航天、航海、过程工业、纺织机械、农用机械、机器人、数控机床、医疗器械及传感器等领域发展。CAN已经形成国际标准,并已被公认为几种最有前途的现场总线之一。
CAN协议通信是汽车各个电控单元之间最基本也是最重要的通讯方式,而各个通信节点及其信号的基本物理信息都包含在多个CAN数据库文件即DBC中,DBC即DatabaseCan的缩写,其代表的是CAN的数据库文件;在这个文件中把CAN通讯的信息定义的非常完整清楚,而CAN网络的通讯就是依据这个文件的描述进行的,所以DBC文件的作用非常强大,正是因为有了它才可以使得整个CAN网路的节点控制器无差错的协同同步开发。CAN信号的适配是基础软件开发中的一个重要工作。然而,对于不同的项目或者对于相同的项目的不同开发人员,CAN通信协议可能存在较大差异,CAN通信代码设计也各有不同,因此随着设计的长时间持续和深入,代码版本会越来越多并且缺少统一的规范和标准,不利于项目开发、项目管控及后续设计的延展。
前述背景技术知识的记载旨在帮助本领域普通技术人员理解与本发明较为接近的现有技术,同时便于对本申请发明构思及技术方案的理解,应当明确的是,在没有明确的证据表明上述内容在本专利申请的申请日前已公开的情况下,上述背景技术不应当用于评价本申请技术方案的新创性。
发明内容
为解决上述背景技术中提及的至少一种技术问题,本发明的目的旨在提供一种基于DBC的协议层代码生成方法及生成工具,方法以DBC文件作为输入文件,支持多路CAN总线的代码实现,适用于标准CAN的标准帧,可高效率生成协议层代码,开发过程减少甚至避免了手动编写代码,减少了代码错误率,降低了人力和时间成本,缩短了开发周期。
一个方面,提供一种基于DBC的协议层代码生成方法,包括:
获取DBC文件并遍历DBC文件以获取DBC文件信息;
基于所述DBC文件及DBC文件信息,依据预先输入的目标节点选择项和大小端选择项,生成协议层代码文件。
部分具体实施方案中,所述DBC文件信息包括:DBC文件里定义的帧的帧个数、帧的帧信息、帧的所有信号信息、基于信号名的信号描述的信息。
部分具体实施方案中,所述协议层代码文件包括后缀名为c的代码文件和后缀名为h的代码文件。
部分具体实施方案中,所述后缀名为c的代码文件包括asi_can.c文件、can_app.c文件的至少一种。
部分具体实施方案中,所述后缀名为h的代码文件包括asi_can.h文件、can_app.h文件的至少一种。
部分具体实施方案中,所述基于DBC的协议层代码生成方法具体包括:
(1)获取DBC文件;
(2)遍历所述DBC文件,获取所述DBC文件里定义的帧的帧个数,并根据帧个数定义msg数组,用以保存信息;
(3)获取所述帧的帧信息,并将所述帧信息存入msg数组中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浙江万里扬新能源驱动有限公司杭州分公司,未经浙江万里扬新能源驱动有限公司杭州分公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310050107.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:量子保密通信方法及系统
- 下一篇:一种抗冲刷磁性产品涂料及其制备方法





