有三种启动模式通过设置boot1和boot0:
1,主闪存:类似电脑的硬盘,flash地址从0x0800 0000开始大小是512kb,从这个位置启动的时候,该地址被映射到0x0000 0000地址。我们编写的驱动和应用程序,包括启动代码.s文件一并编译成hex文件就是装在这个地方。
2,系统存储器:起始地址0x1fff b000,大容量产品中该区域大小只有2kb。这里放着的是st公司芯片出厂之前就固化好的只读程序-自举程序,可以在st中国网站搜索an2606应用笔记来了解。自举程序有两个功能如下:
拨动boot开关,先让mcu从系统存储器启动运行自举程序,自举程序里面的串口下载功能把我们编译好的hex文件下载到主存储器flash当中,再拨动boot让mcu从flash启动。
这样拨来拨去很麻烦,无非就是设置boot两个引脚高低电平,所以就有了串口一键下载电路,从系统存储器启动下载程序,之后,就可以从flash启动。不用拨来拨去。
3,sram启动:起始地址0x2000 0000。sram相当于电脑中的内存条,不用初始化可以直接读写,速度极快,价格昂贵,所以stm32f103开发板中sram只有64kb。
stm32三种启动模式
最新推荐文章于 2024-09-25 12:27:29 发布