针对传统汽车电子控制单元设计开发过程中存在的手工编程效率低、可靠性差和开发周期长等问题,本文提出一种基于Simulink自动代码生成技术的设计方法。在Matlab/Simulink环境下,对NXP公司16位单片机MC9S12XEP100编写包含系统目标文件在...针对传统汽车电子控制单元设计开发过程中存在的手工编程效率低、可靠性差和开发周期长等问题,本文提出一种基于Simulink自动代码生成技术的设计方法。在Matlab/Simulink环境下,对NXP公司16位单片机MC9S12XEP100编写包含系统目标文件在内的控制文件,实现嵌入式C代码生成。同时,编写C MEX S函数及模块目标语言编译器(target language compiler,TLC)文件,并进行封装,实现该款芯片各底层驱动模块代码内嵌,添加至Simulink模块库,在Simulink中对底层模块进行模型搭建,并生成嵌入式代码进行硬件在环测试。测试结果表明,本文所设计的底层自动代码生成技术,实现了底层代码的自动配置,同时与应用层代码结合,实现CAN车速报文接收和定时发送,所解析的车速信号与Simulink模拟车速信号对比一致,验证了本文所设计的底层驱动模块的高效性和可行性。该研究能够有效解决项目研发过程中底层代码配置复杂的问题。展开更多
文摘综合化航空电子系统(Integrated Modular Avionics, IMA)是一类典型的安全关键系统,具有分布式、异构、计算资源和物理资源强耦合等特征。随着IMA系统趋于复杂化和智能化,系统的功能越来越多地采用软件来实现,如何对这类复杂软件进行建模并自动生成代码成为一个重要挑战。文中提出了一种基于AADL(Architecture Analysis and Design Language)的综合化航空电子系统代码生成方法。首先,提出HMC4ARINC653(Heterogeneous Model Container for ARINC653)属性集扩展,使其具备描述IMA软件架构、异构功能行为和非功能属性的能力;其次,提出IMA模型到C代码及ARINC653系统配置文件的映射规则,并遵守MISRA C安全编码规范,生成的代码能够在ARINC653操作系统上部署并仿真执行;最后,设计并实现了相应的原型工具,以ARINC653操作系统和工业界实际案例,验证了所提方法和工具的有效性。
文摘针对传统汽车电子控制单元设计开发过程中存在的手工编程效率低、可靠性差和开发周期长等问题,本文提出一种基于Simulink自动代码生成技术的设计方法。在Matlab/Simulink环境下,对NXP公司16位单片机MC9S12XEP100编写包含系统目标文件在内的控制文件,实现嵌入式C代码生成。同时,编写C MEX S函数及模块目标语言编译器(target language compiler,TLC)文件,并进行封装,实现该款芯片各底层驱动模块代码内嵌,添加至Simulink模块库,在Simulink中对底层模块进行模型搭建,并生成嵌入式代码进行硬件在环测试。测试结果表明,本文所设计的底层自动代码生成技术,实现了底层代码的自动配置,同时与应用层代码结合,实现CAN车速报文接收和定时发送,所解析的车速信号与Simulink模拟车速信号对比一致,验证了本文所设计的底层驱动模块的高效性和可行性。该研究能够有效解决项目研发过程中底层代码配置复杂的问题。