一.什么是单片机最小系统
常见的单片机最小系统为单片机能独立运行程序及控制外围电路的最简单电路,主要由单片机、晶振电路、复位电路三部分构成。Stm32f103c8t6也不例外,构成最小的运行电路也需要以上三部分。
Stm32f103最小系统板原理图如下:
二.最小系统电路
Stm32单片机最小系统电路有单片机、晶振电路、复位电路。
1. 单片机
Stm32f103系列单片机主要资源如图:
Stm32f103c8t6工作电压为2-3.6V(一般采用3.3V),内置64-128KBytes Flash,20KBytesSRAM,带有37个通用GPIO口(含特殊功能IO)。在最小系统板上主要连接晶振电路、复位电路、工作电源、以及配置BOOT启动方式。
BOOT启动方式主要有三种,主闪存存储器启动、系统存储器启动、内置SRAM启动,对应的BOOT引脚状态如下图:
最常用的模式为主闪存存储器启动,即内部Flash启动,BOOT1=0,BOOT1=x(x表示0或1均可)。(注意三种模式的对应启动地址均不一样,内部Flash启动的地址为0x0800000)
2. 晶振电路
(1)主时钟晶振
Stm32单片机内部自带一个8MHz的RC时钟,在符合设计需求的情况下,可通过程序在初始化时钟函数内,选择采用内部时钟。
外部主时钟晶振主要作为供单片机内核的时钟源,官方推荐晶振电路主要参数如下:
Stm32单片机外部晶振为4-16MHz,常用8MHz,电路图如下:
(2)RTC时钟晶振
同样,RTC时钟在符合设计需求的情况下,可选用内部自带的40kHz RTC时钟。外部晶振32.768KHz主要作为单片机内部RTC时钟的时钟源,电路图如下:
3. 复位电路
复位电路由RC电路及按键构成,10k电阻及1uF电容组成的RC电路;stm32单片机复位引脚为低电平有效,复位电路的作用是使单片机复位引脚在上电时,确保复位引脚至少有1ms以上的低电平状态。复位按键的作用是当按键按下,复位引脚的被拉至低电平,单片机触发复位。
以上的单片机、晶振电路、复位电路,亦可构成stm32的最小系统电路,但需使用+3.3V电源给其供电。由于常见采用USB给其供电源,USB电源为+5V,所以为了增加最小系统板的使用方便性,需增加以下外围电路。
三.外围电路
1. +5V转3.3V稳压电路
稳压电路的作用是将输入的+5V电源降压到+3.3V,给单片机最小系统电路供电。
2. 状态指示灯
最小系统板上有两个LED灯,D1为+3.3V电源指示灯,如果板卡上电正常,D1灯常亮。如果D1不亮,则可能板卡电源异常。D2灯为程序状态指示灯,可供软件调试或者程序运行指示用。
3. SWD烧录接口
SWD接口为单片机的程序烧录、软件调试接口,使用ST-Link、或者JLink可通过SWD接口进行程序烧录或调试。
4. USB电源接口
USB电源接口采用了Micro USB接口,最小系统板可通过USB接口连接至电脑上或者+5V电源适配器上,实现板卡的供电。但有点需要注意的是,虽然USB接口连接至单片机的USB引脚上,但单片机USB功能需要程序带有USB驱动,否则单片机的USB引脚只是为普通IO,无法与电脑的USB进行数据交互。其中电阻R9、R11为限流电阻,R10为上拉电阻。
四.实物图及对应电路