登录/注册

stm32f103rct6外部中断引脚

stm32f103rct6外部中断引脚

更多

好的,关于 STM32F103RCT6 的外部中断引脚,需要理解以下关键点:

  1. 所有 GPIO 引脚都可用作外部中断源: STM32F103RCT6 的 所有通用输入/输出 (GPIO) 引脚(PA0-PA15, PB0-PB15, PC13-PC15, PD0-PD2, PE0-PE5 等,具体可用引脚请查阅数据手册的引脚定义表)都可以配置为外部中断的触发源。
  2. 外部中断线 (EXTI Line): STM32 使用一个称为 外部中断/事件控制器 (EXTI) 的模块来管理外部中断。EXTI 提供了 16 条中断/事件线(编号为 EXTI0 到 EXTI15)。
  3. 引脚与中断线的映射关系:
    • 每条 EXTI 线(EXTI0 到 EXTI15)不是固定对应某个特定的物理引脚(如 PA0)。
    • 每条 EXTI 线可以映射到多个 GPIO 端口上的同一个引脚编号
    • 例如:
      • EXTI0 可以映射到 PA0PB0PC0PD0PE0 等(只要该端口存在这个引脚号)。
      • EXTI1 可以映射到 PA1PB1PC1PD1PE1 等。
      • ... 以此类推,直到 EXTI15 可以映射到 PA15PB15PC15 等。
  4. 关键限制:同一时刻一条 EXTI 线只能连接一个引脚: 虽然一条 EXTI 线(如 EXTI0)可以连接到多个端口的 0 号引脚(PA0, PB0, PC0...),但在同一时间,你只能通过配置 AFIO (Alternate Function I/O) 寄存器 选择其中一个端口的 0 号引脚连接到 EXTI0 线。你不能同时让 PA0 和 PB0 都触发 EXTI0 中断。**
  5. 中断服务程序 (ISR):
    • EXTI0 到 EXTI4 各自有独立的中断向量(即各自有单独的中断服务函数入口)。
    • EXTI9_5:EXTI5、EXTI6、EXTI7、EXTI8、EXTI9 这 5 条线共享同一个中断向量 EXTI9_5_IRQHandler。在中断服务程序中,你需要检查 EXTI 的挂起寄存器 (PR) 来确定具体是哪一条线触发了中断。
    • EXTI15_10:EXTI10、EXTI11、EXTI12、EXTI13、EXTI14、EXTI15 这 6 条线共享同一个中断向量 EXTI15_10_IRQHandler。同样需要在中断服务程序中检查挂起寄存器来确定具体触发源。

总结:

简单来说:STM32F103RCT6 上几乎所有 GPIO 都能做外部中断,但你需要通过 AFIO 配置将具体哪个端口的哪个引脚(0-15号)连接到对应的 EXTI 线(0-15号),并且同一 EXTI 线不能同时被多个端口上的同号引脚占用。

使用步骤简述:

  1. 使能 GPIOx 和 AFIO 的时钟 (RCC_APB2PeriphClockCmd 设置 RCC_APB2Periph_GPIOx | RCC_APB2Periph_AFIO)。
  2. 配置 GPIO 引脚为输入模式(浮空、上拉或下拉)。
  3. 使用 GPIO_EXTILineConfig 函数(或直接操作 AFIO->EXTICR 寄存器)将特定引脚连接到所需的 EXTI 线(例如,将 PA0 连接到 EXTI0)。
  4. 初始化 EXTI 结构体 (EXTI_InitTypeDef),设置 EXTI 线、触发模式(上升沿/下降沿/双边沿)并启用中断模式。
  5. 调用 EXTI_Init 函数应用配置。
  6. 在 NVIC 中配置并启用对应的 EXTI 中断通道(EXTI0_IRQn, EXTI1_IRQn, ..., EXTI4_IRQn, EXTI9_5_IRQn, EXTI15_10_IRQn)。
  7. 编写对应的中断服务程序 (ISR),在 ISR 中清除对应的 EXTI 挂起标志位 (EXTI_ClearITPendingBit)。

请务必查阅 STM32F103RCT6 的官方数据手册 (Datasheet) 和参考手册 (Reference Manual),特别是:

STM32F103RCT6

1970-01-01 08:00:00 至 1970-01-01 08:00:00

stm32f103rct6

跪求详细解答,stm32f103rct6的电源为什么要这样接阿?

2022-04-23 16:41:56

如何利用stm32f103rct6去配置uart中断

如何利用stm32f103rct6去配置uart中断呢?有哪些配置步骤?

2022-02-17 06:43:00

STM32F103RCT6最小系统(高清PDF版)

STM32F103RCT6最小系统全(高清PDF版)免费下载。

资料下载 ah此生不换 2022-07-31 11:04:32

STM32F103RCT6的原理图

STM32F103RCT6的原理图免费下载。

资料下载 ah此生不换 2022-07-26 15:38:00

STM32F103rct6标准版的电路原理图

本文档的主要内容详细介绍的是STM32F103rct6标准版的电路原理图免费下载。

资料下载 ah此生不换 2022-03-21 14:56:02

STM32F103RCT6核心板-AD原理图

STM32F103RCT6核心板-AD原理图免费下载。

资料下载 jf_42320578 2021-05-21 11:19:46

STM32F103RCT6移植到STM32F103C8T6需要注意那些事项

本文档的主要内容详细介绍的是STM32F103RCT6移植到STM32F103C8T6需要注意那些事项。

资料下载 494465745 2019-11-15 08:00:00

浅析STM32F103RCT6引脚的功能及使用

STM32F103RCT6引脚的功能有哪些呢?怎样去使用STM32F103RCT6的引

2021-12-14 08:01:07

请问什么是STM32F103RCT6

请问什么是STM32F103RCT6?

2021-12-14 07:26:28

STM32F103RCT6有几个UART呢

STM32F103RCT6有几个UART呢?STM32F103RCT6的UART有何性能?

2021-12-13 07:37:22

详解STM32F103RCT6的定时器输入捕获以及定时器中断

STM32F103RCT6的定时器输入捕获该怎样去实现呢?如何去编写STM32F103RCT6的定时器中断函数呢?

2021-11-16 08:15:00

STM32F103RCT6是如何使用外部有源晶振的

STM32F103RCT6是如何使用外部有源晶振的?怎么查看HSE是否成功起振?

2021-10-19 10:28:37

STM32F103RCT6是什么

STM32F103RCT6:STM32F103RCT6是一种嵌入式-微控制器的集成电路(IC),32位 Cortex-M3内核处理器,速度是72MHz,程序存储器容量是256KB,程序存储器类型

2021-08-06 08:36:10

STM32F103RCT6是什么?STM32F103RCT6有哪些特性?

请问下STM32F103RCT6是什么?STM32F103RCT6有哪些特性?

2021-07-19 06:37:35
7天热门专题 换一换
相关标签