历史上的今天
返回首页

历史上的今天

今天是:2026年01月09日(星期五)

正在发生

2023年01月09日 | STM32的启动模式配置与应用

2023-01-09 来源:zhihu

三种BOOT模式

所谓启动,一般来说就是指我们下好程序后,重启芯片时,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。

Main Flash memory
是STM32内置的Flash,一般我们使用JTAG或者SWD模式下载程序时,就是下载到这个里面,重启后也直接从这启动程序。

System memory
从系统存储器启动,这种模式启动的程序功能是由厂家设置的。一般来说,这种启动方式用的比较少。系统存储器是芯片内部一块特定的区域,STM32在出厂时,由ST在这个区域内部预置了一段BootLoader, 也就是我们常说的ISP程序, 这是一块ROM,
出厂后无法修改。一般来说,我们选用这种启动模式时,是为了从串口下载程序,因为在厂家提供的BootLoader中,提供了串口下载程序的固件,可以通过这个BootLoader将程序下载到系统的Flash中。但是这个下载方式需要以下步骤:
Step1:将BOOT0设置为1,BOOT1设置为0,然后按下复位键,这样才能从系统存储器启动BootLoader
Step2:最后在BootLoader的帮助下,通过串口下载程序到Flash中
Step3:程序下载完成后,又有需要将BOOT0设置为GND,手动复位,这样,STM32才可以从Flash中启动可以看到, 利用串口下载程序还是比较的麻烦, 需要跳帽跳来跳去的,非常的不注重用户体验。

Embedded Memory
内置SRAM,既然是SRAM,自然也就没有程序存储的能力了,这个模式一般用于程序调试。假如我只修改了代码中一个小小的地方,然后就需要重新擦除整个Flash,比较的费时,可以考虑从这个模式启动代码(也就是STM32的内存中),用于快速的程序调试,等程序调试完成后,在将程序下载到SRAM中。

开发BOOT模式选择

通常使用程序代码存储在主闪存存储器,配置方式:

BOOT0=0,BOOT1=X

Flash锁死解决办法

开发调试过程中,由于某种原因导致内部Flash锁死,无法连接SWD以及Jtag调试,无法读到设备,可以通过修改BOOT模式重新刷写代码。

修改为BOOT0=1,BOOT1=0即可从系统存储器启动,ST出厂时自带Bootloader程序,SWD以及JTAG调试接口都是专用的。重新烧写程序后,可将BOOT模式重新更换到BOOT0=0,BOOT1=X即可正常使用。


推荐阅读

史海拾趣

Able Systems公司的发展小趣事

在追求经济效益的同时,Able Systems公司也注重履行企业社会责任。公司积极参与公益事业,关注环境保护和可持续发展。通过采用环保材料、推广节能技术等措施,公司努力降低生产过程中的能耗和排放。同时,公司还关注员工福利和职业发展,为员工提供良好的工作环境和培训机会。这些举措不仅提升了公司的社会形象,也为公司的长期发展奠定了坚实的基础。

请注意,以上内容仅为概述性质,并非基于Able Systems公司的实际发展历程。如需了解更多关于Able Systems公司的故事,建议查阅相关新闻报道、公司年报等官方资料。

ELDECO公司的发展小趣事

在电子记录仪(ELD)市场刚刚兴起时,ELDECO公司凭借其在嵌入式系统领域的深厚积累,迅速推出了首款高性能、易集成的ELD产品。这款产品不仅满足了当时法规对车辆监控的要求,还通过创新的数据分析功能,帮助运输企业提高了运营效率。随着市场需求的不断增长,ELDECO公司继续加大研发投入,不断推出新产品和解决方案,逐渐在ELD市场确立了领先地位。

Aleph America Corporation公司的发展小趣事

随着环保意识的不断提高,ELDECO公司积极响应国家号召,将绿色环保理念融入产品设计和生产过程中。公司采用环保材料和节能技术制造ELD产品,减少了对环境的污染和能源消耗。同时,公司还推广绿色出行理念,鼓励运输企业采用更环保的运输方式。通过这些措施,ELDECO公司不仅提高了企业的社会责任感,还为推动绿色交通发展做出了积极贡献。

爱普特微(aptchip)公司的发展小趣事

随着产品的广泛应用和市场的不断拓展,爱普特微电子逐渐获得了业界的广泛认可。公司屡获殊荣,包括“国家级专精特新小巨人”、“中国IC独角兽”、“中国TOP 50国产MCU厂商”等。这些荣誉的获得,不仅是对公司技术实力和市场表现的肯定,更是对公司未来发展的鼓励和期待。

璟德(ACX)公司的发展小趣事

随着技术的不断进步,璟德(ACX)的产品线也逐渐拓展,涵盖了滤波器、双工器、三工器、天线及其模组、蓝牙模组、射频前端模组等一系列高频陶瓷元件及模组。这些产品广泛应用于手机、无线网络、蓝牙、GPS、物联网等移动终端设备中,得到了市场的广泛认可。公司的业绩逐年攀升,客户群体也不断扩大。

Compostar Technology Co Ltd公司的发展小趣事

品质是公司发展的基石。Compostar Technology Co Ltd始终坚持严格的品质管理,从原材料采购到生产过程的每一个环节都进行严格的把控。同时,公司还注重品牌建设,通过统一的品牌形象和宣传策略,不断提升品牌知名度和美誉度。这些举措使得公司在激烈的市场竞争中始终保持领先地位。

问答坊 | AI 解惑

写给单片机实学者

转载一位工程师的文章,觉得对许多朋友有点启发特转至此: 单片机是一门实践性非常强的学科,没有实践一切都是“空中楼阁”,花点钱买块开发板是非常必要的。(“开发板就好比农民种地的种子,只要能合理利用,它便会生根发芽,最后定能收获丰盛的 ...…

查看全部问答>

脉冲序列对单激式开关电源变压器铁芯的磁化part1开关电源原理与设计(连载49)

2-1-1-1.脉冲序列对单激式开关电源变压器铁芯的磁化 为了简单起见,我们把单激式变压器开关电源等效成如图2-1所示电路,其中我们把直流输入电压通过控制开关通、断的作用,看成是一序列直流脉冲电压,即单极性脉冲电压,直接给开关变压器供电。这 ...…

查看全部问答>

超大功率的电源并联,需要注意关注那些方面的设计?

平常我们都是一块电源模块能解决工业问题,但在一些超大设备负荷传动中,一套电源可能无法满足要求,需要多套电源并联。在电源并联过程中,我们需要考虑那些问题,注意关键的地方拉?…

查看全部问答>

飞旭科技FS-EDS24数字地震仪性能指标

飞旭科技FS-EDS24数字地震仪性能指标     …

查看全部问答>

为什么伺服老是报警??

最近伺服驱动器老是报警,还望大虾能够给点指导,万分感谢! 我使用的是台达的ASDA-AB系列0.2KW的一套伺服系统,老是“ALE09”报警,参考一下手册指的是“位置控制误差过大”, 每当我将PLC发脉冲的频率加快到100KHZ以上的时候,就会发生上述的警报 ...…

查看全部问答>

如何用单片机测量电阻值?

万用表也是用的这个原理吗?…

查看全部问答>

ARMs3c2410(win ce 5.0, 我初学arm,遇到一些问题,希望大家给看看

    我刚刚接触arm,需要做一个简单的应用系统,我的系统是win ce 5.0,在安装好系统之后,我在机子上做的所有操作都不能保存起来,比如,触摸屏校准,每次我校准好之后复位从起又变回了以前的样子,还有,我在里面放的exe文件复位之后也 ...…

查看全部问答>

用M22发短息遇到的问题

最近在学习M22无线模块,用他发短信,指令如下: AT+CFUN=1 AT+CSCA=\"+8613800512500\"          AT+CMGF=1 AT+CMGS=\"+8613815269727\" hello 可是一点反应也没有,请各位大虾指点迷津,谢谢~…

查看全部问答>

stm32w108的sleeptimer如何使用?

有例子最好了,没有也说明一下, 像普通timer一样操作吗? 定时休眠功能是通过它来实现的吗? 如何设定休眠时间,有最小时间限制吗?…

查看全部问答>

【转】Altera常见问题

hyh808问:如何获得完整的SOPC Builder和GNUPro Bill Yuan答复:如果您购买了我们的开发板,我们随板提供这些软件,包括Quartus II sdfwx1问:完全版的NIOS需要多少钱? Horace答复:You can buy the Cyclone-Nios Kit or Stratix-N ...…

查看全部问答>