硬汉嵌入式论坛

 找回密码
 立即注册
查看: 482|回复: 5
收起左侧

[IAR] 几句简单赋值代码,不同IAR版本编译结果不一样,求助一下

[复制链接]

8

主题

128

回帖

152

积分

初级会员

积分
152
发表于 2023-11-25 22:38:52 | 显示全部楼层 |阅读模式
很简单的几句赋值语句,使用IAR 8.50.6和9.20.1编译结果不同. 两个版本都是禁止编译优化的.

9.20.1的编译结果最离谱, 我输出了每个文件对应的汇编文件, 里面的内容感觉是对的, 但是下载到单片机之后的内容却是不一样的. 实际运行的内容直接就死机了.
技术有限,就是简单的赋值, 完全看不懂9.20.1的编译结果到底要干什么. 可能是哪里的问题呢?
92.bmp
921.bmp
85.bmp


回复

使用道具 举报

210

主题

1042

回帖

1682

积分

至尊会员

More we do, more we can do.

积分
1682
发表于 2023-11-26 00:51:19 | 显示全部楼层
看汇编,两个编译器输出基本一样,请问你指的哪里有问题
回复

使用道具 举报

8

主题

128

回帖

152

积分

初级会员

积分
152
 楼主| 发表于 2023-11-26 09:58:00 | 显示全部楼层
emwin 发表于 2023-11-26 00:51
看汇编,两个编译器输出基本一样,请问你指的哪里有问题

阴影部分的汇编代码, 上面一行是对应的C语言代码,下面是汇编的结果.
回复

使用道具 举报

8

主题

128

回帖

152

积分

初级会员

积分
152
 楼主| 发表于 2023-11-26 15:14:20 | 显示全部楼层
下载选项中,没有勾选use flash loader选项. 导致下载的程序是错的,但是IDE不会明显的提示, 只有再次勾选了verify download之后, 才会弹窗提示错误.
出错的地方恰好是汇编代码看上去很离谱的地方. 看样子, IAR调试显示的汇编,应该是从MCU中回读的.
这就有点奇怪了, 如果不勾选这个flash loader选项, IAR是用的哪里的下载算法.
回复

使用道具 举报

19

主题

371

回帖

428

积分

高级会员

积分
428
发表于 2023-11-26 15:46:17 | 显示全部楼层
都不能运行的话,就是代码写的有问题
回复

使用道具 举报

13

主题

89

回帖

128

积分

初级会员

积分
128
发表于 2023-11-26 19:23:59 | 显示全部楼层
amfy 发表于 2023-11-26 15:14
下载选项中,没有勾选use flash loader选项. 导致下载的程序是错的,但是IDE不会明显的提示, 只有再次勾选了v ...

你的问题我也遇到了,有时候不勾下载的不对,有时候勾了下载的不对,莫名奇妙的!!!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|Archiver|手机版|硬汉嵌入式论坛

GMT+8, 2024-4-28 01:00 , Processed in 0.189425 second(s), 28 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表