| 
2 U( u; @! S" }* D- m' |
x
EDA365欢迎您登录!您需要 登录 才可以下载或查看,没有帐号?注册  
 LZ研究了一下Simulink生成A2L的原理,/ D  {; F* v$ R' ?- K& i+ l* \! r* ^5 K0 R+ ~! l7 o+ @9 {. x3 {  Q, I  s! [. O
 发现修改相关tlc后,可以生成定制版的A2L
 
 A2L包含scalar、Lookup1D(curve)、Lookup2D(mapping) Measurable可测量但不可调 applicable可调9 n  s+ y0 U# X& e' [ 
 Simulink在生成A2L时使用到了下列文件夹的若干文件, D:\MATLAB\R2015b\toolbox\rtw\targets\asap2\asap2下的文件作用: getCompuMethodName.m用于获取Compu_Method的名称,CM_DataType_DocUnits,其中Units将数字和字母以外的符号变成’_’ - l. d/ J8 C" l# j
 asap2userlib.tlc定义了生成A2L的形式,可以对标定/信号之类的加A2L属性 向标定或者信号中加上MemoryAddress_ASAP2 属性即可生成A2L时加上地址1 h4 k" b5 d1 r" S0 O2 l # h' S0 Y6 s. |' u/ l, r" I
 
 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语言,就只改一两行就可以了 - K' [8 W6 b; `
 $ c8 n, M  G: ~( _( p6 l$ d+ m! C# S, r7 H+ _( @1 X! ]3 N
 
 |