首页 理论教育 STM32单片机最小系统设计:完整教程

STM32单片机最小系统设计:完整教程

时间:2023-11-23 理论教育 版权反馈
【摘要】:STM32F103处理器系统频率为72 MHz,处理器性能可达到90 DMIPS,此时Cortex-M3功耗约14 W。图4.3STM32供电系统内部结构最小系统电源电路,如图4.4所示。图4.4最小系统电源电路STM32单片机支持3种低功耗模式:休眠模式、停机模式和待机模式。图4.6STM32 PVD检测器系统复位将清除时钟控制器CSR中的复位标志和备用域寄存器之外的所有寄存器。图4.7STM32复位系统为了增强系统运行稳定性,可以将复位引脚连接外部的复位电路。

STM32单片机最小系统设计:完整教程

1)电源电路

Cortex-M3耗电指标:0.19 W/MHz,1.25 DMIPS/MHz;若达到5 DMIPS的性能,Cortex-M3工作频率只需4 MHz,功耗0.76 W,对应51单片机,工作频率需60 MHz,功耗30 W。STM32F103处理器系统频率为72 MHz,处理器性能可达到90 DMIPS,此时Cortex-M3功耗约14 W。STM32供电系统内部结构如图4.3所示。

VDD引脚必须连接到VDD电源并外接退耦电容(100 nF陶瓷电容,个数由器件VDD引脚个数决定,所有引脚共需连接1个10 μF(最小4.7 μF)的钽电容或陶瓷电容)。如果需要使用ADC,VDD的支持范围为2.4~3.6 V,否则VDD支持2.0~3.6 V的宽电压范围。在常规使用中,通常采用3.3 V供电。

VBAT引脚可以连接到外部后备电池(1.8~3.6 V)。如果没有使用外部后备电池,建议将此引脚连接到VDD并连接1个100 nF陶瓷电容作退耦。

VDDA引脚必须连接两个外部退耦电容(100 nF陶瓷电容+10 μF钽电容或陶瓷电容),并保持VDDA与VDD相同供电电压。VREF+引脚可以连接到VDDA电源。如果使用外部独立的参考电源为VREF+供电,必须外接1个100 nF和1个10 μF电容。VREF+必须满足2.4 V<VREF+<VDDA。

图4.3 STM32供电系统内部结构

最小系统电源电路,如图4.4所示。

图4.4 最小系统电源电路

STM32单片机支持3种低功耗模式:休眠模式、停机模式和待机模式。

休眠模式只有CPU停止工作,所有外设继续运行,在中断/事件发生时唤醒CPU,调压器在1.8 V区域供电工作。

停机模式允许以最小的功耗来保持SRAM和寄存器的内容,1.8 V区域的时钟都停止,其他部分工作,PLL、HSI和HSE的RC振荡器被禁能。当外部中断源(16个外部中断线之一)、PVD输出、RTC闹钟或者USB唤醒信号,即退出停止模式。

待机模式追求最少的功耗,内部调压器被关闭,这样1.8 V区域断电。除了备份寄存器和待机电路,SRAM和寄存器的内容也会丢失。RTC、IWDG和相关的时钟源不会停止。当外部复位(NRST引脚)、IWDG复位、WKUP引脚出现上升沿或者RTC闹钟时间到时,即退出待机模式。

2)复位电路

STM32内部集成了上电复位POR(Power On Reset)/掉电复位PDR(Power Down Reset)电路,该电路始终处于工作状态,保证系统在供电超过2 V时工作。当VDD低于设定的阀值(VPOR/VPDR)时,置器件于复位状态,而不必使用外部复位电路。在VDD电压由低向高上升越过规定的阀值VPOR之前,保持芯片复位,当越过这个阀值后TRSTTEMPO秒(约2.5 ms,待电源可靠供电),才开始取复位向量,并执行指令。在VDD电压由高向低下降越过规定的阀值VPDR后,将在芯片内部产生复位。

STM32内部复位信号产生如图4.5所示。

图4.5 STM32内部复位信号产生

STM32内部配置可编程电压监测器PVD(Programmable Voltage Detector),监视VDD供电并与阀值VPVD比较,当VDD低于或高于阀值VPVD时,将根据外部中断第16线的上升/下降边沿触发设置,产生PVD中断,上升和下降的阀值VPVD有一个差值。

中断处理程序可以发出警告信息或将微控制器转入安全模式,但需要通过程序开启PVD。电源控制/状态寄存器(PWR_CSR)中的PVOD标志位用来表明VDD是否低于或高于阀值VPVD。

TM32 PVD检测器如图4.6所示。

图4.6 STM32 PVD检测器(www.xing528.com)

系统复位将清除时钟控制器CSR中的复位标志和备用域寄存器之外的所有寄存器。下列事件都将引起复位:

①NRST:外部异步复位引脚;

②看门狗计时器计时终止(WWDG复位);

③独立看门狗计数终止(IWDG复位);

软件复位(SW复位);

⑤低功耗管理复位。

STM32复位系统如图4.7所示。

图4.7 STM32复位系统

为了增强系统运行稳定性,可以将复位引脚连接外部的复位电路(专用复位芯片或阻容复位)。在常规使用中,选择外部按键及上电阻容复位即可。外部复位电路如图4.8所示。

图4.8 外部复位电路

3)时钟电路

STM32有3种时钟可选作系统时钟源(SYSCLK):HSI(内部振荡器时钟)、HSE(外部时钟,可以是时钟源输入或外部晶体振荡器)和PLL时钟。

STM32还具有以下两个二级时钟源:可用于独立看门狗和停止/待机模式RTC唤醒提供时钟源的40 kHz内部低速RC(LSI RC);为RTC提供时钟源的32.768 kHz低速外部晶体振荡器(LSE晶体)。

在简单应用情况下,可选择内部时钟作系统时钟源。在需要精确定时的情况下(如串行通信、系统精确定时、内部RTC等),需使用外部时钟源。系统时钟要选择外部时钟源输入或外部晶体振荡器时钟,RTC使用外部32.768 kHz晶体振荡器。最小系统时钟电路如图4.9所示。

4)程序下载(调试)接口电路

在设计最小系统前,需预先确定程序下载(调试)的方式。如果选择通过串口下载,需要设计完整的和计算机通信的USART接口电路,并且需要设计切换开关用于更改BOOT[1∶0]引脚的电平,以便选择不同的启动方式。采用JTAG接口进行下载时,只需根据JTAG标准连接JTAG接口即可。JTAG接口电路如图4.10所示。

图4.9 最小系统时钟电路

图4.10 JTAG接口电路

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈