STM32引脚功能定义全解析:串口、PWM、ADC、IIC与SPI

一.前言

在嵌入式系统开发中,STM32系列微控制器因其高性能、低功耗和丰富的外设资源而备受青睐。对于STM32开发者而言,深入理解其各个外设的引脚分配是设计高效、可靠硬件系统的关键一步。本博客旨在详细梳理STM32系列微控制器中常见的几种外设(包括串口、PWM、ADC、IIC和SPI)的引脚对应关系,帮助开发者快速定位所需功能对应的引脚,从而加速项目开发进程。

二.写这篇博客原因

1.每次用到下面那些外设总记不住引脚需要查,太麻烦了,所以打算总结下来,以供自己随时翻阅

2. 我常用的也就STM32F103C8T6和ZET6所以就总结了一下这两个的外设引脚对应

可以加快你的开发进度,建议收藏起来
如果觉得这篇文章对您有所帮助,请点赞关注,您的支持是我坚持的动力

墨小羽ovo个人主页

三.STM32 串口对应哪些引脚

3.1 USART1:

TX:PA9

RX:PA10

3.2 USART2:

TX:PA2

RX:PA3

3.3 USART3

TX:PB10

RX:PB11

3.4 UART4

TX(发送):PC10

RX(接收):PC11

3.5 UART5

TX(发送):PC12

RX(接收):PD2

3.6 表格总结

串口TXRX
USART1PA9PA10
USART2PA2PA3
USART3PB10PB11
UART4PC10PC11
UART5PC12PD2

3.7 总结

(1) 3.1-3.3是通用同步/异步串行接口USART

(2) 3.4,3.5是通用异步串行接口UART

(3)STM32F103C8T6只有串口1-串口3中断,### (4)STM32ZET6有串口1-串口5所有中断

(5)USART1分布在APB2上(RCC_APB2Periph_USART1)

(5)USART2,UASRT3,UART4,UART5 分布在APB1上(RCC_APB1Periph_USART?)

四.STM32的PWM对应哪些引脚(暂时不考虑重映射的)

STM32除了基本定时器TIM6和TIM7之外其他引脚都有PWM输出的功能

4.1 TIM1

通道号引脚备注
TIM1_CH1PA8该引脚可配置为TIM1的第1个PWM输出通道
TIM1_CH2PA9该引脚可配置为TIM1的第2个PWM输出通道
TIM1_CH3PA10该引脚可配置为TIM1的第3个PWM输出通道
TIM1_CH4PA11该引脚可配置为TIM1的第4个PWM输出通道

4.2 TIM2

通道号引脚备注
TIM2_CH1PA0该引脚可配置为TIM2的第1个PWM输出通道
TIM2_CH2PA1该引脚可配置为TIM2的第2个PWM输出通道
TIM2_CH3PA2该引脚可配置为TIM2的第3个PWM输出通道(注意:并非所有STM32F103型号都支持TIM2_CH3作为PWM输出,这取决于具体的引脚复用映射)
TIM2_CH4PA3该引脚在某些STM32型号上可能不可用作为TIM2的PWM输出,因为它可能被其他功能复用。然而,在支持的情况下,它可以配置为TIM2的第4个PWM输出通道

4.3 TIM3

通道号引脚备注
TIM3_CH1PA6该引脚可配置为TIM3的第1个PWM输出通道
TIM3_CH2PA7该引脚可配置为TIM3的第2个PWM输出通道
TIM3_CH3PB0该引脚可配置为TIM3的第3个PWM输出通道
TIM3_CH4PB1该引脚它可以配置为TIM3的第4个PWM输出通道

4.4 TIM4

通道号引脚备注
TIM4_CH1PB6该引脚可配置为TIM4的第1个PWM输出通道
TIM4_CH2PB7该引脚可配置为TIM4的第2个PWM输出通道
TIM4_CH3PB8该引脚可配置为TIM4的第3个PWM输出通道
TIM4_CH4PB9该引脚它可以配置为TIM4的第4个PWM输出通道

4.5 TIM5

一般不用TIM5,需要重映射才可以,所以暂不考虑

通道号引脚备注
TIM5_CH1PA0引脚可通过配置用于TIM5的PWM输出(注意:这通常不是直接支持的,仅为示例)
TIM5_CH2PA1引脚可通过配置用于TIM5的PWM输出(注意:这通常不是直接支持的,仅为示例)
TIM5_CH3PA2引脚可通过配置用于TIM5的PWM输出(注意:这通常不是直接支持的,仅为示例)
TIM5_CH4PA3引脚可通过配置用于TIM5的PWM输出(注意:这通常不是直接支持的,仅为示例)

4.6 TIM6和TIM7

基本定时器没有PWM功能

4.7 总结

1. TIM1挂载在APB2总线上
2.TIM2-TIM7挂载在APB1总线上
3.STM32F103C8T6有四个定时器.一个高级定时器TIM1,三个通用定时器TIM2-TIM4
4.TM32F103ZET6有八个定时器.两个高级定时器TIM1,TIM8 四个通用定时器TIM2-TIM5

五.STM32的ADC对应哪些引脚

5.1 ADC1和ADC2

ADC通道通用引脚标识特定型号引脚(以STM32F103ZET6为例)
IN0PA0ADC12_IN0
IN1PA1ADC12_IN1
IN2PA2ADC12_IN2
IN3PA3ADC12_IN3
IN4PA4ADC12_IN4
IN5PA5ADC12_IN5
IN6PA6ADC12_IN6
IN7PA7ADC12_IN7
TIN8PB0ADC12_IN8
IN9PB1ADC12_IN9
IN10PC0ADC12_IN10
IN11PC1ADC12_IN11
IN12PC2ADC12_IN12
IN13PC3ADC12_IN13
IN14PC4ADC12_IN14
IN15PC5ADC12_IN15
IN16温度传感器
IN17内部参考电压

5.2 ADC3

ADC通道通用引脚标识特定型号引脚(以STM32F103ZET6为例)
IN0PA0ADC3_IN0
IN1PA1ADC3_IN1
IN2PA2ADC3_IN2
IN3PA3ADC3_IN3
IN4PF6ADC3_IN4
IN5PF7ADC3_IN5
IN6PF8ADC3_IN6
IN7PF9ADC3_IN7
IN8PF10ADC3_IN8
IN9
IN10PC0ADC3_IN10
IN11PC1ADC3_IN11
IN12PC2ADC3_IN12
IN13PC3ADC3_IN13
IN14
IN15
IN16
IN17

5.3 ADC总结

1.STM32F103C8T6没有ADC3,只有ADC12

STM32F103 ZET6有ADC1,ADC2,ADC3

2.ADC1和ADC2挂载在APB2总线上

六.STM32的IIC对应哪些引脚

一般有软件IIC和硬件IIC,软件IIC引脚不固定,这里以硬件IIC为例子

6.1 表格引脚对应关系

IICSCLSDA
IIC1PB8PB9
IIC2PB10PB11

6.2 总结

1.STM32F103C8T6和STM32F103ZET6都是只有两个IIC

2.I2C1和I2C2都是APB1总线上

七.STM32的SPI对应哪些引脚

7.1表格引脚对应关系

SPISCLMOSIMISOCS
SPI1PA5PA7PA6PA4
SPI2PB13PB15PB14PB12
SPI3PB3PB5PB4PA15

7.1 SPI总结

1.STM32F103C8T6只有两个SPI

2.STM32F103ZET6有三个SPI

3.SPI1挂载在APB2总线上

4.SPI2和SPI3挂载在APB1总线上

八.参考资料

【STM32F103ZET6开发板】第2-12-2讲:通用定时器和高级定时器

九.总结

本博客详细介绍了STM32F103系列微控制器中几个关键外设通信接口(USART/UART、PWM、ADC、IIC、SPI)及其对应的引脚分配情况,特别以STM32F103ZET6和STM32F103C8T6两款型号为例进行了详细说明.最后呢,在编写博客的过程中,我尽量保持内容的准确性和完整性,但也难免会有疏漏或错误之处。欢迎各位读者指出其中的问题,帮助我不断进步。谢谢大家的阅读,希望这篇博客能够帮助到大家。点点关注,不迷路哦!
墨小羽ovo个人主页

  • 13
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

墨小羽ovo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值