当前位置: 首页 > news >正文

EXTI代码部分

EXTI代码部分

一. 简介

  • 对应的EXTIx只能有一个对应的引脚去映射, 如在EXTI1上只能接受PA1.PB1.PC1.PD1.PE1中的其中一个
  • 对应初始化通道应与引脚编号相同

二. 常用库函数

void GPIO_EXTILineConfig(uint8_t GPIO_PortSource, uint8_t GPIO_PinSource);
void EXTI_Init(EXTI_InitTypeDef* EXTI_InitStruct);
FlagStatus EXTI_GetFlagStatus(uint32_t EXTI_Line); //获取中断置位状态
void EXTI_ClearFlag(uint32_t EXTI_Line);
void NVIC_Init(NVIC_InitTypeDef);

三. 初始化

EXTI_InitTypeDef EXTI_InitStructure; /* 创建外部中断结构体 */ NVIC_InitTypeDef NVIC_InitStructure; /* 创建中断向量结构体 */ RCC_APB2PeriphClockCmd(RCC_APB2Periph_AFIO, ENABLE); /* 开启复用时钟 */ GPIO_EXTILineConfig(GPIO_PortSourceGPIOA, GPIO_PinSource0); /* 选择引脚 */ /* 给结构体赋值 */ EXTI_InitStructure.EXTI_Line =EXTI_Line0; /* 对应中断线路 */ EXTI_InitStructure.EXTI_Mode = EXTI_Mode_Interrupt; /* 模式 */ EXTI_InitStructure.EXTI_Trigger = EXTI_Trigger_Falling; /* 触发 */ EXTI_InitStructure.EXTI_LineCmd = ENABLE; /* 使能中断 */ EXTI_Init(&EXTI_InitStructure); /* 调用初始化函数 */ /* 中断向量结构体赋值 */ NVIC_InitStructure.NVIC_IRQChannel =EXTI0_IRQn; /* 对应中断请求 */ NVIC_InitStructure.NVIC_IRQChannelPreemptionPriority = 1; /* 抢占优先级 */ NVIC_InitStructure.NVIC_IRQChannelSubPriority = 2; /* 相应优先级 */ NVIC_InitStructure.NVIC_IRQChannelCmd = ENABLE; /* 使能 */ NVIC_Init(&NVIC_InitStructure); /* 调用初始化函数 */
  • 模式可选择
    • EXTI_Mode_Interrupt //中断模式
    • EXTI_Mode_Event //事件模式
  • 触发可选
    • EXTI_Trigger_Falling //下降沿触发
    • EXTI_Trigger_Rising //上升沿触发
    • EXTI_Trigger_Rising_Falling //跳变沿触发

四. 函数用法

五. 中断函数

void EXTI0_IRQHandler(void) __attribute__((interrupt("WCH-Interrupt-fast"))); /* 声明 */ void EXTI0_IRQHandler(void){ if(EXTI_GetFlagStatus(EXTI_Line0) != RESET){ GPIO_WriteBit(GPIOC, GPIO_Pin_0, !GPIO_ReadOutputDataBit(GPIOC, GPIO_Pin_0)); } EXTI_ClearITPendingBit(EXTI_Line0); /* 清除标志位 */ }
http://www.jsqmd.com/news/510491/

相关文章:

  • 在 ArkTS 中,Promise 的使用比 TypeScript 更严格(必须显式指定泛型类型)
  • 2026年比较好的分散乳化泵品牌推荐:均质乳化泵/多级乳化泵/磷酸铁锂均质乳化泵实力厂家是谁 - 品牌宣传支持者
  • 2026年质量好的耐摔滚塑航空箱厂家推荐:防摔滚塑航空箱/空投滚塑航空箱/耐高低温滚塑航空箱值得买的厂家 - 品牌宣传支持者
  • 开箱即用!深度学习训练环境镜像部署与模型训练实战教程
  • 2026年6月PMP考试,真的是“末班车”了,马上第八版教材更新!
  • 精选优质2026江苏/浙江混凝土化粪池源头厂家推荐:无锡鸿瀚建材 - 栗子测评
  • OpenClaw安全指南:GLM-4.7-Flash本地化部署的权限控制
  • 腾讯版的WorkBuddy接入微信指南,用微信遥控电脑AI干活
  • 2026年比较好的南通智能清便护理设备厂家推荐:南通大小便失禁护理设备厂家热卖产品推荐(近期) - 品牌宣传支持者
  • 2026年知名的管链输送机设备厂家推荐:山东垂直管链输送机/山东粉末管链输送机厂家热销推荐 - 品牌宣传支持者
  • 工业数字化服务商:重塑制造生态的隐形推手
  • 人工智能论文助手测评:9款工具显著缩短研究周期
  • 计算机的数字表示-无符号数与补码
  • Qwen-Image作品分享:基于RTX4090D的Qwen-VL在无障碍阅读设备中的落地成果
  • Ostrakon-VL-8B快速入门:3分钟搭建视觉理解系统,支持单图多图分析
  • 【How Far Are We From AGI】4 AGI的“生理系统“——从算法架构到算力基座的工程革命
  • Rodrigues旋转矩阵推导
  • UG CAM API 获取、设置切削层中的切削方式类型方法,如设置仅底面、恒定、临界深度的类型
  • 2026年热门的智能护理床品牌推荐:南通智能护理床/南通多功能护理床厂家汇总与采购指南 - 品牌宣传支持者
  • Eclipse 常用功能
  • Qwen3-32B-Chat效果展示:金融研报关键数据抽取+可视化图表建议生成
  • 2026年快速拿证的驾校品牌推荐:威海摩托车驾校学员推荐 - 品牌宣传支持者
  • Android滚动选择器架构深度解析:WheelPicker的技术实现与设计哲学
  • openclaw优化Token消耗攻略
  • 二进制消息保护技术:RevokeMsgPatcher的原理与应用
  • 如何快速上手 Uppload:零后端图片上传与编辑神器完全指南
  • 2026年质量好的无尘拆包机厂家推荐:吨袋拆包机/吨袋拆包机设备/自动吨袋拆包机高评价厂家推荐 - 品牌宣传支持者
  • LoRA训练助手从零开始:Qwen3-32B模型适配与Gradio界面调优指南
  • 西门子PLC S1500新能源Pack线程序集成(含触摸屏与梯形图FB应用)学习范例
  • Qwen3-ASR-1.7B性能实测:10秒处理5小时音频的黑科技