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,剩下的那点空间浪费掉了

相关推荐
吠品3 小时前
智谱开源 ZCode 之后,真正的考试才开始
单片机·嵌入式硬件·1024程序员节
Chery11404 小时前
高速ADC与精密DAC怎么选?DP9230D与DP8532D应用解析
嵌入式硬件·物联网·射频工程
小李不想当小白7 小时前
SPI通信外设与W25Q64 (硬件SPI)(STM32标准库学习笔记)
笔记·stm32·单片机·嵌入式硬件·学习·嵌入式
LCG米7 小时前
STM32驱动W5500以太网模块实测:TCP吞吐瓶颈定位、TX指针回绕陷阱与断线重连保活落地
stm32·单片机·嵌入式硬件·tcp/ip
尼喃9 小时前
662K/65Z5三脚稳压芯片规格书—PW6566B33/B30引脚功能
嵌入式硬件
创界工坊工作室9 小时前
63-基于STC89C52霍尔传感器的智能化电能表设计
stm32·单片机·嵌入式硬件·51单片机·proteus
智购科技自动售货机厂家10 小时前
让AI经营自动售货机:从Project Vend看工具权限与业务规则~YH
大数据·服务器·单片机·嵌入式硬件·深度学习
Zwawa11 小时前
从 printf 到曲线:把数据送上 VOFA+
c语言·单片机·嵌入式
意法半导体STM3211 小时前
【官方原创】LAT6048 如何扩大MP2的A35核和M33核共享内存
stm32·单片机·嵌入式硬件·内存映射·stm32mp2
en.en..12 小时前
STM32(F429)启动模式与两种烧录方式
stm32·单片机·嵌入式硬件