EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
! g* ^; B1 r" ]$ J: t
LZ研究了一下Simulink生成A2L的原理,
9 K+ @8 H, `$ V+ }$ q4 ?+ H, x P9 F8 V9 H/ L- q5 t) S+ i
发现修改相关tlc后,可以生成定制版的A2L
# j. m7 u4 F8 ]* G# A1 e6 cA2L包含scalar、Lookup1D(curve)、Lookup2D(mapping) Measurable可测量但不可调 applicable可调 9 o, |* F) b% C, I
Simulink在生成A2L时使用到了下列文件夹的若干文件, D:\MATLAB\R2015b\toolbox\rtw\targets\asap2\asap2下的文件作用: getCompuMethodName.m用于获取Compu_Method的名称,CM_DataType_DocUnits,其中Units将数字和字母以外的符号变成’_’ , l: r& L+ f! Q" U5 u
asap2userlib.tlc定义了生成A2L的形式,可以对标定/信号之类的加A2L属性 向标定或者信号中加上MemoryAddress_ASAP2 属性即可生成A2L时加上地址 1 F2 c4 G% L/ ?6 ?& ~1 c+ J
# l1 ]! x* s, u# ]: F
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语言,就只改一两行就可以了 9 w% ?1 {7 T7 G5 B6 s
9 c5 g; S' C2 A" F6 n, Y
. K! |6 ?' O) C( L |