1
完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
之前一直使用matlab2018a 通过matlab自带的函数 rtw.asap2SetAddress('File.a2l','File.elf')去提取matlab生成的A2L的地址 ,Simulink生成的A2L中,每个变量后会有一个占位符,帮助定位提取的地址要修改的位置,地址提取完成后 占位符会消失
在开发过程中发现 2019a以及2020a的版本在提取地址时会发生崩溃闪退 但是有个值得注意的点是: 若Simulink模型里用到了某个全局变量,生成C代码时,会将其放在内存.data段 若这个全局变量,在模型里定义了未使用,它仍然会体现在A2L里 但是IDE在编译SImulink生成的代码时,编译器会忽略这个全局变量,因为未使用 因此在MAP以及ELF中不会有该变量的地址 在2018a中,使用rtw.asap2SetAddress提取地址时会产生报错,因为找不到对应的变量的地址 此时,根据报错信息,在A2L中将未用到的全局变量的测量量描述和标定量描述删除就好了 然而在2020a中,不会提示报错,而是将空白A2L中的关于该变量的占位符删除 但此时,该变量的地址仍然是空白状态下的0x0000,若使用该A2L进行标定 有可能产生报错,因为该地址很可能不存在,这点需要自己根据实际情况,通过MAP文件找到未使用的全局变量,将其在A2L中的描述删除。 |
|
|
|
只有小组成员才能发言,加入小组>>
3311 浏览 9 评论
2994 浏览 16 评论
3493 浏览 1 评论
9058 浏览 16 评论
4087 浏览 18 评论
1178浏览 3评论
605浏览 2评论
const uint16_t Tab[10]={0}; const uint16_t *p; p = Tab;//报错是怎么回事?
599浏览 2评论
用NUC131单片机UART3作为打印口,但printf没有输出东西是什么原因?
2335浏览 2评论
NUC980DK61YC启动随机性出现Err-DDR是为什么?
1896浏览 2评论
小黑屋| 手机版| Archiver| 德赢Vwin官网 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 00:28 , Processed in 1.039846 second(s), Total 48, Slave 39 queries .
Powered by 德赢Vwin官网 网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
德赢Vwin官网 观察
版权所有 © 湖南华秋数字科技有限公司
德赢Vwin官网 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号