By default, the start address of the first load region in memory is used as the base address. fromelf inserts padding between load regions as required to ensure that they are at the correct relative offset from each other. Separating the load regions in this way means that the output file can be loaded into memory and correctly aligned starting at the base address.
Use this option with --bincombined_base and --bincombined_padding to change the default values for the base address and padding.
默认情况下,内存的起始地址第一次加载地区用作基地址。fromelf负载之间插入填充区域的要求,以确保它们在正确的相对偏移量。分离负荷地区以这种方式意味着输出文件可以加载到内存和正确对齐的底部开始地址。
使用这个选项——bincombined_base和bincombined_padding改变默认值基地址和填充。
谢谢你给的文档,
是不是加了--combined=0x3000,就不用在IROM里填起始地址是0x8003000了
兄台麻烦了...
那个IROM的起始地址要填的话,我现在生成bin文件的时候,并没有加--combined=0x3000这个选项。但是我的app升级下载能用呀、、、
那个选项到底是啥意思啊,看英文可能我没看明白
QQ图片20170914154025.jpg (58.01 KB, 下载次数: 0)
下载附件
2017-9-14 15:40 上传
您好,这是我运行了那个命令的结果,我是不是 写错啦
晕, 看不懂? 你不知这世上有一种 叫做 翻译的软件么..........
By default, the start address of the first load region in memory is used as the base address. fromelf inserts padding between load regions as required to ensure that they are at the correct relative offset from each other. Separating the load regions in this way means that the output file can be loaded into memory and correctly aligned starting at the base address.
Use this option with --bincombined_base and --bincombined_padding to change the default values for the base address and padding.
默认情况下,内存的起始地址第一次加载地区用作基地址。fromelf负载之间插入填充区域的要求,以确保它们在正确的相对偏移量。分离负荷地区以这种方式意味着输出文件可以加载到内存和正确对齐的底部开始地址。
使用这个选项——bincombined_base和bincombined_padding改变默认值基地址和填充。
以STM32 为例, 基地址是从0x80000000起始的,
HEX格式,可以指定什么地址有数据, 没指定的地址则为忽略FF空数据
而BIN格式, 是没法定义地址, 纯进制文件, 而STM32编译出来的都是从80000000起算起, BIN格式就只能从0开始在前段用FF填空直到0x8000000位置..........
比如JLINK 加载BIN格式数据, 会出现指定 起始地址0x80000000窗口, 就是 将BIN格式文件从0位置读取数据, 加载到0x80000000位置上....
再打个比方: 你编译没有加 bincombined_base, 出来的BIN格式文件, 如果用JLINK烧写, 那么在加载文件弹出的地址窗口, 你需要填上80003000, 才能正确将烧写到指定位置上.
一周热门 更多>