登录/注册

STM32 引脚的复用

STM32 引脚的复用

更多

STM32 引脚的复用(Multiplexing)是指一个物理引脚可以被配置为多种不同功能的能力。这是STM32微控制器(MCU)非常核心和强大的特性。

以下是其关键点的详细解释:

  1. 为什么需要复用?

    • 引脚资源有限: MCU 的物理引脚数量是有限的。
    • 功能需求多样: STM32 内部集成了大量外设(Peripherals),如 UART, SPI, I2C, ADC, DAC, TIMER, USB, CAN, ETH, SDIO 等。每个外设都需要通过引脚与外部器件通信。
    • 解决矛盾: 复用允许多个内部功能模块“共享”同一个物理引脚。你需要哪个功能时,就将该引脚配置为那个功能。这样就极大地提高了有限引脚资源的利用率,使 STM32 能够在较小封装尺寸内集成极其丰富的外设。
  2. 复用的两种主要类型:

    • GPIO 功能: 这是最基本的功能,引脚可以被配置为:
      • 数字输入: 读取外部高低电平。
      • 数字输出: 驱动外部电路高低电平(推挽、开漏模式)。
      • 模拟输入: 连接 ADC 进行模拟信号采集。
      • 模拟输出: 连接 DAC 输出模拟电压。
    • 复用功能: 当引脚被连接到某个内置外设的输入/输出通道时,它就处于复用功能模式。此时引脚的功能由它所连接的那个外设决定:
      • 复用输出: 引脚作为某个外设的输出信号(如 UART_TX, SPI_MOSI, TIM_CH1)。
      • 复用输入: 引脚作为某个外设的输入信号(如 UART_RX, SPI_MISO, TIM_CH2)。
      • 双向复用: 某些功能(如 I2C_SDA/SCL)在同一引脚上既是输入又是输出。
  3. 如何实现复用?

    • 复用功能寄存器: 对于每个 GPIO 引脚(或引脚组),STM32 都有专门的 复用功能寄存器。通过设置这些寄存器,你可以选择该引脚当前连接到哪个内置外设的信号线上。(在 STM32 参考手册中,通常称为 GPIOx_AFRLGPIOx_AFRH 寄存器)。
    • GPIO 配置: 选择复用功能后,你还需要通过 GPIO 模式寄存器 将该引脚配置成正确的模式:
      • 对于复用输出功能(如 UART_TX, SPI_MOSI):通常配置为 复用推挽输出
      • 对于复用输入功能(如 UART_RX, SPI_MISO):通常配置为 浮空输入、上拉输入或下拉输入(具体取决于外设要求和外部电路)。
      • 对于双向通信(如 I2C):通常配置为 复用开漏输出(同时具备输入能力)。
      • 模拟功能(ADC/DAC)通常配置为 模拟模式
    • 外设时钟使能: 最关键的一步!在使用任何外设(包括其复用引脚功能)之前,必须通过 RCC(复位和时钟控制)模块使能对应的 GPIO 时钟外设时钟。时钟没开,配置了也不会工作。
  4. 如何知道哪个引脚支持哪些复用功能?

    • 芯片数据手册: 这是最重要的文档。在数据手册的引脚描述表(Pin definitions)章节,通常会有一个表格列出每个引脚支持的所有功能:
      • 主功能: 通常是默认的GPIO功能。
      • 复用功能: 标为 AF0, AF1, AF2, ... AF15。每个 AF 编号对应一个或一组特定的外设功能。
    • 芯片参考手册: 在参考手册的 GPIO 章节或外设章节,会详细说明 AF0 - AF15 分别代表哪些具体的外设信号。
    • CubeMX 工具: ST 官方的图形化配置工具 STM32CubeMX 会自动显示每个引脚可用的功能(包括GPIO和所有复用功能),并帮助你进行配置和生成初始化代码,极大简化了复用配置过程。
  5. 总结与关键概念:

    • 物理引脚 是硬件上实实在在的焊盘或管脚。
    • 功能 是引脚当前扮演的角色(GPIO输入/输出、UART_TX、SPI_SCK、ADC输入等)。
    • 复用 就是通过软件配置,让同一个物理引脚在不同的时刻或场景下,承担不同的功能。
    • 配置步骤:
      1. 使能 所用 GPIO 端口和外设的时钟 (RCC)。
      2. 配置 GPIO 的模式、速度、上/下拉(通过 GPIOx_MODER, GPIOx_OTYPER, GPIOx_OSPEEDR, GPIOx_PUPDR 寄存器)。
      3. 选择 具体的复用功能编号 AFx(通过 GPIOx_AFRLGPIOx_AFRH 寄存器)。
      4. 初始化使能 目标外设本身(例如配置 UART 的波特率并开启 UART)。
    • 复用功能模式的选择 (AFx)GPIO 模式的选择(输入/输出/模拟/复用模式)两个独立但必须同时正确配置的步骤。

简单来说:STM32 引脚的复用,就是通过配置内部的电子开关矩阵,让一个物理引脚在某一时刻只连接到某个特定内置外设的信号线上,从而让该引脚服务于那个外设的功能。你需要告诉芯片:1)这个引脚现在要当什么用(AFx),2)这个用法需要引脚怎么接(GPIO模式)。

希望这个详细的中文解释能帮助你理解 STM32 引脚复用的概念和工作原理!

STM32L433VCT6 LCD复用引脚如何分配?

背景:使用STM32L433VCT6驱动段码屏,33个段,其中用到一个PC10引脚,使用STM32CubeMX配置,只配置了LCD

2025-06-20 08:26:33

STM32F4xx与STM32F1xx引脚复用差异

STM32F4xx与STM32F1xx引脚复用差异该BUG的描述及解决采

2022-01-20 07:59:27

AM6254-gpio接口-gpio复用及M核引脚的使用

AM6254-gpio接口-gpio复用及M核引脚的使用

资料下载 内个老胡 2022-10-09 09:14:28

STM32学习笔记--端口复用&重映射

目录:一、端口复用二、端口重映射一、端口复用  STM32 有很多的内置外设,这些外设的外部

资料下载 h1654155957.9921 2021-12-28 19:35:35

IO引脚复用与映射

寄存器,将IO链接到所需的AFx。端口复用STM32有很多内置外设,他们的外部引脚都与GPIO

资料下载 佚名 2021-11-26 17:06:11

MCU学习笔记_IO引脚复用和映射

MCU学习笔记IO引脚复用和映射1. 端口复用2. 端口复用配置过程1.

资料下载 王强 2021-10-26 09:51:03

谈谈STM32Fxx系列单片机引脚复用功能资料下载

电子发烧友网为你提供谈谈STM32Fxx系列单片机引脚的复用功能资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资

资料下载 370217 2021-04-13 08:46:54

浅析IO引脚复用和映射

MCU学习笔记IO引脚复用和映射1. 端口复用2. 端口复用配置过程1.

2021-11-01 09:19:03

STM32 | STM32复用时钟何时开启?精选资料推荐

STM32的AFIO时钟真的是在开启引脚复用功能的时候开启吗?其实并不是~什么是复用

2021-08-19 06:09:20

STM32的PA.8引脚具有复用功能

STM32的PA.8引脚具有复用功能——时钟输出(MCO), 该功能能将STM32

2021-08-18 06:16:56

STM32的PA.8引脚具有复用功能

STM32的PA.8引脚具有复用功能——时钟输出(MCO), 该功能能将STM32

2021-08-13 06:22:33

STM32的PA.8引脚具有复用功能

STM32的PA.8引脚具有复用功能——时钟输出(MCO), 该功能能将STM32

2021-08-12 07:24:36

一文详解STM32端口复用及映射

STM32有很多的内置外设,这些外设的外部引脚都是与GPIO复用的。也就是说,一个GPIO如果可以

2020-09-23 11:02:11

STM32复用时钟的开启时间

STM32的AFIO时钟真的是在开启引脚复用功能的时候开启吗?其实并不是~

2020-04-04 17:22:00

7天热门专题 换一换
相关标签