二、在STM32中的具体含义和关系
对于STM32这类现代MCU,VCC和VDD的用法非常明确:
1. VDD / VDDA
-
含义:I/O端口和外部外设的模拟电源。
-
功能:这是给芯片的GPIO引脚驱动电路、部分外部外设以及模拟-to-数字转换器 (ADC) 的供电电源。
-
电压范围:通常是 2.0V 至 3.6V。这决定了你的I/O引脚输出高电平时的电压(比如3.3V或5V,取决于你如何供电)。
-
重要性:VDD的电压就是你的GPIO逻辑电平。如果你用3.3V给VDD供电,那么你的引脚高电平就是3.3V,这与外部其他3.3V器件通信时电平匹配。
-
VDDA:这是VDD的“纯净”版本,专门为模拟电路(主要是ADC和DAC)供电。为了保证ADC的转换精度,通常建议通过一个磁珠或电感从VDD滤波后得到VDDA。在要求不高的场合,可以直接和VDD接在一起。
2. VCC / VSS
-
含义:内部核心数字电源。
-
功能:这是给芯片最核心的部分供电的,比如CPU、内存、数字外设等。
-
电压来源:你通常不会直接给VCC引脚连接一个电源。STM32内部有一个电压调节器(LDO),它接受来自
VDD
的电压(如3.3V),然后将其降低到一个更低的、稳定的电压(如1.2V或1.8V,具体取决于产品系列)来给核心供电。这个调节后的电压就是VCC。-
例如:你给芯片的
VDD
引脚接3.3V,内部稳压器会将其降到1.2V供给核心(VCC)。
-
-
VSS:这是接地端(GND)。
VDD
和VCC
的返回路径都是连接到VSS
。
三、实际应用和接线方法
这张图清晰地展示了你应该如何连接它们:
一个典型的STM32电源连接方案(以3.3V系统为例):
-
你的外部电源(比如USB或稳压芯片)产生一个3.3V的电压。
-
将这个3.3V直接连接到STM32的所有
VDD
和VDD_USB
等引脚。 -
将3.3V通过一个磁珠(Ferrite Bead) 和滤波电容(如100nF + 1uF)组成的滤波电路,生成一个干净的
VDDA
,连接到STM32的VDDA
引脚。 -
将所有
VSS
和VSSA
(模拟地)引脚连接到系统的地(GND)。 -
在
VDD
和VSS
之间靠近芯片的位置放置去耦电容(通常是100nF),每个电源引脚一对,为芯片提供瞬间的电流需求。 -
芯片会自动处理
VDD
到内部VCC
的转换,你无需操心。
总结
符号 | 全称 | 含义 | 电压(典型) | 连接 |
---|---|---|---|---|
VDD | Voltage Drain | I/O端口和外部外设的电源 | 2.0V - 3.6V | 直接接你的系统电源(如3.3V) |
VDDA | - | 模拟部分(ADC/DAC)的电源 | 同VDD | 从VDD滤波后得到 |
VCC | Voltage Common Collector | 内部核心逻辑的电源 | ~1.2V (内部产生) | 不用你接,由内部稳压器从VDD转换而来 |
VSS | Voltage Source | 数字地 | 0V | 接系统地(GND) |
VSSA | - | 模拟地 | 0V | 接系统地(GND) |
核心关系:
你从外部提供一个电源(比如3.3V)给 VDD,STM32芯片会利用这个电源同时做两件事:
-
直接用它来驱动GPIO引脚(VDD)。
-
在内部将它转换成一个更低的电压(VCC)来驱动核心CPU和内存。
所以,VDD是你从外部提供的“总电源”,而VCC是芯片内部自己生成的“核心电源”。