STM32启动模式

STM32之启动模式 STM32学习笔记之启动模式前言:菜鸟成长过程中的心得总结,欢迎指出本博文的错误之处,以便大家一起学习。谢谢!!!一、STM32的启动模式的选择  在STM32中,我们可以通过对BOOT0和BOOT1的配置,来选择我们所需要的启动模式,而BOOT0和BOOT1的配置,我们可以通过手册来查找,主要有如下图所示的几种启动方式。 二、常用的几种启动模式及其电路原理图1、串口ISP  在使用串口ISP下载 阅读详情

我们玩ARM9,一般都是在内存里调试程序,速度飞快。STM32下也可以这样,虽说现在的flash寿命已经很长了,但flash中调试烧录程序还是一个很慢的过程,有时候程序上一个小小的改动要花上几倍的时间下载代码,这确实是不能忍受的。
  我们也可以在开发STM32时,在内存中调试程序。
  {
STM32这颗Cortex-M3控制器,与其他许多ARM一样,提供了BOOT0和BOOT1两个管脚用于启动选择。
BOOT1=x  BOOT0=0  从用户闪存启动,这是正常的工作模式。
BOOT1=0  BOOT0=1  从系统存储器启动,这种模式启动的程序功能由厂家设置。(用于串口ISP)
BOOT1=1  BOOT0=1  从内置SRAM启动,这种模式可以用于调试。
  在芯片上电复位时,BOOT0和BOOT1两个管脚的状态将决定芯片从何处启动。

1.当BOOT0和BOOT1均设置为逻辑1时,系统将从内置SRAM中启动,这是代码内存调试的第一个条件。
}
经多次确认,BOOT0和BOOT1状态与内存中调试无直接联系

2.然后,我们需要在代码中设置正确的中断向量表位置。中断向量表通常被放置在用户程序的开始,所以flash中运行时,向量表位于0x08000000处,而当代码被放置在SRAM中运行时,他的位置就成了0x20000000。在初始化NVIC时,我们可以放置如下代码,定义向量表的位置

    NVIC_SetVectorTable(0x20000000 , 0x0);
或
    NVIC_SetVectorTable(0x08000000 , 0x0);

3. 在编译器中,要进行正确的设置。这里以IAR 5.4为例说明。
    3.1.  工程选项中Linker项,Config选项卡中,指定Linker Configuration File为stm32f10x_ram.icf, 该文件在FWLIB安装包中可以获得,IAR4和5分别有不同的配置文件。
    3.2.  同样是工程选项中Debug项,Download选项卡中,去掉所有钩子,不下载代码到flash

  经过以上步骤,代码就可以在内存中调试,下载速度飞快,调试速度也比flash中快了不少!

 

应该参考一下stm32得存储器映射图

 

 

STM32F0DISCOVERY使用入门 关于STM32F0DISCOVERY板子的简单介绍以及如何使用,方便初学者快速入门,pdf是中文版的 立即下载

相关推荐

VCS多lib编译实战:如何高效处理Verilog模块重命名与分开编译

本文深入探讨了在复杂SoC设计中,如何利用VCS工具实现多库编译,以高效处理Verilog模块重命名与分开编译的工程难题。通过解析synopsys_sim.setup配置、Config映射机制,并提供完整的自动化脚本实战指南,帮助工程师构建健壮、可维护的编译环境,从而显著提升大型项目的编译效率和代码管理灵活性。

weixin_29169505的博客 357

STM32启动模式 收藏

STM32启动模式 收藏  STM32启动模式 收藏 我们玩ARM9,一般都是在内存里调试程序,速度飞快。STM32下也可以这样,虽说现在的flash寿命已经很长了,但flash中调试烧录程序还是一个很慢的过程,有时候程序上一个小小的改动要花上几倍的时间下载代码,这确实是不能忍受的。  我们也可以在开发STM32时,在内存中调试程序。  {STM32这颗Cortex-M

dp__mcu的专栏 2602

AI Agent Harness Engineering 监控与日志系统搭建

在生成式AI(Generative AI)与大语言模型(LLM)普及的今天,AI Agent(自主智能代理)已经成为了继「LLM API调用」「单轮/多轮对话」之后的第三代AI应用范式——Agent能够自主感知环境、制定多步决策、调用外部工具(Web搜索、数据库、RAG检索、企业系统API等)、执行复杂任务并优化自身策略。然而,随着Agent应用从Demo原型快速落地到企业生产环境,一系列与工程化落地强绑定的可观测性(Observability)问题正在成为Agent项目成功上线、稳定运行的最大瓶颈。

AI开发架构师 184

STM32三种启动模式:【详细讲解】

BOOT 引脚的值在时被锁定。在重置后,由用户决定是如何设置 BOOT1 和 BOOT0 引脚,来选择需要的启动模式。

weixin_66299220的博客 7045

Rider高效调试UE引擎:无需编译源码的符号配置指南

本文提供了一份详尽的Rider高效调试UE引擎指南,核心在于无需编译源码即可配置调试符号。通过Epic启动器下载官方PDB文件,并在Rider中正确配置外部符号服务器路径,开发者能在10分钟内实现对引擎内部代码(如AActor::Tick)的源码级断点调试、变量查看和调用堆栈分析,极大提升问题排查效率。

weixin_29011239的博客 341

MTK手机传感器驱动开发避坑指南:从SCP代码大小限制到Overlay加载流程详解

本文详细解析了MTK平台传感器驱动开发中的常见问题,包括SCP代码大小限制、Overlay加载流程及客制化传感器集成。通过实战案例和优化策略,帮助开发者高效解决MTK传感器驱动开发中的技术难题,提升开发效率。

weixin_42522374的博客 401

icf文件,链接配置文件

icf是链接配置文件(Linker configuration file)后缀名。   stm32固件库中存放路径为: STM32F0xx_StdPeriph_Lib_V1.5.0\Projects\STM32F0xx_StdPeriph_Templates\EWARM\ 如下图所示:; 文件配置内容有: ROM地址空间、大小和sections RAM地址空间、大小和sectio...

jxndsfss的专栏 1万+

用yolov8训练自己的模型并调取摄像头实时检测,新手小白超友好教程!逻辑梳理,从0开始逐步实操❤

帮新手小白学会用yolov8,包含多篇高质量博客整理

Lhhhhds的博客 2941

STM32启动模式详解

系统存储区实际上存放了一段ST事先写好的BootLoader程序,且不可以被修改,用于ISP下载,也就是串口方式下载,当我们将BOOT0拉高,BOOT1拉低时,也就是系统存储器模式启动,单片机会将0x1FFF 0000~0x1FFF 7A0F这段空间映射到0x0000 0000处,运行系统内置的BootLoader程序,也就是串口下载的程序,使用串口将程序下载到FLASH中,下载完成之后就将BOOT0拉低,重启,使用主FLASH的方式运行使用串口下载的程序了。1)主FLASH = 芯片内置的Flash。

八天一吨水的博客 1万+

通信原理 | 随机数仿真 | 均匀、正态、双高斯、瑞利、莱斯、对数正态、nakagami、Suzuki分布的随机数仿真(matlab)

信道建模在通信系统设计和分析中扮演着至关重要的角色。它指的是使用数学和物理模型来描述和模拟无线或有线通信路径中的信号传播特性。

若北辰 1987

AI游戏制作07——波次计时器,敌人按波次生成

AI游戏制作07——波次计时器,敌人按波次生成

qq_40572023的博客 47

01.一探究竟STM32的三种启动模式

0· 1.有哪些启动方式?怎么选择这三种启动方式? 表1 STM32启动模式表(*STM32参考手册) 3.这三种启动方式有什么区别? 通过设置接口来选择不同启动模式 在系统复位后,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1 和BOOT0引脚的状态,来选择在复位后的启动模式。 在从待机模式退出时,BOOT引脚的值将被被重新锁存;因此,在待机模式下BOOT引脚应保持 为需要的启动配置。在启动延迟之后,CPU从地址0x0000 000..

鬼爷杂货铺 6006

PINN:当深度学习遇上朗伯-比尔定律

光谱数据处理中引入PINN的三种架构设计

qq_53529450的博客 154

STM32三种启动模式

所谓启动,一般来说就是指我们下好程序后,重启芯片时,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。 STM32上电或者复位后,代码区始终从0x00000000开始,三种启动模式其实就是将各自存储空间的地址映射到0x00000000中。 (1)从Flash启动,将主Flash地址0x08000000映射到0x00000000,这样代码启动之后就相当于从0x08000000开始。 (2)从RAM启动,将RAM地址0x200000

u011553516的博客 6672

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

STM32三种BOOT启动模式详解(全网最全)

一、三种boot启动模式 一般来说就是指我们下好程序后,重启芯片时,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。 1、第一种方式(boot0 = 0):Flash memory启动方式 启动地址:0x08000000 是STM32内置的Flash,一般我们使用JTAG或者SWD模式下载程序时,就是下载到这个里面,重启后也直接从这启动程序。基本上都是采用这种模式。 2、第二种方式(boot0 = 1;boot1 = 0):

果果小师弟的博客 13万+

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

stm32烧不进去程序_STM32启动模式

STM32的复位方式有三种:上电复位,硬件复位和软件复位。当我们在Flash Download中勾选了Reset and Run时,把程序烧写进去芯片后,重启芯片就相当于软件复位。 当我们把电源接上,芯片启动,这种情况属于上电复位。 当我们按下复位键,芯片重启,这种情况属于硬件复位。产生复位后,在系统时钟第4个上升沿到来的时候,BOOT引脚的值被锁存。这里的BOOT引...

weixin_39627481的博客 3061

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

STM32启动模式浅析

STM32启动模式浅析用户闪存存储器启动模式(Main Flash memory)系统存储器启动模式(system memory)SRAM启动(Embedded Memory) 所谓启动,一般来说就是指我们下好程序后,重启芯片时,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。(思考:这里也就是说在整系统未进行启动的时候,是根据晶振的起振进行sysclk计数的)用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。 用户闪存存储器启动模式(Main Flash memory)

zxfaxjy的博客 1139

STM32单片机的启动模式 三种BOOT模式介绍

在绘制32单片机时,参考别人的原理图对单片机的启动方式BOOT有疑问, 这里写目录标题自己的理解和应用一、三种BOOT模式启动的介绍二、自己开发BOOT模式的选择官方的文档介绍 自己的理解和应用 通过把BOOT0和BOOT1连接在高电平或低电平可以设置STM32怎么启动 英文 中文翻译 一、三种BOOT模式启动的介绍 所谓启动,一般来说就是指我们下好程序后,重启芯片时,SYSCLK的第4个上升沿,BOOT引脚的值将被锁存。用户可以通过设置BOOT1和BOOT0引脚的状态,来选择在复位后的启动模式。 第一

qq_46187594的博客 1万+
上一篇: STM32三种启动模式中存储器的存储介质
下一篇: STM32单片机的FSMC机制FlaSh存储器扩展
lbjfeng
博客等级 码龄19年 38粉丝 31原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值