英飞凌代码生成_利用MATLAB-RTW的嵌入式代码自动生成与整合
2018
收稿日期
:2018
-
01
-
02
收修改稿日期
:2018
-
02
-
01
基金项目
:
国家自然科学基金项目
(51405270)
资助
.
作者简介
:
陈
攀
,
男
,1991
年
生
,
硕士研究生
,
研究方向汽车电子
;
张承瑞
,
男
,1957
年生
,
博士
,
教授
,
研究方向数字智能制造理论和系统
、
汽车电控系统等
;
罗
映
,
男
,1980
年生
,
硕士
,
讲师
,
研究方向汽车电子
.
利用
MATLAB
/
RTW
的嵌入式代码自动生成与整合
陈
攀
1
,
张承瑞
1
,
罗
映
2
1
(
山东大学
机械工程国家级实验教学示范中心
,
济南
250061)
2
(
山东建筑大学
机电工程学院
,
济南
250101)
:
sduchenpan
@
163
.
com
摘
要
:
自动代码生成技术是基于模型的开发的重要技术
,
也是
V
流程设计的重要组成部分
,
利用
MATLAB
生成代码的方式
最为普遍
.
为满足开发的不同需求
,
往往需要设计代码生成的过程
.
而对
MATLAB
工具的代码生成过程控制不够常常会导致
生成代码不如预期
,
生成代码需要手动整合等问题
.
借助
MATLAB
/
RTW
工具
,
然后利用
MATLAB
的
ActiveX
,
通过
COM
接口
执行编译器命令
,
可摆脱手动整合的麻烦
,
同时实现底层驱动代码与应用代码的整合
,
自动代码生成和一键下载
.
关
键
词
:
V
流程
;
COM
;
MATLAB
/
RTW
;
驱动代码
;
自动代码生成
中图分类号
:
TP
391
文献标识码
:
A
文
章
编
号
:
1000
-
1220
(
2018
)
04
-
0738
-
04
Automatic
Generation
and
Integration
of
Embedded
Code
with
MATLAB
/
RTW
CHEN
Pan
1
,
ZHANG
Cheng-rui
1
,
LUO
Ying
2
1
(
National
Demonstration
Center
for
Experimental
Mechanical
Engineering
Education
,
Shandong
University
,
Jinan
250061
,
China
)
2
(
School
of
Mechanical
and
Electrical
Engineering
,
Shandong
Jianzhu
University
,
Jinan
250101
,
China
)
Abstract
:
Automatic
code
generation
technology
is
the
key
technology
based
on
model
development
and
also
an
important
part
of
V-
flow
design.
The
way
to
generate
code
by
MATLAB
is
the
most
common.
To
meet
the
special
needs
of
development
,
it
is
often
neces-
sary
to
complete
the
design
of
the
build
process.
However
,
insufficient
control
of
code
generation
process
of
MATLAB
often
leads
to
problems
such
as
poor
code
generation
and
manual
integration
of
generated
code.
With
MATLAB
/
RTW
tools
,
the
MATLAB
Ac-
tiveX
,
and
compiler
commands
through
the
COM
interface
,
the
trouble
of
manual
integration
can
be
gotten
rid
of
,
while
achieving
con-
trol
of
the
underlying
driver
code
,
application
code
integration
,
automatic
code
generation
and
one-click
download.
Key
words
:
V-flow
;
COM
;
MATLAB
/
RTW
;
driver
code
;
automatic
code
generation
1
引
言
随着软
件
工
具
的
发
展
,
自
动
代
码
生
成
技
术
在
工
业
控
制
[1]
、
汽车电子
[2]
、
航天和导弹制导
[3]
等领域得到广泛的应
用
.
自动代码生成相比于手工编程
,
能够减少偶然的
bug
,
减
少重复劳动的时间
,
提高嵌入式系统的可靠性
[4]
.
在
MAT-
LAB
/
Simulink
下
,8051、
飞思
卡
尔
DSP
563
XX
、
英
飞
凌
C
166
和
ARM
系列等芯片都有对应的
toolbox
支持
,
在创建
MAT-
LAB
/
Simulink
模型后
,
通过
RTW
工具
,
可直接生成控制代
码
.
而外围器件选型或布置等设计变化可能导致用户不能直
接通过工具生成代码
.
为了满足不同项目的嵌入式控制器的
设计需求
,
需要
根
据
MATLAB
/
Simulink
和
RTW
的
工
作
原
理
,
结合实际需求设计代码生成工具
,
进而使代码的生成符合
预期
,
同时提高代码质量
.
本文从
RTW
的工作原理出发
,
以
飞思卡尔
S
12
X
系列单片机为例
,
利用
COM
技术连接
MAT-
LAB
/
Simulink
与
CodeWarrior
IDE
,
整合驱动层与应用层
,
最
后实现自动代码生成
,
并且代码无需手动修改
,
能够直接下载
到目标板上
.
2
MATLAB
/
RTW
与代码生成
RTW
(
Real-Time
Workshop
)
是基于
Simulink
的代码自动
生成环境
.
Simulink
软件生成一个包含框图执行语义的高级
表示文件
—
—
—
model.
rtw
文件
.
model.
rtw
文件是一个
ASCII
格式数据库
,
其中的内容描述了
Simulink
模型中的各个块的
包括属性名称和属性值等
.
目标语言编译器
(
TLC
)
读取
mod-
el.
rtw
文件并将其转换为内部表示
,
并根据其他模块
TLC
文
件等修改最初的
model.
rtw
文件
.
在
RTW
下能直接从
Simu-
link
的模型中产生优化的
、
可移植的和个性的代码
,
并根据目
标配置自动生成多种环境下的程序
[5]
.
RTW
环境下的代码生
成过程有如下四个部分
:
1)
RTW
读取模型文件
model.
mdl
,
生成模型的描述文件
model.
rtw
,
该文件以
ASCII
码存储
;
2)
TLC
读取
model.
rtw
,
并根据的系统
TLC
与模块
TLC
文件
,
生成指定目标的代码
,
如
ANSI
C
/
C
+
+
代码
;
3)
RTW
代码生成器根据给定的模型
,
将
makefile
模板
生成具体的
makefile
文件
(
model.
mk
),
英飞凌代码生成_利用MATLAB-RTW的嵌入式代码自动生成与整合相关推荐
- 国产自主可控的形式化验证代码自动生成工具ModelCoder可替代Matlab/Sumlink
在安全关键领域,基于模型的软件工程或者软件开发已逐渐进入了我国的装备研制过程中.使用SimuLink或者SCADE等嵌入式软件建模工具对算法或者控制逻辑进行可视化建模,然后生成高可靠的二进制代码逐渐成 ...
- html自动生成工具_关于STM32代码自动生成的工具的进度....
前情提要:STM32代码自动生成工具_本想...但是...可是...所以 首先说一下那几天大家的反应,有的持观望态度,毕竟STM32CUBE很香:有的很激动,期待我快点出东西:还有的很淡定,知道我在挖 ...
- lin通信ldf文件解析_基于LIN协议的代码自动生成系统及方法_2014108531085_说明书_专利查询_专利网_钻瓜专利网...
技术领域 本发明属于汽车电子LIN网络通讯领域,公开了一种利用LDF文件自动生成LIN通讯软件代码的方法. 背景技术 目前汽车电子产品的软件开发逐渐向模块化.标准化.集成化.自动化发展.LIN通讯模块 ...
- matlab之用m脚本自动生成exe文件
matlab之用m脚本自动生成exe文件 文章目录 matlab之用m脚本自动生成exe文件 0.前言 1.生成exe文件分两种情况 2.生成文件在自己电脑上运行 3.生成文件在其他电脑上运行 0.前 ...
- C++包扩展_利用 MATLAB Coder 将M代码生成C/C++代码
利用MATLAB Coder将MATLAB代码生成C/C++代码mp.weixin.qq.com MATLAB Coder 可以将MATLAB代码生成工程中常用的嵌入式或其他硬件平台的C或者C++代 ...
- matlab如何截取图像的中间部分_利用matlab提取并分割RGB图像中的某一个已知像素值的图像...
已知一副RGB图像中的的像素值,利用matlab将其分割出来并以二进制图像形式显示: %extract.m clear all; I=imread('new_original.png'); figur ...
- matlab相关性分析频谱_利用Matlab绘制正弦信号的频谱图并做相关分析[共6页]
<利用Matlab绘制正弦信号的频谱图并做相关分析[共6页]>由会员分享,可在线阅读,更多相关<利用Matlab绘制正弦信号的频谱图并做相关分析[共6页](6页珍藏版)>请在人 ...
- matlab相关性分析频谱_利用matlab怎样进行频谱分析、、
利用 matlab 怎样进行频谱分析 图像的频率是表征图像中灰度变化剧烈程度的指标, 是灰度在平面空间上的 梯度. 如: 大面积的沙漠在图像中是一片灰度变化缓慢的区域, 对应的频率值很 低:而对于地表 ...
- matlab的qammod函数_利用matlab实现16QAM调制
利用matlab实现16QAM调制 2020-12-22 一.随机信号的调制第一个示例描述以下问题: 下表描述了解决此问题的关键任务和相应的通信工具箱函数,其中选择基带16QAM作为调制制式以及加性高 ...
最新文章
- playframework学习笔记1 -- 开发环境和第一个工程
- Java Native Interface 六JNI中的异常
- RabbitMQ的Work模式
- JVM-并发-Java 内存模型
- 12种NumpyPandas高效技巧
- 未能连接到许可证服务器 发生错误 -96,ug启动许可证错误怎么办 UG软件启动许可证错误96解决方法...
- sublime text 3 3103 注册码
- c语言求今年第m月的天数,《C语言及程序设计》实践参考——当年第几天(数组方案)...
- 高中计算机算计Access怎么做,Access非常简单实用的计算器
- Qt学习之路(51): QByteArray和QVariant
- matlab2014调用vs2015进行混合编译生成mex文件
- 《嵌入式 – GD32开发实战指南》第4章 GD32启动流程详解(Keil版)
- 常用的几个框架官网【前端 / 自用】
- 【STM32】开发板学习1 NUCLEO-L476RG:GPIO例程 点亮LED2灯
- js打开新窗口并且不被拦截
- 10年过去,人们买不起旗舰机了
- ansys apdl变量基本操作
- 【MySQL】查看支持的字符集show character set;
- Linux下PHP使用selenium、chrome、chromedriver模拟无界面浏览器
- 计算机的组成:硬件和软件