怎么也想不通Jlink是怎么下载进去的

[复制链接]
2342|10
 楼主| tianli1980 发表于 2013-9-10 21:21 | 显示全部楼层 |阅读模式
用的是STM32 F107VCT6, 编译出来的程序HEX文件都有200多K,AXF 文件更是高达700多K。但STM32 F107的Flash最大也就128K,我怎么也想不通Jlink是怎么下载进去的?
i55 发表于 2013-9-10 21:28 | 显示全部楼层
google “intel hex format Specification”
ymind 发表于 2013-9-10 21:38 来自手机 | 显示全部楼层
转成bin能这样比较,如果没用特殊技巧代码段是连续的话。
拿起书本 发表于 2013-9-10 22:22 | 显示全部楼层
因为下载到芯片里面的代码只是可执行代码。
hex文件包含地址信息,而且是ASCII表示的,虽然你的hex有200多KB,实际的可执行代码bin要小于100KB的
axf文件附加了调试信息,调试信息是不会烧写到芯片ram中的,所以你的axf文件去掉调试信息后剩下的可执行代码小于flash还是可以下载进去的。
王紫豪 发表于 2013-9-10 22:28 | 显示全部楼层
楼上说的对,BIN 文件,才是执行文件的镜像;其他的都包含其他信息
 楼主| tianli1980 发表于 2013-9-11 10:55 | 显示全部楼层
但我没用加让它生成Bin文件的指令的,生成Bin文件确实是只有70K,不过不加的话他内部是不是先转成Bin再烧进去?
myxiaonia 发表于 2013-9-13 10:44 | 显示全部楼层
F107VCT6是256K的
STARM 发表于 2013-9-13 15:02 | 显示全部楼层
是先转成Bin再烧
rtgchym 发表于 2013-9-13 15:20 | 显示全部楼层
拿起书本 发表于 2013-9-10 22:22
因为下载到芯片里面的代码只是可执行代码。
hex文件包含地址信息,而且是ASCII表示的,虽然你的hex有200多K ...

是这个道理
huangfeng33 发表于 2013-9-13 16:04 | 显示全部楼层
4.22的用jlink下载大文件很卡,是否是keil的版本问题,4.60反盗版了,而4.22的jlink下载大文件就会很卡,是不是大家的都是这样的啊?
拿起书本 发表于 2013-9-13 17:24 | 显示全部楼层
试试D:\Keil\ARM\Segger 用MDK4.54以前的驱动替换掉...至少目前没啥问题了...
您需要登录后才可以回帖 登录 | 注册

本版积分规则

482

主题

2214

帖子

11

粉丝
快速回复 在线客服 返回列表 返回顶部