EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
, g- C t/ w6 i: u) i. U
LZ研究了一下Simulink生成A2L的原理,
3 s) y. r. U9 x+ R
8 }, E# K5 D" Q$ {" `3 s% D发现修改相关tlc后,可以生成定制版的A2L
% P! }; m! ?$ IA2L包含scalar、Lookup1D(curve)、Lookup2D(mapping) Measurable可测量但不可调 applicable可调 8 ?8 m' I! }; C" u) h
Simulink在生成A2L时使用到了下列文件夹的若干文件, D:\MATLAB\R2015b\toolbox\rtw\targets\asap2\asap2下的文件作用: getCompuMethodName.m用于获取Compu_Method的名称,CM_DataType_DocUnits,其中Units将数字和字母以外的符号变成’_’
- ^& D7 j+ `2 [* tasap2userlib.tlc定义了生成A2L的形式,可以对标定/信号之类的加A2L属性 向标定或者信号中加上MemoryAddress_ASAP2 属性即可生成A2L时加上地址 % Q# ], Q/ s3 |. X; W5 L
0 W3 v( X5 ^, k4 y9 P2 C8 G# @asap2post.m可以对A2L进行地址map,与编译器的Linker map/ELF文件进行关联使用,规则可以在该.m中修改, asap2post_targets.m函数可以把a2l文件中的虚拟地址根据map文件中的地址改掉。 asap2post(ASAP2File, MAPFile) 可以替换a2l文件里的地址,但是系统自带的一般无法直接使用,需要修改里面部分匹配规则,具体参考正则匹配。以适合你的map文件格式。然后直接运行ok了。 你可以根据asap2post.pl文件和asap2post_targets.m文件推出来工作工程,你需要学一点很简单的perl语言,就只改一两行就可以了 7 @1 U) @7 K a, }/ m
% a" v) k4 a: R9 i% S6 U0 _
! I! V# {5 p: V) l; q* Z |