STM32电路设计之最小系统(F1)
1 前言
1.1 最小系统
1.2 参考资料
参考手册:STM32F101_02_03_05_07英文参考手册(版本:20,更新时间:2018年12月)
数据手册:STM32F103xC_xD_xE英文数据手册(版本:13,更新时间:2018年07月)
资料下载方法:
1.官网下载:ST官网或ST中文官网
2.云盘下载:https://pan.baidu.com/s/1vkgEjgaHrGUb3fBh7cBL-A (提取码:5g5c )
2 设计过程
2.1 供电电路设计
参考数据手册第5.1.6节:
从上图的供电方案分析,芯片供电主要分为备份区域、内核区域和模拟区域三个供电部分,我们来逐一分析一下。
2.1.1 备份区域供电
备份区域的供电主要通过 VBAT 管脚和内部 VDD 实现,供电部分主要包括LSE振荡器(OSC32K)、RTC、Wake-up电路、备份寄存器和 PC13-15 管脚。
备份区域通过一个内部电源模拟开关(可看作一个单刀双掷开关)分别连接到VBAT和 VDD 。
若用电池或其他可用电源连接到VBAT引脚上,当 VDD 断电时,电源模拟开关切换到VBAT供电,可以保存备份寄存器的内容和维持RTC及其它备份外设的正常工作;当 VDD 供电时,电源模拟开关切换到 VDD 供电来维持备份区域正常工作。
若在应用中VBAT引脚没有连接外部电池或电源,建议将VBAT连接到 VDD 同时连接一个100nF的陶瓷滤波电容。
电源符号 | 描述 | 最小值 | 典型值 | 最大值 | 单位 |
---|---|---|---|---|---|
VBAT | 备份区域供电电压 | 1.8 | 3.0 | 3.6 | V |
注意:模拟开关可通过的最大电流为 3mA,即备份区域最大的供电电流为 3mA。PC13-15管脚不得作电流源型驱动,如驱动LED,否则备份区域有可能工作不正常。
2.1.2 核心区域供电
核心区域的供电由VDDx引脚和VSSx引脚实现。供电部分主要包括CPU、存储器、内部数字外设、待机电路(Wake-up逻辑,IWDG)和I/O电路。
- 当ADC或DAC不使用时,VDD 供电电压为2.0V ~ 3.6V;当ADC或DAC使用时,VDD 供电电压为2.4V ~ 3.3V。
- VDD 给I/O电路和待机电路供电。同时通过内部电压调节器将 VDD 转成 1.8V 给CPU、存储器和内部数字外设供电。
电源符号 | 描述 | 最小值 | 典型值 | 最大值 | 单位 |
---|---|---|---|---|---|
VDD(不使用ADC) | 标准工作电压 | 2.0 | 3.3 | 3.6 | V |
VDD( 使用ADC) | 标准工作电压 | 2.4 | 3.3 | 3.6 | V |
VSS | 标准工作电压参考地 | - | 0 | - | V |
2.1.3 模拟区域供电
模拟区域的供电由 VDDA 引脚和 VSSA 引脚实现。供电部分主要包括RESET电路、内部RC振荡器和PLL、以及ADC&DAC。VREF- 和 VREF+ 引脚为ADC和DAC提供模拟参考地和参考电压。
- 如果模拟电路部分未供电,MCU将不能正常启动,因为RESET电路及PLL不能工作。
- VSSA 电压必须与 VSS 相同;VDDA 电压必须与 VDD 相同,其两者电压差不得超过300mV,推荐 VDD 与 VDDA 使用同一电源供电。
- 当ADC或DAC不使用时,VDDA 供电电压为2.0V ~ 3.6V;当ADC或DAC使用时,VDDA 供电电压为2.4V ~ 3.3V。
- 若芯片有 VREF- 引脚,必须和 VSSA 相连;若芯片没有 VREF- 引脚,则 VREF- 在内部已和 VSSA 连接。
- VREF+ 引脚推荐与 VDDA 连接,若 VREF+ 不与 VDDA 连接,其电压为2.4V ~ VDDA,不得超过 VDDA。
模拟电路供电要求归纳为下表:
电源符号 | 描述 | 最小值 | 典型值 | 最大值 | 单位 |
---|---|---|---|---|---|
VSSA | 模拟部分工作电压参考地(必须与 VSS 相同) | - | VSS | - | V |
VDDA(不使用ADC) | 模拟部分工作电压(必须与 VDD 相同) | 2.0 | VDD | 3.6 | V |
VDDA( 使用ADC) | 模拟部分工作电压(必须与 VDD 相同) | 2.4 | VDD | 3.6 | V |
VREF- | 模拟部分负参考电压(必须与 VSSA 相连) | - | VSSA | - | V |
VREF+ | 模拟部分正参考电压(推荐与 VDDA 相同) | 2.4 | VDDA | VDDA | V |
2.2 复位电路设计
参考数据手册第5.3.15节:
NRST引脚输入驱动采用了CMOS工艺,它连接了一个不可断开的 40kΩ 弱上拉电阻 RPU;这个上拉电阻是由一个真正的电阻串联一个可开关的PMOS实现的。(PMOS开关电阻很小,约占10%)
- 图47中的外部复位电路(复位开关并联一个0.1μF电容)是为了避免寄生复位。由于芯片内部集成了不可断开的若上拉电阻,所以我们设计外部复位电路的时候,无需外部上拉电阻;若MCU无需外部复位,则可省略外部复位按键,只需接上外部电容即可。
- 设计者要想MCU成功复位,必须保证NRST引脚的电位能够低于表49中的 VIL(NRST) 最大值 0.8V。
2.3 时钟电路设计
参考数据手册第2.1节(图2 时钟树):
从时钟树上可以看出,高速时钟可以由外部高速时钟HSE和内部高速时钟HSI提供;低速时钟可以由外部低速时钟LSE和内部低速时钟LSI提供。
2.3.1 高速外部时钟-晶体振荡器
参考数据手册第5.3.6节 High-speed external clock generated from a crystal/ceramic resonator
- 高速外部时钟支持4-16MHz的晶振。
- 芯片内部自带RF= 200kΩ的反馈电阻,外部无需再设计反馈电阻。
- REXT的值取决于晶振的设计参数。
- CL1和CL2的值取决于晶振的参数(并不一定是5pF~25pF的经验值,必须根据设计需求和晶振的具体设计参数确定,还需要考虑MCU引脚与晶振引脚之间的容抗)。
2.3.2 低速外部时钟-晶体振荡器
参考数据手册第5.3.6节 Low-speed external clock generated from a crystal/ceramic resonator
- 低速外部时钟支持32.768KHz的晶振。
- 芯片内部自带RF= 5MΩ的反馈电阻,外部无需再设计反馈电阻。
- CL1和CL2的值取决于晶振的参数(并不一定是5pF~15pF的经验值,必须根据设计需求和晶振的具体设计参数确定,还需要考虑MCU引脚与晶振引脚之间的容抗)。
2.3.3 高速外部时钟-时钟源
参考数据手册第5.3.6节 High-speed external user clock generated from an external source
- 高速外部时钟支持**1~25MHz(典型8MHz)**的时钟源。
- 接外部时钟源时,只需将外部时钟源接入OSC_IN管脚,OSC_OUT悬空。
- 在使用外部时钟源作为MCU低速输入时钟时,需将MCU由晶体模式配置成旁路模式,具体操作请看参考手册或编程手册。
2.3.4 低速外部时钟-时钟源
参考数据手册第5.3.6节 Low-speed external user clock generated from an external source
- 低速外部时钟支持**最大1000KHz(典型32.768KHz)**的时钟源。
- 接外部时钟源时,只需将外部时钟源接入OSC32_IN管脚,OSC_OUT悬空。
- 在使用外部时钟源作为MCU低速输入时钟时,需将MCU由晶体模式配置成旁路模式,具体操作请看参考手册或编程手册。
2.4 下载电路设计
查看参考手册第31.4.1节 SWJ debug port pins
查看参考手册第31.4.3节 Internal pull-up and pull-down on JTAG pins
管脚名称 | 描述 | 状态 | 管脚 |
---|---|---|---|
JTMS / SWDIO | JTAG模式选择 / SW数据输入输出 | 内部上拉 | PA13 |
JTCK / SWCLK | JTAG时钟 / SW时钟 | 内部下拉 | PA14 |
JTDI | JTAG数据输入 | 内部上拉 | PA15 |
JTDO | JTAG数据输出 | 内部上拉 | PB3 |
NJTRST | JTAG复位 | 内部上拉 | PB4 |
3 典型电路
3.1 电源设计
3.2 复位设计
3.3 时钟设计
4 结束
本教程由 Brendon Tan 原创发布,版权所有。该文档仅供个人学习交流使用,不得用于其他用途, 禁止商用, 转载或公开使用请联系作者授权。
此教程由本人独立整理,如有不当之处,欢迎指正。