代码生成方法、装置、电子设备和计算机可读存储介质制造方法及图纸

技术编号:27137143 阅读:15 留言:0更新日期:2021-01-25 20:57
本发明专利技术提供了一种代码生成方法、装置、电子设备和计算机可读存储介质,涉及汽车电子技术领域,该方法包括获取协议录入信息;协议录入信息包括车载设备处理单元与整车系统的通讯协议信息;分别对协议录入信息和初始CAN矩阵进行解析;基于解析后的协议录入信息与解析后的初始CAN矩阵确定协议对应数据;通过在EXCEL中预先设定的代码生成模板和协议对应数据生成目标代码。本发明专利技术避免人工编写这种会大量变更的协议代码的工作导致在人为错误,有效提高了软件开发的质量和效率。提高了软件开发的质量和效率。提高了软件开发的质量和效率。

【技术实现步骤摘要】
代码生成方法、装置、电子设备和计算机可读存储介质


[0001]本专利技术涉及汽车电子
,尤其是涉及一种代码生成方法、装置、电子设备和计算机可读存储介质。

技术介绍

[0002]随着汽车电子领域的快速发展,车载设备越来越多,功能也越来越丰富,且由于很多设备功能均集成到域控制器上,因此导致车上的电子控制单元(Electronic Control Unit,ECU)需要处理的交互信息也越来越多,极大的增加了车载电子产品研发人员的工作量。目前诸如中控车机、液晶仪表、智能座舱等车载电子设备都需要通过电机控制单元(Motor Control Unit,MCU)获取车身CAN/CANFD数据上报给称为芯片级系统(System on Chip,SOC)处理,上层APP操作的指令通过SOC下发给MCU,并由MCU转发到车身CAN总线上。
[0003]对于大量的数据,目前通常采用研发人员手动添加对应解析处理软件代码的方式,然而不同的车载设备诸如中控车机、液晶仪表、智能座舱等的不同数据的处理方式不同,需要花费大量的开发时间,且人为逐个信号编写代码不易控制,有很大出错的风险,也不利于后续的软件维护。

技术实现思路

[0004]本专利技术的目的在于提供一种代码生成方法、装置、电子设备和计算机可读存储介质,避免人工编写这种会大量变更的协议代码的工作导致在人为错误,有效提高了软件开发的质量和效率。
[0005]第一方面,本专利技术提供一种代码生成方法,方法包括:获取协议录入信息;协议录入信息包括车载设备处理单元与整车系统的通讯协议信息;分别对协议录入信息和初始CAN矩阵进行解析;基于解析后的协议录入信息与解析后的初始CAN矩阵确定协议对应数据;通过在EXCEL中预先设定的代码生成模板和协议对应数据生成目标代码。
[0006]在可选的实施方式中,通讯协议信息包括车载设备处理单元与整车系统的通讯协议数据和CAN ID;在分别对通讯协议数据和初始的CAN矩阵进行解析之前,方法还包括:对协议录入信息进行检测,以便符合预先设定的录入条件;其中,预先设定的录入条件至少包括CAN ID的信号来源和预设的通讯协议数据单元的编码格式。
[0007]在可选的实施方式中,通讯协议信息还包括车身CAN信号;其中,CAN ID用于标识对应的车身CAN信号;对协议录入信息进行检测的步骤,包括:对CAN ID和车身CAN信号进行矩阵匹配;基于预先选择的程序和录入条件对匹配后的CAN ID和车身CAN信号进行检测;预先选择的程序包括EXCEL中预先设定的VBA程序或脚本程序。
[0008]在可选的实施方式中,分别对协议录入信息和初始CAN矩阵进行解析的步骤,包括:对初始CAN矩阵进行第一解析操作,确定初始CAN矩阵的矩阵信息;矩阵信息至少包括信号名称、信号有效状态和信号值;对通讯协议数据进行第二解析,确定与通讯协议数据对应的目标CAN ID和目标车身CAN信号。
[0009]在可选的实施方式中,基于解析后的协议录入信息与解析后的初始CAN矩阵确定协议对应数据的步骤,包括:对车身CAN信号的帧数据进行遍历,确定帧数据的数据信息;数据信息包括解码函数和结构体数据数组;将数据信息与矩阵信息进行对应,确定协议对应数据。
[0010]在可选的实施方式中,预先设定的代码生成模板为将协议录入信息和初始CAN矩阵进行转换后,替换历史EXCEL模板的关键字后的模板文件。
[0011]在可选的实施方式中,通过在EXCEL中预先设定的代码生成模板和协议对应数据生成目标代码的步骤,包括:将协议对应数据输入至预先设定的代码生成模板,基于模板文件生成目标代码。
[0012]第二方面,本专利技术提供一种代码生成装置,装置包括:获取模块,用于获取协议录入信息;协议录入信息包括车载设备处理单元与整车系统的通讯协议信息;解析模块,用于分别对协议录入信息和初始CAN矩阵进行解析;确定模块,用于基于解析后的协议录入信息与解析后的初始CAN矩阵确定协议对应数据;代码生成模块,用于通过在EXCEL中预先设定的代码生成模板和协议对应数据生成目标代码。
[0013]第三方面,本专利技术提供一种电子设备,本专利技术实施例提供一种电子设备,包括处理器和存储器;存储器上存储有计算机程序,计算机程序在被处理器运行时执行如前述实施方式任一项的方法。
[0014]第四方面,本专利技术实施例提供一种计算机可读存储介质,用于储存如前述实施方式任一项方法所用的计算机软件指令。
[0015]本专利技术提供的代码生成方法、装置、电子设备和计算机可读存储介质,该方法首先获取协议录入信息,该协议录入信息包括车载设备处理单元与整车系统的通讯协议信息,然后分别对协议录入信息和初始CAN矩阵进行解析,并在解析后基于解析的协议录入信息与解析的初始CAN矩阵确定协议对应数据,最后通过在EXCEL中预先设定的代码生成模板和协议对应数据生成目标代码。上述方式的协议录入信息为预先录入的车载设备处理单元与整车系统的通讯协议信息,通过对协议录入信息进行解析,并和解析后的初始CAN矩阵进行对应,确定协议对应数据,从而可以基于协议录入信息和初始CAN矩阵以及预先设定的代码生成模板和协议对应数据生成目标代码,避免人工编写这种会大量变更的协议代码的工作导致在人为错误,有效提高了软件开发的质量和效率。
附图说明
[0016]为了更清楚地说明本专利技术具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0017]图1为本专利技术实施例提供的一种代码生成方法的流程示意图;
[0018]图2为本专利技术实施例提供的一种基于EXCEL自动生成协议解析代码的方法的流程示意图;
[0019]图3为本专利技术实施例提供的一种基于EXCEL自动生成协议解析代码装置的结构示意图;
[0020]图4为本专利技术实施例提供的一种代码生成装置的结构示意图;
[0021]图5为本专利技术实施例提供的一种电子设备的结构示意图。
具体实施方式
[0022]为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本专利技术实施例的组件可以以各种不同的配置来布置和设计。
[0023]因此,以下对在附图中提供的本专利技术的实施例的详细描述并非旨在限制要求保护的本专利技术的范围,而是仅仅表示本专利技术的选定实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0024]应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种代码生成方法,其特征在于,所述方法包括:获取协议录入信息;所述协议录入信息包括车载设备处理单元与整车系统的通讯协议信息;分别对所述协议录入信息和初始CAN矩阵进行解析;基于解析后的协议录入信息与解析后的初始CAN矩阵确定协议对应数据;通过在EXCEL中预先设定的代码生成模板和所述协议对应数据生成目标代码。2.根据权利要求1所述的代码生成方法,其特征在于,所述通讯协议信息包括车载设备处理单元与整车系统的通讯协议数据和CANID;在分别对所述通讯协议数据和初始的CAN矩阵进行解析之前,所述方法还包括:对所述协议录入信息进行检测,以便符合预先设定的录入条件;其中,所述预先设定的录入条件至少包括所述CAN ID的信号来源和预设的通讯协议数据单元的编码格式。3.根据权利要求2所述的代码生成方法,其特征在于,所述通讯协议信息还包括车身CAN信号;其中,所述CAN ID用于标识对应的车身CAN信号;所述对所述协议录入信息进行检测的步骤,包括:对所述CAN ID和所述车身CAN信号进行矩阵匹配;基于预先选择的程序和所述录入条件对匹配后的所述CAN ID和所述车身CAN信号进行检测;所述预先选择的程序包括EXCEL中预先设定的VBA程序或脚本程序。4.根据权利要求2所述的代码生成方法,其特征在于,所述分别对所述协议录入信息和初始CAN矩阵进行解析的步骤,包括:对所述初始CAN矩阵进行第一解析操作,确定所述初始CAN矩阵的矩阵信息;所述矩阵信息至少包括信号名称、信号有效状态和信号值;对所述通讯协议数据进行第二解析,确定与所述通讯协议数据对应的目标CAN ID和目标车...

【专利技术属性】
技术研发人员:黄智铭李飞徐林浩何天翼
申请(专利权)人:江苏北斗星通汽车电子有限公司北京远特科技股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1