[发明专利]一种通用汽车代码转换方法无效
申请号: | 201210039277.6 | 申请日: | 2012-02-21 |
公开(公告)号: | CN102622470A | 公开(公告)日: | 2012-08-01 |
发明(设计)人: | 蒋建春;刘先东;左文英;岑明;邱宝梅;李银国;冯辉宗;舒适 | 申请(专利权)人: | 重庆邮电大学 |
主分类号: | G06F17/50 | 分类号: | G06F17/50;G06F9/44 |
代理公司: | 北京同恒源知识产权代理有限公司 11275 | 代理人: | 赵荣之 |
地址: | 400065 *** | 国省代码: | 重庆;85 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 通用汽车 代码 转换 方法 | ||
技术领域
本发明涉及汽车电子快速原型及代码生成技术领域,特别是一种汽车代码转换方法。
背景技术
面对当前汽车电控单元嵌入式软件的可靠性、一致性、可互换性、高效率等要求。目前用于汽车电控单元嵌入式软件代码生成的工具主要以国外专用工具为主,这些工具往往依赖开发企业的特殊硬件与运行环境,生成代码无法规范统一,限制了行业提出的一致性和可互换性发展要求。设计一款可以兼容常用数建模仿真工具,具有扩展性和开放性的代码生成方法及系统是业界共识。
汽车电控单元软件开发是一个非常复杂的过程,同时,在汽车电子软件行业长期存在代码不规范、可移植性、可互换性、可重用性差以及程序开发效率低等问题。而OSEK OS是广泛应用于汽车电子领域的嵌入式操作系统(RTOS)规范,它定义了一些基本的系统服务,比如任务处理、中断服务程序(ISR)处理、资源管理、事件处理以及报警服务等,可以统一应用程序的调用及管理。AutoSAR组织定义了汽车电控单元硬件驱动程序的接口规范,可以统一不同芯片相同模块的程序接口和调用。目前,OSEK应用程序开发流程是先手工编写或者使用配置工具生成OSEK OS的内核配置文件,手动添加应用程序代码,再使用编译工具将该内核配置文件、用户自定义代码和OSEK OS内核文件编译成最终的可执行文件。这种传统的编程方式不仅繁琐,而且容易出错,对程序开发人员的要求非常高,代码开发效率低,越来越不适用于大型系统的设计与实现。随着建模仿真软件的发展,基于模型的设计方法被广泛推广,大大提高了系统的开发效率。而基于模型的开发方法中一项核心的技术就是自动代码生成技术。
dSPACE结合诸多汽车界用户的要求,专门开发了一种新型代码生成工具Targetlink,它能在几秒钟之内完成从MATLAB/Simulink/Stateflow控制模型到产品代码的生产。生成的代码可靠性高,可读性好,适应多种微处理器和编译器。要利用Targetlink进行代码生成,首先要进行Sinulink模型和Targetlink模型之间的转换,但是Targetlink目前只支持比较简单和常用的Simulink模块,如clock,continue模块,Targetlink都是不支持的。
Mathworks公司的RTW在代码生成技术方面较为成熟。RTW能直接从Simulink模型中生成具有产品级质量的、用于实时系统的C代码可以方便地将模型转换成C语言代码。用户可通过Simulink十分方便地建立系统模型,然后利用RTW工具将模型转换成嵌入式代码,无需手工编程。因此,怎样将基于OSEK OS规范、AutoSAR的底层驱动规范的系统API以及其他代码生成相关工具与Matlab/Simulink相结合,设计一个快速地将汽车电子控制算法生成在电控单元中能直接运行的代码的系统,将极大地方便了汽车电子嵌入式控制系统的开发,提高开发效率。
目前,虽然Matlab提供了几种典型处理器硬件驱动接口模型,但每一种处理器的函数模型都不一样,这为代码的生成和移植带来不便,不能满足不同汽车及ECU的需要。同时在Matlab中没有统一的基于OSEK的系统函数模型,不能快速建立基于OSEK操作系统的任务模型,也就不能生成通用的,与硬件无关的汽车电子嵌入式软件模型及代码。
发明内容
本发明的目的就是提供一种通用汽车代码转换方法,它避免了手动编写代码的繁琐,实现了代码的快速生成,在加快开发周期的同时,降低了开发人员专业要求,也提高了代码的可靠性。
本发明的目的是通过这样的技术方案实现的,代码转换步骤如下:
1)在Simulink工作平台建立工作任务,该工作任务为所需转换的软件代码完成的功能;
2)根据选定的ECU,确定OSEKOS操作系统规范和AutoSAR驱动接口规范下的代码内容和形式,并分别建立工具箱;
3)将所需转换的软件代码信息导入S函数,该S函数由步骤2)中所述工具箱确定;
4)将步骤3)中的S函数进行封装,封装成Simulink工作平台的工作模块;
5)将步骤4)中封装后的工作模块导入Simulink工作平台;
6)在Simulink工作平台下,验证导入的工作模块,不通过则返回步骤1),通过则转入步骤7);
7)在RTW平台下,将通过S函数导入的软件代码进行代码转换;
8)生成代码配置文件和代码内容文件;
9)将步骤8)中所述代码配置文件和代码内容文件加入编译器工程,生成最终所需代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于重庆邮电大学,未经重庆邮电大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210039277.6/2.html,转载请声明来源钻瓜专利网。