STM32最小系统的基本组成:电源电路、复位电路、时钟电路、调试接口电路、启动电路。
-
电源电路
STM32单片机一般是3.3V供电,而生活中常见的都是5V电源(电脑的USB口),所以需要将5V降压至3.3V。
- 复位电路
复位也可理解为重启,STM32正常工作状态下,复位引脚是高电平,NRST引脚低电平复位。
STM32中有三种复位方式,分别为:上电复位、手动复位、程序自动复位。- 上电复位:是在单片机上电启动的时候进行复位的,不需要人为干预,自动完成复位;
- 手动复位:通过外部的复位电路手动进行复位,比如按钮、开关之类的;
-
程序复位:通过程序内部的程序进行复位,一般有内核复位函数、看门狗复位等的软件复位方式;
在复位引脚NRST上外接电容和电阻,一般选用10K电阻和0.1uF电容。
- 时钟电路
STM32有两组晶振,一组用来给单片机提供主时钟,一组用来给RTC提供时钟。- 主时钟晶振连接8MHz的晶振,由晶振、起振电容、(反馈电阻)组成;
-
RCT时钟晶振连接32.768K的晶振,由晶振、起振电容组成;
- 调试接口电路
STM32一般有串口下载、JLink\STLink下载、ISP下载。-
SWD模式下载只需要用到三个引脚(GND、SWCLK、SWDIO)即可。
-
-
启动电路
STM32的两个引脚BOOT0和BOOT1的电平高低决定单片机的启动方式。
- BOOT1=X,BOOT0=0,FLASH启动,默认启动方式;
- BOOT1=0,BOOT0=1,系统存储器启动,芯片内部一块特定的区域,芯片出厂时在这个区域预置了一段Bootloader,就是通常说的ISP程序,如果出现程序硬件错误的话可以切换BOOT0=1到该模式下重新烧写Flash即可恢复正常。这个区域的内容在芯片出厂后没有人能够修改或擦除,即它是一个ROM区,它是使用USART1作为通信口;
-
BOOT1=1,BOOT0=1,STM32内嵌的SRAM启动,该模式用于调试;