第3章—STM32最小系统
开发板:YS-F1PRO
处理器型号:stm32f103zet6
STM32最小系统,也称为最小系统板 或核心板,是指能够让一颗STM32微控制器正常工作的最简化的电路系统。
1.STM32微处理器
这是系统的“大脑”,所有程序都运行在这里。
STM32F103ZETT6 拥有的资源包括:64KB SRAM、512KB FLASH、2 个基本定 时器、4 个通用定时器、2 个高级定时器、2 个 DMA 控制器(共 12 个通道)、3 个SP1、2个11C、5个串口、1个USB、1个 CAN、3个12 位ADC、1个 12 位 DAC、 1个 SDI0 接口、1 个 FSMC 接口以及 112 个通用 10 口。
闪存(电脑硬盘/系统盘):用来存放程序,电脑的开发环境通过编译生成可执行文件,调试器将可执行文件下载到内部闪存里
2.电源电路
-
功能:为MCU及其他外设提供稳定、干净的电源。
-
典型设计:
-
输入:通常为3.3V或5V。如果输入是5V或更高电压,需要一个LDO线性稳压器(如AMS1117-3.3)将其转换为STM32核心所需的3.3V。
-
去耦电容:在VDD和VSS(地)引脚附近放置100nF的陶瓷电容和一个10uF的钽电容或陶瓷电容,用于滤除电源噪声,保证电源稳定。这是必须的
-
3.启动模式配置电路
-
功能:通过BOOT0和BOOT1引脚的电平组合,决定MCU从上电后从何处开始执行程序。
-
三种主要模式:
-
BOOT0=0:从用户闪存启动,这是最常用的模式,运行我们自己下载的程序。
-
BOOT1=0, BOOT0=1:从系统存储器启动,用于通过串口进行ISP下载(例如,使用USB-TTL模块更新固件)。
-
BOOT1=1, BOOT0=1:从内置SRAM启动,用于调试。
-
-
电路:BOOT0引脚通过一个10kΩ电阻连接到地(默认模式),同时可以通过跳线帽或开关将其接到3.3V(ISP模式)。BOOT1通常直接通过10kΩ电阻接地。
4.时钟电路
-
功能:为MCU提供时钟信号,是其心跳。
-
两部分:
-
高速外部时钟:由8MHz(或4-26MHz之间)的无源/有源晶振和两个负载电容(通常为20pF)组成。它为系统主时钟和PLL提供时钟源。
-
低速外部时钟:由32.768kHz的晶振和两个负载电容组成。它主要提供给实时时钟和看门狗,如果项目不需要精确计时,这部分可以省略,使用芯片内部的RC振荡器。
-
5.硬件复位电路
-
功能:通过一个低电平信号将MCU复位,使其从初始状态重新开始执行程序。
-
典型设计:一个简单的RC电路,通常包括一个10kΩ的上拉电阻和一个100nF的电容到地,并引出一个按键开关到地,用于手动复位。
6.程序下载与调试电路
-
功能:用于将编译好的程序烧录到芯片中,并进行在线调试。
-
标准接口:SWD 和 JTAG。
-
SWD:只需要SWDIO和SWCLK两根信号线以及GND,占用引脚少,是最常用的方式。
-
JTAG:功能更全面,但需要5根线。
-
标准的接口是JTAG/SWD 20-pin接口,与ST-LINK等调试器连接。
-