OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5738|回复: 1

stm32用MDK生成的bin文件内容与直接烧录到单片机内的内容不同

[复制链接]

1

主题

1

帖子

0

精华

新手入门

积分
7
金钱
7
注册时间
2021-9-3
在线时间
1 小时
发表于 2021-9-23 16:12:42 | 显示全部楼层 |阅读模式

stm32用MDK生成的bin文件内容与直接烧录到单片机内的内容不同
在用stm32l496芯片做bootloader时遇到了这个问题,bin文件是按照网上的方法设置生成的,设置状态如keil设置。




按照这个方式设置后用STM32 ST-LINK Utility软件将bin文件下载到0x8004000区域,但bootloader每次跳过去后就会卡住(bootloader采用的时延时一段时间后自动跳转)。
但如果直接用mdk下载到0x8004000区域的时候,bootloader就可以正常跳转并执行这段程序里的内容。
通过对比发现生成的bin文件和直接下载到单片机里的数据并不一样,生成的bin文件前几行的内容见bin文件数据





[color=rgba(0, 0, 0, 0.75)]c807 0020 4d02 0008 c31c 0008 671b 0008
[color=rgba(0, 0, 0, 0.75)]c11c 0008 4304 0008 d125 0008 0000 0000
[color=rgba(0, 0, 0, 0.75)]0000 0000 0000 0000 0000 0000 791f 0008
[color=rgba(0, 0, 0, 0.75)]4504 0008 0000 0000 c51c 0008 7b1f 0008
[color=rgba(0, 0, 0, 0.75)]6702 0008 6702 0008 6702 0008 6702 0008

这是下载到单片机flash内的数据见单片机flash数据




对比可以看到数据并不完全一致,比如第一行第6和第10个字节,bin文件生成的分别是0x02和0x1c,而单片机flash内却是0x42和0x5c,而且数据的长度也不一样。
我不知道为什么会产生这种现象,不知大家有没有遇到过,求帮忙指点下,谢谢


单片机flash数据

单片机flash数据

bin文件数据

bin文件数据

keil设置1

keil设置1

keil设置2

keil设置2

keil设置3

keil设置3
正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

15

主题

1061

帖子

0

精华

资深版主

Rank: 8Rank: 8

积分
3623
金钱
3623
注册时间
2019-8-14
在线时间
1054 小时
发表于 2021-9-24 11:24:07 | 显示全部楼层
潘多拉的标准例程开发指南串口iap实验有制作bin文件的教程,可以跟着制作下载试试
回复 支持 反对

使用道具 举报

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

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2025-5-5 22:39

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

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