一 STM32最小系统构成。咋听可能有点迷糊。其实大可不必,最小系统,顾名思义:最小系统就是能使STM32运行起来的最小组成单位,这并没有什么玄乎。如下图,STM32最小组成系统有STM32芯片、电源电路、时钟电路、复位电路、调试下载电路及启动选择电路组成。
二 最小系统组成之主控:
(1)STM32芯片,这似乎没啥好说,只要是STM32家族成员中一员即可。
三 最小系统组成之电源电路:
(1)电源电路,正所谓人是铁,饭是刚,要干活人就得吃饭,芯片也如此,芯片需要稳定的电源激励方可正常工作。下图是STM32电源架构图。
VDD:标准工作电压,一般称为数字电源。
AVDD:模拟电压,常见用于ADC、DAC供电。
VREF:参考电压,一般为ADC、DAC作参考。
VBAT:备分电路供电,用于RTC及备份寄存器供电,如VDD掉电后,RTC继续即时及保存备份数据,消费品常见用纽扣电池提供,车载电路常见用电池电直接提供。
(2)电压极限参数,如下图:
注:如果电压超出以上参数,可能会影响芯片的性能,甚至会导致永久性损坏。
(3) 极限电流参数,如下图:
菜由上图可知,电源总电流最大150mA,单个IO电流最大可提供25mA,所以在驱动比较大负载时,一般不用单片机IO直接驱动,而增加驱动电路。如:IO一般不直接驱动,最好增加三极管驱动。
(4)下图是一般工作电压:
由上图可见:VDD电压:2V~3.6V,平常应用,一般取3.3V。VDDA电压没使用ADC情况下,可取2V~3.6V,平常应用一般取3.3V。VDDA电压在使用ADC情况下,可取2.4V~3.6V,平常应用一般取3.3V。
四 最小系统组成之时钟电路:
(1) 时钟之于系统,如心脏之于人体。时钟为系统提供稳定的心跳,从而保证系统有序、稳定的运行。STM32的时钟树如下:
A:HSI,内部8M高速时钟,成本低,但是精度较差。
B:HSE,外部高速时钟,需要外接4~16M晶体电路,增加成本,但是精度高。
C:LSE,外部低俗时钟,需外接32.768KHZ晶体电路,用于RTC及看门狗,成本高,精度高。
D:LSI,内部低俗时钟,40KHZ,用于RTC及看门狗供电,成本高,精度高。
(2) 时钟电路搭建,以HSE为例,如下图:
如上图:HSE电路由8M晶体、CL1、CL2、REXT构成。CL1、CL2取值5pF~25pF,常见取10pF。晶体常见5032、3225封装,30PPM,消费品-30°C~85°C即可,车载可选-40°C~105°C.如今,5032已逐渐被淘汰,3225正成为主流封装。关于REXT,很多电路设计没做预留,建议还是预留设计,用于匹配晶体参数。
五 最小系统组成之启动选择电路:
STM32有3种启动方式供选择,如以下A、B、C
A:内置存储器启动,最为常用,也是默认启动方式。
B:系统存储器,该种方式可通过串口1下载程序,但该种方式不怎么常用,甚至目前STM32高端的MCU已淘汰该种启动方式。
C:内部SRAM启动,不常用。
以上启动方式可同BOOT0及BOOT1的电平组合设置。详细见下图:
六 最小系统组成之调试下载电路:
STM32,既可使用串口下载及使用串口打印进行简单调试,也提供更高效的JTAG
(Joint Test Action Group)调试接口和SWD(Serial Wire Debug)调试接口。调试电路较为简单,如SWD接口电路,仅需引出SWDIO、SWCLK,公共端与J-LINK连接即可。
以上内容不足,还望海涵、指正。