0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

stm32 HAL库开发-EXTI外部中断编程

冬至子 来源:Vulcan Matrix 作者:Vulcan 2023-10-26 15:46 次阅读

1

编写流程

如下图所示,作用于外部IO口的信号,实际上经过三个部分进入NVIC控制器:GPIO、EXTI控制器、NVIC控制器。

图片

我们在程序配置中也需要对这三个部分依次设置。

图片

2

外部中断实验

实验设计

Nuelco-F091RC开发板的PA10引脚配置上拉电阻并配置下降沿中断,PA10外接一按键用于接地触发中断。

开发板PB3引脚配置为推挽输出并外接LED灯泡,外部中断服务函数将PB3引脚电平翻转从而控制LED亮灭。

图片

实验程序

宏定义LED和按键的引脚和端口

图片

声明并定义两个部分的初始化函数[动画表情]

图片

一定要记得开时钟,这是Stm32与AVR非常不一样的地方,

KEY_EXTI_Init()函数中最后要配置NVIC以使中断被响应。

图片

在main函数中调用两个初始化函数。

图片

在stm32f0xx_it.h文件中声明中断服务函数

图片

在stm32f0xx_it.c文件中定义中断服务函数,一定别忘了清中断标志,否则程序会反复进入中断。

图片

最后在main.c中写入回调函数内容

图片

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    112

    文章

    15239

    浏览量

    171244
  • STM32
    +关注

    关注

    2240

    文章

    10675

    浏览量

    348868
  • GPIO
    +关注

    关注

    16

    文章

    1137

    浏览量

    50601
  • 外部中断
    +关注

    关注

    1

    文章

    131

    浏览量

    15602
  • HAL库
    +关注

    关注

    1

    文章

    112

    浏览量

    5894
收藏 人收藏

    评论

    相关推荐

    stm32hal外部中断巨坑

    stm32hal外部中断巨坑,如果使用按键外部中断会导致频繁触发
    发表于 08-13 08:17

    EXTI外部中断

    程序简介 -工程名称:EXTI--外部中断 -实验平台: 秉火STM32 F429 开发板 -MDK版本:5.16 -ST固件库版本:1.5
    发表于 12-12 19:08 3次下载

    STM8S_009_ EXTI外部中断

    STM8S_009_EXTI外部中断
    的头像 发表于 03-14 14:56 3765次阅读

    STM32EXTI——外部中断资料下载

    电子发烧友网为你提供STM32EXTI——外部中断资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料、参考设计、用户指南、解决方案等资料,希望可以帮助
    发表于 04-14 08:53 6次下载
    <b class='flag-5'>STM32</b>之<b class='flag-5'>EXTI</b>——<b class='flag-5'>外部</b><b class='flag-5'>中断</b>资料下载

    STM32外部中断实验-EXTI

    STM32 外部中断简介STM32 的每个 IO 都可以作为外部中断
    发表于 11-29 16:06 9次下载
    <b class='flag-5'>STM32</b><b class='flag-5'>外部</b><b class='flag-5'>中断</b>实验-<b class='flag-5'>EXTI</b>

    STM32L051使用HAL库操作实例(5)-外部中断实验

    一、STM32CubeMX配置(本文使用的STM32CubeMX版本为5.6.0)思路:使用外部中断方式控制LED,当按下不同的按键触中断
    发表于 12-08 12:21 11次下载
    <b class='flag-5'>STM32</b>L051使用<b class='flag-5'>HAL</b>库操作实例(5)-<b class='flag-5'>外部</b><b class='flag-5'>中断</b>实验

    STM32_EXTI外部中断学习笔记

    参考资料:《STM32F4xx中文参考手册》系统配置控制器以及中断和事件章节。EXTI( External interrupt /evet controller)之前接触过51单片机的都了解到51
    发表于 01-14 15:21 3次下载
    <b class='flag-5'>STM32_EXTI</b><b class='flag-5'>外部</b><b class='flag-5'>中断</b>学习笔记

    STM32F10X的外部中断EXTI)前篇

    STM32F10X的外部中断EXTI)首先,在学习外部中断之前,我们要有一个前要知识,关于NV
    发表于 01-14 15:22 3次下载
    <b class='flag-5'>STM32</b>F10X的<b class='flag-5'>外部</b><b class='flag-5'>中断</b>(<b class='flag-5'>EXTI</b>)前篇

    STM32CUBEMX(11)--外部中断(EXTI)

    外部中断和事件控制器 (EXTI) 管理外部和内部异步事件 / 中断,并生成相应的事件请求到CPU/
    的头像 发表于 11-14 16:39 1467次阅读
    <b class='flag-5'>STM32</b>CUBEMX(11)--<b class='flag-5'>外部</b><b class='flag-5'>中断</b>(<b class='flag-5'>EXTI</b>)

    STM32外部中断控制器EXTI详解

    什么是外部中断控制器,外部中断控制器在STM32芯片中处于什么位置,它的作用是什么,EXTI与G
    的头像 发表于 04-20 11:44 1866次阅读
    <b class='flag-5'>STM32</b><b class='flag-5'>外部</b><b class='flag-5'>中断</b>控制器<b class='flag-5'>EXTI</b>详解

    STM32的IO外部中断EXTI的使用

    的方式访问输入引脚,还可以通过另外一种叫做外部中断的方式来对引脚的输入信号进行检测,本篇首先介绍下EXTI的结构,接着介绍外部中断的相关概念
    的头像 发表于 06-22 10:21 1189次阅读
    <b class='flag-5'>STM32</b>的IO<b class='flag-5'>外部</b><b class='flag-5'>中断</b><b class='flag-5'>EXTI</b>的使用

    STM32CUBEIDE(14)----外部中断EXTI

    外部中断和事件控制器 (EXTI) 管理外部和内部异步事件 / 中断,并生成相应的事件请求到CPU/
    的头像 发表于 07-26 14:33 964次阅读
    <b class='flag-5'>STM32</b>CUBEIDE(14)----<b class='flag-5'>外部</b><b class='flag-5'>中断</b><b class='flag-5'>EXTI</b>

    STM32CUBEMX开发GD32F303(15)----外部中断EXTI

    本章STM32CUBEMX配置STM32F103,并且在GD32F303中进行开发,同时通过开发板内进行验证。 使用外部
    的头像 发表于 07-26 15:53 836次阅读
    <b class='flag-5'>STM32</b>CUBEMX<b class='flag-5'>开发</b>GD32F303(15)----<b class='flag-5'>外部</b><b class='flag-5'>中断</b><b class='flag-5'>EXTI</b>

    STM32L4外部中断及事件控制模块(EXTI)

    电子发烧友网站提供《STM32L4外部中断及事件控制模块(EXTI).pdf》资料免费下载
    发表于 08-01 10:23 0次下载
    <b class='flag-5'>STM32</b>L4<b class='flag-5'>外部</b><b class='flag-5'>中断</b>及事件控制模块(<b class='flag-5'>EXTI</b>)

    stm32f1如何将外部中断关掉hal

    Layer)来简化芯片和外设的驱动开发。在STM32F1中,外部中断的关闭是通过HAL库中的相应函数来实现的。下面我将详细介绍如何使用
    的头像 发表于 12-22 13:52 1190次阅读