STM32-STM32最小系统板介绍

本章思维概述导图:

STM32最小系统

STM32单片机最小系统是32系列单片机能够独立工作的最简电路配置,它为单片机提供了运行所需的基本条件。32单片机最小系统板是嵌入式系统开发的基础平台,集成了单片机运行所需的最小功能模块。

STM32最小系统板硬件架构

STM32最小系统板的核心是单片机(MCU),围绕其集成一些功能模块:

1、时钟电路:为单片机提供精确的时钟信号。

2、复位电路:实现上电复位和手动复位功能。

3、电源电路:为系统提供稳定的工作电压。

4、下载电路:支持程序烧录和在线调试


STM32最小系统板核心电路设计详解

单片机核心芯片

型号选择:STM32F103C8T6芯片,支持在线编程调试

观察STM32最小系统电路原理图可分析出单片机核心芯片为:STM32F103C8T6

STM32单片机PC14(OSC32_IN)和PC15(OSC32_OUT)引脚外接32.768KHZ的晶振,组成外部低速时钟电路。

STM32单片机PD0(OSC_IN)和PD1(OSC_OUT)引脚外接8MHZ的晶振,组成外部高速时钟电路。

STM32单片机NRST低电平复位引脚,连接复位电路

STM32单片机PA11(USB D-)和PA12(USB D+)引脚外接电源电路。

STM32单片机PA9和PA10引脚:串口通信引脚,连接下载电路。

STM32单片机PA13(SWDIO)和PA14(SWCLK)、VDD、GND引脚引出作为座子。组成SWD下载电路。

晶振电路

在STM32最小系统中有两个晶振电路分别为主晶振(HSE)电路和备份晶振(LSE)电路;以下对晶振电路介绍。

主晶振(HSE)电路如图所示:

电路分析:

STM32单片机PD0(OSC_IN)和PD1(OSC_OUT)引脚外接8MHZ晶振,并联两个22PF负载电容C3、C4至地,形成LC谐振网络。

工作原理:

8MHz晶振Y2两端并联的22pF电容C3/C4构成负载电容网络。晶振起振依赖LC谐振特性,电容通过精确匹配晶振的串联谐振频率(通常为8MHz±30ppm),确保振荡信号稳定在目标频率。若电容值偏离设计值(如22pF±5%),可能导致起振失败或频率漂移,影响系统时钟精度。

主晶振(HSE)电路的作用:

1、为系统提供基准时钟源(经PLL倍频至72MHz),驱动CPU、内存、外设等高速模块运行,保障指令执行、数据传输的时序精准性。

2、支撑UART、SPI、I2C等通信接口的时钟同步,确保外设数据交互稳定可靠。

备份晶振(LSE)电路如图所示:

电路分析:

STM32单片机PC14(OSC32_IN)和PC15(OSC32_OUT)引脚外接32.768KHZ的晶振,组成外部低速时钟电路。

工作原理:

32.768kHz晶振Y1两端的10pF电容C1/C2作为旁路电容,滤除电源纹波和电磁干扰。晶振输出的低频信号易受环境噪声影响,电容通过提供低阻抗通路,将高频噪声旁路至地,确保RTC模块获得纯净的32.768kHz基准信号。

备份晶振(LSE)电路的作用:

1、专为RTC实时时钟设计,通过分频生成1Hz秒脉冲,实现精确到秒的计时功能,支持断电后由VBAT电池维持计时不丢失。

2、在系统进入Stop/Standby模式时,持续为备份域供电,确保唤醒后时间、配置参数快速恢复,提升低功耗场景下的可靠性。

复位电路

在STM32最小系统中复位电路实现在系统上电和手动操作时,将电路状态初始化为确定的初始值,确保系统可靠启动或从异常状态恢复。

复位电路原理图如图所示:

电路分析:

STM32单片机NRST引脚连接复位电路上;

工作原理:

在复位电路的下半部分是上电复位实现电路,由电容C5构成充放电回路,利用电容电压不能突变的特性生成复位脉冲。上电时,电容电压从0V开始充电,复位引脚被拉低;充电完成后,复位引脚恢复高电平实现复位。

在复位电路的上半部分是在RC复位电路的基础上增加按键,按下时,电容通过按键快速放电,复位引脚被拉低,生成按键复位脉冲。松开按键后,电容重新充电,复位引脚恢复高电平实现复位。

电源电路

在STM32最小系统板中电源电路为单片机核心、时钟电路、复位电路及必要外设提供稳定、低噪声的电源。

电源电路如图所示:

电源电路中USB1接口作为电源输入端(输入电压范围4.5-15V)通过AMS1117.3.3稳压芯片调节输出电压为3.3V为STM32单片机供电及外围电路模块供电;同时用端子把5V和3.3V、GND引出来方便我们使用;

下载电路

下载电路也称USB转TTF电路,下载电路是实现程序烧录的关键模块,通常采用USB转串口(如CH340C芯片)的方式与PC通信。

下载电路如图所示:

观察图中CH340G是一款USB转串口芯片,负责将PC的USB信号转换为TTL串口信号(RXD/TXD),从而与32单片机的串口通信模块(如STM32的PA9、PA10)对接。

电源引脚:

STM32的VCC引脚连接到CH340G的VCC引脚,为芯片供电。

STM的GND与CH340G的GND引脚连接,形成公共地。

数据引脚:

USB的D+和D-分别连接到CH340G的UD+和UD-引脚,实现USB通信。

串口引脚:

CH340C的TXD引脚 → 单片机的RXD(如P10),用于向单片机发送数据。

CH340C的RXD引脚 → 单片机的TXD(如PA9),用于接收单片机发送的数据。

注意:STM32除了支持串口下载,还支持JTAG、SWD模式下载。STM32芯片自带JTAG/SWD管脚,通过相应的仿真其可实现程序下载、在线仿真调试等功能;


STM32启动方式

STM32的启动模式由BOOT0和BOOT1引脚在复位时的电平状态决定,共用三种模式:

BOOT0与BOOT1作用:

BOOT0为启动模式主选择引脚,高电平进入系统/SRAM模式,低电平进入Flash模式。

BOOT1在部分型号中用于细分启动区域(如F1系列),高电平时可能影响启动地址或扩展功能。

1、主闪存启动(Main Flash Memory)

配置:BOOT0=0(接地),BOOT1任意(通常接地)。

地址映射:主闪存(0x0800_0000)映射到启动空间(0x0000_0000),CPU从Flash起 始地址执行程序。

应用场景:默认运行模式,程序通过JTAG/SWD下载至Flash后直接从此启动,支持正 常功能执行与调试。

2、系统存储器启动(System Memory)

配置:BOOT0=1(接高电平),BOOT1=0(接地)。

地址映射:系统存储器(0x1FFF_F000)映射到启动空间(0x0000_0000),执行ST预 置的Bootloader(ISP程序)。

应用场景:用于串口/USB下载固件(如通过UART1、USB DFU),无需外部编程器。需 先设置BOOT0=1并复位,启动Bootloader后通过串口接收程序烧录至Flash, 完成后需将BOOT0改回0并复位。

3、内置SRAM启动(Embedded SRAM)

配置:BOOT0=1,BOOT1=1(均接高电平)。

地址映射:SRAM(0x2000_0000)映射到启动空间(0x0000_0000),需通过调试器(如 ST-LINK)或Bootloader将代码加载至SRAM执行。

应用场景:快速调试(避免频繁擦写Flash)、故障诊断、读写保护解除(需配合Flash 擦除)。数据断电丢失,仅用于开发阶段。


制作不易!喜欢的小伙伴给个小赞赞!喜欢我的小伙伴点个关注!有不懂的地方和需要的资源随时问我哟!

相关推荐
蜀黍@猿4 小时前
【GD32】软件I2C
单片机·嵌入式硬件·mcu
小鱼儿电子4 小时前
18-基于STM32的智能医嘱手环设计与实现
stm32·单片机·物联网·医嘱手环
Chat_zhanggong3456 小时前
HI3516CV610-20S开发板
人工智能·嵌入式硬件·编辑器
不吃鱼的羊7 小时前
Vspy使用教程
单片机
小亮亮虫10 小时前
LwIP UDP RAW
单片机·网络协议·udp
仰望星空的凡人10 小时前
【BUG排查】基于RH850F1KMS1的主控出现系统中断错误,调试FEIC的值为0x11
单片机·bug·rh850·renesas
螺丝钉的扭矩一瞬间产生高能蛋白11 小时前
STM32电机控制基础知识
stm32·单片机·嵌入式硬件·嵌入式软件·直流有刷电机控制·定时器互补输出·定时器死区控制刹车输入
沐欣工作室_lvyiyi11 小时前
基于腾讯云的物联网导盲助手设计与实现(论文+源码)
单片机·物联网·云计算·毕业设计·腾讯云·导盲杖
Blossom.11812 小时前
用一颗MCU跑通7B大模型:RISC-V+SRAM极致量化实战
人工智能·python·单片机·嵌入式硬件·opencv·机器学习·risc-v