stm32库函数开发配置外部中断

news/2025/10/14 15:49:38/文章来源:https://www.cnblogs.com/pjzh/p/19141293

step1:开启时钟,包括gpio的时钟和afio的时钟,IO口的时钟和复用引脚的时钟都在rcc_apb2perphclockcmd(),也就是都在apb2总线外设上面。

step2: 定义需要用到的结构体变量,也就是使用gpio_inittypedef(通用io口),exti_inittypedef(外部中断),nvic_initydepef(嵌套中断)去定义需要的三个结构体变量,命名通常位gpio_initstructure;

step3:配置gpio口,也就是配置结构体变量的值,gpio配置为浮空输入模式,选择相应的引脚

step4:选择哪个引脚作为外部中断的输入源信号,使用模块函数为GPIO_EXTILineConfig(GPIO_PortSourceGPIOx, GPIO_PinSourcex)

step5:配置exti_inittypedef定义的结构体变量,1.配置选择哪个中断线来传递中断信号,例如pa0,pb0,pc0共用exti_line0,2.配置中断工作模式,中断模式,进入中断服务函数,事件模式,只 产生事件,不进入中断函数;3.配置中断的触发方式,上升沿,下降沿,双边沿触发;4.使能或者失能中断exti线

step6:根据中断的数量来选择优先级分组,函数模块为NVIC_PriorityGroupConfig(NVIC_PriorityGroup_x),x的取值在0~4,意思是分配x位抢占优先级,也就是2^x个优先级,4-x个响应优先级
抢占可以打断,响应无法打断中断

step7:配置nvic_inittypedef定义的结构变量,1.配置中断通道,配置nvic_irqchanne,2.配置抢占优先级和响应优先级,NVIC_IRQChannelPreemptionPriority(抢占优先级) ,NVIC_IRQChannelsuPriority(响应优先级) ,3.使能nvic

step8:写中断服务函数,根据中断向量表来写函数的名称,例如exti_line0,函数名为void EXTI0_IRQHandler(void) ,使用中断函数框架,进入先判断exti_linex是否被挂起,使用函数EXTI_GetITStatus(),是否为1,然后执行完函数后,需要把中断标志位清0,使用函数EXTI_ClearITPendingBit(EXTI_Linex)进行清楚标志位

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/936884.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2025 年污水处理设备厂家最新推荐!国内优质厂家综合实力排行榜,助力企业精准挑选高效环保处理设备

当前,环保政策日趋严格,各行业对污水处理设备的需求激增,但市场上设备质量、厂家实力差异显著,企业在选择时常面临 “选品难、辨优劣难” 的问题。部分厂家技术落后,设备处理效率低,难以满足最新排放标准;还有些…

Spring Boot 集成免费的 EdgeTTS 实现文本转语音

在需要文本转语音(TTS)的应用场景中(如语音助手、语音通知、内容播报等),Java生态缺少类似Python生态的Edge TTS 客户端库。不过没关系,现在可以通过 UnifiedTTS 提供的 API 来调用免费的 EdgeTTS 能力。同时,U…

分布式计数器平台完整解决方案

分布式计数器平台完整解决方案2025-10-14 15:41 tlnshuju 阅读(0) 评论(0) 收藏 举报pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !importan…

基于Golang+Gin+Gorm+Vue3母婴商城项目实战

/s/1SwwmWTljJHr_C8cu2Xz2Tw 提取码: 35bf 在当今飞速发展的电商领域,母婴垂直赛道以其用户粘性高、客单价高、复购率高等特点,始终占据着重要地位。开发一个能够应对高并发、数据关系复杂且用户体验要求极高的母婴商…

2025 年无缝钢管厂家推荐排行榜, SA333Gr.6 /SA106B/SA106C/A106B/SA210C/ 25MnG/SA53B/A53B /L245NS/P22 无缝钢管厂家推荐

无缝钢管作为工业制造、能源输送等领域的核心材料,其品质直接决定项目安全与运营效率。当前市场品牌繁杂,部分产品存在壁厚不均、材质不达标等问题,据相关调研,近三成企业因选错产品面临工程隐患。尤其在 GB/T9948…

英语_阅读_telescope_待读

You would see mountains and valleys if you looked at the Moon through a telescope. 如果你通过望远镜观察月球,你会看到山脉和山谷。 If you looked at the planet Jupiter, you would see its moons. 如果你观察…

fiddler早期免费版下载,fiddler抓包工具及使用

介绍Fiddler是一个http协议调试代理工具,它能够记录并检查所有你的电脑和互联网之间的http通讯,设置断点,查看所有的“进出”Fiddler的数据(指cookie,html,js,css等文件)。 Fiddler 要比其他的网络调试器要更加简…

零点城市社交电商卡密串码插件:全场景虚拟商品运营解决方案

一、概述总结 “零点城市社交电商卡密串码插件” 是由成都微连科技开发、基于微擎系统交付的微信小程序专用工具,专注于为社交电商场景下的虚拟商品运营提供全流程支持。作为官方正品应用,该插件不仅通过源码加密保障…

完整教程:Nginx 核心功能配置:访问控制、用户认证、HTTPS 与 URL 重写等

完整教程:Nginx 核心功能配置:访问控制、用户认证、HTTPS 与 URL 重写等pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-family…

宝塔计划任务root能正常运行,www用户不能按时运行

在大多数 Linux 系统中,cron服务是默认安装的,但如果你不确定是否安装了 cron,可以通过以下方法检查: ​​1. 检查 cron是否安装​​ ​​方法 1:检查 cron服务状态​​ systemctl status cron # Ubuntu/Debian s…

mysql 授权访问配置

mysql 授权访问配置1.进入mysql mysql -u root -p 输入密码进入 2.授权cmz账户仅允许本机服务器环境访问 输入CREATE USER cmz@localhost IDENTIFIED BY Gjkj@cmz@@; (说明,授权cmz账户localhost本地访问 密码Gjk…

介绍 Qodo(原 Codium):新名字,不变的质量承诺 - 公众号

本文已收录在Github,关注我,紧跟本系列专栏文章,咱们下篇再续!🚀 魔都架构师 | 全网30W技术追随者 🔧 大厂分布式系统/数据中台实战专家 🏆 主导交易系统百万级流量调优 & 车联网平台架构 🧠 AIGC应用…

mas激活工具安装教程!专业版激活工具!!Microsoft Activation Scripts v3.6 MAS中文汉化版(激活工具)

软件介绍 Microsoft Activation Scripts v3.6(MAS)是一款功能强大的 Microsoft 产品激活工具。MAS 是一个批处理版 KMS 激活脚本,代码开源,体积小巧,不会产生误报问题。它由 WindowsAddict 开发,它支持HWID/Ohoo…

英语_阅读_Lunar exploration_待读

Recently, remarkable progress has been made in Chinas manned lunar exploration mission. 最近,中国载人登月探索任务取得了显著进展。 The names of the manned lunar landing suit and lunar rover have been r…

HPC——MPI

HPC——MPIMPI(Message Passing Interface,消息传递接口)是并行计算领域广泛应用的一个标准化消息传递系统,它允许程序员在分布式内存系统(如计算机集群)上编写并行程序。简单来说,MPI提供了一套标准化的函数库…

中文语音识别不建议使用VOSK

40几MB的vosk-model-small-cn-0.3,识别率极低,识别速度极慢。 1.3GB的vosk-model-cn-0.22没试,想必速度不会更快。 网站上Models里只有vosk-model-small-cn-0.22,没有0.3 vosk-transcriber --list-models vosk-tra…

213123123123123

321312312312312312312312312

VSCode插件开发的注意点 - Erica

VSCode插件开发的注意点开发调试的时候是在这个地方添加向新打开的调试窗口的参数,但是经过实践发现并不能打开当前正在开发的文件夹。 通过使用"${workspaceFolder}/src",能成功的在新的调试窗口(或者叫…

时序数据库 IoTDB 集成 DataGrip,支撑跨模态多库融合管理

多源异构数据融合,轻松搭建跨库管理解决方案!物联网工业数据管理场景中,尽管时序数据占主要部分,但企业往往需要实现跨维度关联分析,多源异构数据的关联融合管理对数据库提出了更高要求。 国产原生时序数据库 IoT…

Sql Server安装报错“服务没有及时响应启动或控制请求”

最近由于电脑环境有问题重装了下电脑系统,重装系统后在安装sql server的时候,前面都没有问题 除了有个防火墙警告,看到“上面提示操作完成。已通过4。失败0。警告1。已跳过0”,警告警告呗,反正又不是失败,总体还…