硬汉嵌入式论坛

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

[IAR] IAR8.30版本如何配置固件大小4字节对齐

[复制链接]

3

主题

11

回帖

20

积分

新手上路

积分
20
发表于 2024-10-11 09:59:24 | 显示全部楼层 |阅读模式
各位坛友,如标题,使用IAR8.30版本编译器,如何配置编译的固件大小为4字节对齐呢?在网上找了几种配置方法都不行,问了GPT给的答案也不行。



方法1:
修改icf文件,在define region ROM_region = mem:[from 0x08000000 size 256K];后面加上 align = 4。这样修改后编译器直接报错了。
方法2:
C/C++ Compiler → Advanced 下,查找 Data AlignmentCode Alignment 选项,并设置为 4。
这个配置项在IAR8.30版本编译器没有找到。
方法3:
固件编译完后,手动处理补充空白字节,将固件填充到4字节对齐。
这种方法肯定可以,但是每次这样处理太麻烦了,有没有方法能直接让编译器输出的固件大小直接是4字节对齐呢?

回复

使用道具 举报

1万

主题

7万

回帖

11万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
117512
QQ
发表于 2024-10-11 10:15:56 | 显示全部楼层
准确的说,你这个是4字节整数倍。对齐是首地址对齐。

可以让GPT做个bat批处理,将IAR生成的bin做4字节整数倍补齐。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-12 06:28 , Processed in 0.050969 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2023, Tencent Cloud.

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