STM32C8T6---解析bin文件

本身bin文件是四字节对齐的,中断向量表一共六十四字节,一共有十六个中断向量,我们只需要知道头两个就可以了:

第一个是我们编译出来的这个bin文件最开始的00地址到第四个字节的地址,它里面的内容就是RAM内存起始地址

第二个是复位中断,也就是说我们把程序写进flash中,他得执行这个复位中断之后才能给你执行你的系统初始化啥的然后进入你的main方法中,然后这个复位中断的地址是写入flash地址+4,因为他这个是四字节对齐,

你用bootloader给单片机发送一个程序,他不是跳转到你发送程序的起始地址执行,他是要在这个地址上+4到复位中断去执行,然后后面程序开始正常运行

我用stm32cubemx生成了一个简单的点灯程序,然后运行了解析bin文件的指令,

certutil -dump "D:\STM32CubeMX_demo\P01_LED0\MDK-ARM\P01_LED0\P01_LED0.bin"


那个10可能是HAL库在进行栈分配的时候要求字节对齐,然后往后错了10字节

还有一个要注意的就是我们把这套二进制代码烧进flash中占多少内存呢

在map文件最底部我们可以看到

我这里可以看到一共占用了3.71kb但实际上呢我们的flash是按页来使用的

对于小容量来说这里一页占用1k,也就是说即使最后flash编写出来占用3.71kb但实际上它占用了4kb,剩下的那点空间浪费掉了

相关推荐
染予41 分钟前
上位机时间戳精度不够,时间无法对比怎么解决
单片机·嵌入式硬件
現実君1 小时前
关于MCU下位替换FPGA的经验与方案
单片机·嵌入式硬件·fpga开发
m0_547486661 小时前
《单片机原理及应用》全套PPT课件2026版
单片机·嵌入式硬件
十月的皮皮1 小时前
STM32从零到量产开发:四路继电器工业控制模块开发原理小灶 · 合集
stm32·单片机·嵌入式硬件·stm32cubemx·hal库
小羊先生car2 小时前
F429-HAL 库驱动框架(2026/7/22)
单片机·嵌入式硬件
小羊先生car2 小时前
F429-SysTick(2026/7/22)
stm32·单片机·嵌入式硬件
Dlrb12112 小时前
ARM---I.MX6ULL时钟系统详解、时钟树、系统时钟配置等
单片机·嵌入式硬件·arm·imx6ull·pll·时钟树·cortex-a7
WWJA王文举2 小时前
单片机参数如何掉电保存:Flash、EEPROM和配置存储完整设计
数据库·stm32·mongodb·c#
智购科技无人售货机工厂2 小时前
自动售货机硬件选型避坑:单片机 / 树莓派 / ESP32 怎么选?~YH
人工智能·单片机·嵌入式硬件·r语言·swift·perl·symfony
hongmai6668883 小时前
ESP32-C61-WROOM-1-N8R2:Wi-Fi 6与RISC-V融合的中坚力量
人工智能·单片机·嵌入式硬件·物联网·智能家居·risc-v