STM32F103C8T6 是 STM32F1 系列中的一款基于 ARM Cortex-M3 内核的微控制器,具有丰富的外设和引脚功能。
我将把它的引脚分成不同类别来详细介绍。
1. 电源引脚
VDD (2.0V - 3.6V):供电引脚,为芯片的内核和外设供电。
VSS (GND):接地引脚。
VBAT:备用电源引脚,为实时时钟(RTC)和后备寄存器提供电源。当主电源断开时,仍然可以保持低功耗模式下的 RTC 运行。
VREF+ / VREF-:提供给 ADC 的参考电压输入,用于调节模数转换的参考电压,影响 ADC 转换精度。
2. 复位与调试引脚
NRST (Pin 7):复位引脚,低电平有效。通过外部复位按钮或电路,可以将 MCU 复位到初始状态。
SWDIO, SWCLK (Pin 19, 21):调试接口引脚,用于串行线调试(Serial Wire Debug,SWD),是调试和编程时使用的标准接口。STM32F103 通过这些引脚可以进行调试和在线编程。
3. 时钟引脚
OSC_IN, OSC_OUT (Pin 5, 6):外部晶振引脚,用于连接外部高速晶振(HSE),可以提高系统时钟精度,特别是在需要高精度外设时,如 USB、CAN 等。
LSE (32.768 kHz):低速外部时钟输入引脚,用于实时时钟(RTC)或者低功耗应用场景,允许 MCU 在低功耗模式下保持运行。
4. I/O 引脚功能
STM32F103C8T6 有 37 个通用 I/O 引脚,这些引脚可以通过寄存器配置为多种功能,具体如下:
GPIOA, GPIOB, GPIOC (Pin 1-4, 9-10, 15-16 等):通用输入/输出引脚,可以配置为输入或输出模式,支持多种模式(推挽输出、开漏输出、上拉输入、下拉输入等)。
引脚复用:很多引脚可以复用为其他外设功能(UART, SPI, I2C, PWM 等)。STM32 允许开发者通过引脚复用机制来最大化外设使用。
5. 通讯接口引脚
USART1_TX, USART1_RX (Pin 9, 10):UART1 的收发引脚,用于串行通信。USART 通常用于与 PC 或其他设备的串行通讯,UART1 支持高达 4.5 Mbit/s 的通信速率。
USART2_TX, USART2_RX (Pin 2, 3):第二个 UART 通道(位于 GPIOA),通常用作备用串行接口。
I2C1_SCL, I2C1_SDA (Pin 22, 23):用于 I²C 通信的时钟和数据引脚,I2C1 可用于与外部传感器、EEPROM 等设备进行低速通信。
SPI1_NSS, SPI1_SCK, SPI1_MISO, SPI1_MOSI (Pin 4, 5, 6, 7):SPI1 的主设备模式或从设备模式的通信引脚,用于高速传输数据,如与显示屏、ADC 或外部存储器通信。
CAN_RX, CAN_TX (Pin 11, 12):CAN 总线通信引脚,适用于汽车和工业通信等应用。CAN 总线具有很强的抗干扰性,适合在噪声环境中传输数据。
6. 定时器引脚
TIM1_CH1, TIM1_CH2, TIM1_CH3, TIM1_CH4 (Pin 8, 9, 10, 11):高级定时器 TIM1 的 PWM 输出引脚。高级定时器具有专用的死区时间控制和刹车功能,适用于电机控制和电源转换应用。
TIM2_CH1, TIM2_CH2, TIM2_CH3, TIM2_CH4 (Pin 15, 16, 17, 18):通用定时器 TIM2 的通道输出引脚,支持 PWM、输入捕获、输出比较等功能,常用于电机控制、信号测量或时间管理。
TIM3_CH1, TIM3_CH2 (Pin 6, 7):通用定时器 TIM3 的通道输出引脚,也支持 PWM 等功能。
7. 模拟外设引脚
ADC_IN0 – ADC_IN15 (Pin 1-16, 29-32):这些引脚对应着芯片内部的 12 位 ADC 通道输入,可以采集外部传感器或电压信号,实现模数转换。其支持的输入电压范围由 VREF+ 和 VREF- 定义。
8. 专用功能引脚
BOOT0 (Pin 44):用于选择启动模式。通过设置引脚状态,可以从 Flash、SRAM 或者系统内存启动。这个功能在固件更新时非常有用,例如在系统存储器中可以运行 ROM Bootloader 来实现 UART、USB 等方式的编程。
NRST (Pin 7):硬件复位引脚,通常用于手动复位 MCU,当系统进入异常状态时可以强制复位。
9. 特殊外设引脚
USB D+, USB D- (Pin 23, 24):用于 USB 设备通信的差分数据引脚,STM32F103 具备 USB 2.0 全速设备功能。
它可以作为 USB 设备与 PC 进行通信,如虚拟串口或 USB HID 设备。
10. 高级功能引脚
DAC (Not available in this model):尽管 STM32F103C8T6 不带有 DAC(数模转换器),但在一些更高端的 STM32 系列中,特定引脚用于 DAC 输出。