本文来自我的微信公众号【古德曼汽车工业】,欢迎大家关注
前言
一个完整的控制器(xCU)嵌入式程序在逻辑架构均可分为两层:一个是应用逻辑层(Application Software),用来表达整个控制逻辑的实现算法;还有一个是基础软件层(Basic Software)也就是常说的底层驱动,负责芯片功能进行初始化,例如:定时器、锁相环、CAN、SPI等。逻辑层与基础软件层之间需要有一个接口层(Interface Layer)实现数据的交互。
Simulink代码生成技术的出现很好的解决的控制器程序开发的分工问题,控制策略由各专业工程师开发,而底层驱动由嵌入式工程师完成。控制策略工程师可利用Simulink强大的建模与测试功能开发控制策略模型,最后将生成嵌入式代码与底层驱动一起编译成二进制文件。另外,如果硬件变更或者硬件升级,只需要修改驱动成代码不需要更改测试好的逻辑层策略。
代码生成工具
早期Simulink代码生成主要依托dSpace公司的TargetLink实现。安装了TargetLink后,在Simulink中就会出现TargetLink自带的元件库,如果你原先仿真时用的为Simulink的标准原件,就需要将模型转换成TargetLink模型。近几年由于Simulink EmbeddedCoder在技术