关于单片机上的BOOT0和BOOT1

STM32一共有三种启动模式,在ST官网上下载的RM0008中
在这里插入图片描述
对应的中文翻译如下:
在这里插入图片描述
所谓启动,一般来说就是指我们下好程序后,重启芯片时,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。

主闪存存储器 = 芯片内置的Flash。这也是正常的工作模式。
系统存储器 = 芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区。
SRAM = 芯片内置的RAM区,就是内存啦。

在这里插入图片描述
第一种启动方式:是最常用的用户FLASH启动,正常工作就在这种模式下。STM32的FLASH可以擦出10万次,所以不用担心芯片哪天会被擦爆!

第二种启动方式是系统存储器启动方式,即我们常说的串口下载方式(ISP),不建议使用这种,速度比较慢。STM32 中自带的BootLoader就是在这种启动方式中,如果出现程序硬件错误的话可以切换BOOT0/1到该模式下重新烧写Flash即可恢复正常。

第三种启动方式是STM32内嵌的SRAM启动。该模式用于调试。




要注意的是,一般不使用内置SRAM 启动(BOOT1=1 BOOT0=1),因为SRAM 掉电后数据就丢失。多数情况下SRAM 只是在调试时使用,也可以做其他一些用途。如做故障的局部诊断,写一段小程序加载到SRAM 中诊断板上的其他电路,或用此方法读写板上的Flash 或EEPROM 等。还可以通过这种方法解除内部Flash 的读写保护,当然解除读写保护的同时Flash 的内容也被自动清除,以防止恶意的软件拷贝。.

一般BOOT0 和BOOT1 跳线都跳到0(地)。只是在ISP 下载的情况下,BOOT0=1,BOOT1=0 ,下载完成后,把
BOOT0 的跳线接回0,也即BOOT0=0,BOOT1=0 。



STM32F103 配置BOOT0 和BOOT1 直接接地还是经过电阻接地?
问:我的STM32F103RET6 挂了,原因是BOOT0 和BOOT1 直接接地导致的,很是奇怪,大家有没有遇到啊?
答:STM32 的硬件设计指导也是建议BOOT0、1 接电阻再接地的。
BOOT0 和BOOT1 分别通过10k 电阻接地,方便串口下载,下载器控制BOOT0 为高电平,下完后又将BOOT0
恢复为低,STM32 复位即可进入用户程序。平常上电直接进入用户程序。
boot0 接10k 电阻接地或者直接接地,都不会引起芯片损毁。

注意:如果JTAG 相关的引脚被用作普通IO,将无法下载(BOOT0 为低电平的情况下)。解决办法是用串口下载一次程序后再用JLINK 下载,或者将BOOT0 配置成高电平后下载。




参考链接
1. https://blog.csdn.net/chenhuanqiangnihao/article/details/113663065
2. https://www.cxymm.net/article/qq_36958104/102966926

  • 10
    点赞
  • 72
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
单片机boot升级流程是指通过更新单片机的启动程序(bootloader)来实现其功能升级的流程。 首先,为了进行boot升级,需要准备一个用于升级的文件,通常是一个固件文件(firmware),它包含了新的功能或修复的bug。 接下来,通过串口连接或者其他通信方式将单片机与计算机相连。这个通信接口可以是UART、SPI、I2C等,具体取决于单片机的类型和支持的接口。 然后,通过计算机端的工具或者编程软件,将固件文件发送到单片机中。在发送之前,需要将单片机进入bootloader模式,这通常需要在单片机上进行特定的操作或者通过引脚控制。 一旦单片机进入bootloader模式并且与计算机建立起通信,就可以开始升级过程。计算机会将固件文件逐步发送给单片机,并在发送过程中校验数据的完整性,以确保升级过程中没有出现错误。 当固件文件全部发送完成后,单片机会自动将接收到的固件文件写入到特定的存储区域中。这个存储区域通常是单片机的闪存(flash)或者EEPROM等。 最后,单片机会重新启动,并运行新的bootloader程序,从而使新的功能或者修复的bug生效。此时,boot升级过程完成。 需要注意的是,在boot升级过程中,应该保证单片机与计算机之间的通信稳定,避免断电或者其他意外情况的发生。另外,需要确保固件文件的正确性,否则可能会导致升级失败或者损坏单片机。因此,在进行boot升级之前,应该仔细检查固件文件的正确性,并备份原始的bootloader程序,以防意外情况的发生。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Harvey2001

感谢您的认可,无限飓风不断进步

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值