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

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

3天内不再提示

STM32按键中断应用实例

CHANBAEK 来源:头条号秋天滴风 作者:头条号秋天滴风 2023-04-20 11:45 次阅读

STM32按键中断(HAL库版)

本文将介绍如何使用STM32F4的IO口作为中断触发源,通过串口显示按键被按下的日志。

1.运用到的资源、工具:

1.1开发板芯片STM32F407,PI9作为外部中断源、USART3串口向屏幕传输信息

1.2编译工具:MDK-ARM V5(keil5)

1.3辅助工具:STM32CubeMX

2.硬件设计

2.1原理图:

3.软件设计

3.1STM32cubeMX配置工程文件

选择Key1作为外部中断源、选择中断触发方式为下降沿触发、并设置中断优先级分组选择优先级

使能USART3串口配置为异步通信

最后生成工程文件

3.2串口输出重定向(重写fputc函数)

int fputc(int ch, FILE *p)

{

while(!(USART3->SR & (1 << 7))); 
USART3->DR = ch;

return ch;

}

3.3在中断回调函数中,打印KEY1 DOWN

void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
{
if(GPIO_Pin == GPIO_PIN_9)
{
HAL_Delay(40);
if(HAL_GPIO_ReadPin(GPIOI, GPIO_PIN_9) == 0)
{
printf("KEY1 DOWN
");
}
}
}

4.代码及运行结果

4.1运行结果 按下KEY1、打印一次KEY1 DOWN

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

    关注

    2240

    文章

    10674

    浏览量

    348809
  • 开发板
    +关注

    关注

    25

    文章

    4434

    浏览量

    94032
  • IO口
    +关注

    关注

    3

    文章

    164

    浏览量

    23757
  • 按键中断
    +关注

    关注

    0

    文章

    14

    浏览量

    6412
  • stm32cubemx
    +关注

    关注

    5

    文章

    260

    浏览量

    14448
收藏 人收藏

    评论

    相关推荐

    STM32CubeIDE软件实现STM32外部中断实例

    本文用STM32CubeIDE软件实现STM32外部中断实例
    的头像 发表于 08-24 09:09 3838次阅读

    STM32F407 外部中断配置步骤

    介绍STM32F407外部中断配置步骤,以按键为例,实现外部中断配置,使用按键触发中断进行LED
    的头像 发表于 07-06 14:31 1043次阅读
    <b class='flag-5'>STM32</b>F407 外部<b class='flag-5'>中断</b>配置步骤

    基于STM32按键控制与外部中断实例详解

    [tr=transparent] //======================================================// **基于STM32按键控制与外部中断
    发表于 07-02 07:33

    基于STM32按键控制与外部中断实例详解

    [tr=transparent] //======================================================// **基于STM32按键控制与外部中断
    发表于 07-06 08:43

    STM32按键扫描/按键中断/外部中断资料下载

    电子发烧友网为你提供STM32按键扫描/按键中断/外部中断资料下载的电子资料下载,更有其他相关的电路图、源代码、课件教程、中文资料、英文资料
    发表于 04-13 08:45 23次下载
    <b class='flag-5'>STM32</b><b class='flag-5'>按键</b>扫描/<b class='flag-5'>按键</b><b class='flag-5'>中断</b>/外部<b class='flag-5'>中断</b>资料下载

    STM32按键中断分析

    ,引入中断控制就很有必要,,一旦有中断时间发生,则程序立马跳转到中断向量的执行程序中,执行完成后就恢复到正常的程序状态。在STM32F中采用中断
    发表于 11-23 18:06 5次下载
    <b class='flag-5'>STM32</b>中<b class='flag-5'>按键</b><b class='flag-5'>中断</b>分析

    STM32f10x 外部中断中断分组

    利用外部中断来实现按键控制LED灯的亮灭。实验工具:MDK5,STM32F103ZET6开发板使用固件库编程LED灯引脚PD13,按键PE0首先了解一下32的外部
    发表于 11-23 18:06 4次下载
    <b class='flag-5'>STM32</b>f10x 外部<b class='flag-5'>中断</b>及<b class='flag-5'>中断</b>分组

    野火F1开发板STM32案例-外部中断(按键)使用

    野火F1开发板STM32案例-外部中断(按键)使用硬件平台野火STM32F103ZET6 霸道V2开发板正点原子F1系列开发板软件平台Keil MDK 5.31串口调试助手
    发表于 11-24 16:36 1次下载
    野火F1开发板<b class='flag-5'>STM32</b>案例-外部<b class='flag-5'>中断</b>(<b class='flag-5'>按键</b>)使用

    Keil下,基于STM32F103单片机的按键中断的几种LED实例

    Keil下,基于STM32F103单片机的按键中断的几种LED实例(流水、奇亮偶灭等)这里是通过实验室的单片机实现的(皮赛公司的)由于Keil版本的问题,5.15版本以下的版本使用C/
    发表于 11-24 16:51 24次下载
    Keil下,基于<b class='flag-5'>STM32</b>F103单片机的<b class='flag-5'>按键</b><b class='flag-5'>中断</b>的几种LED<b class='flag-5'>实例</b>

    STM32F103(四)——中断系统与外部中断实例

    )总结(中断优先级的设置步骤)外部中断实例外部中断概述**外部中断配置的步骤**参考资料:《开发指南》P120,
    发表于 12-04 17:06 4次下载
    <b class='flag-5'>STM32</b>F103(四)——<b class='flag-5'>中断</b>系统与外部<b class='flag-5'>中断</b><b class='flag-5'>实例</b>

    STM32串口通讯——中断方式

    STM32使用中断方式读取按键控制LED灯的亮灭.二、代码编写代码部分我是在别人博客进行复制的:链接: 基于 stm32 的应用实例 ——
    发表于 12-07 09:51 27次下载
    <b class='flag-5'>STM32</b>串口通讯——<b class='flag-5'>中断</b>方式

    STM32基本GPIO操作:按键输入(扫描+外部中断

    STM32基本GPIO操作:按键输入(扫描+外部中断)本文章向大家介绍STM32基本GPIO操作:按键输入(扫描+外部
    发表于 12-29 19:27 13次下载
    <b class='flag-5'>STM32</b>基本GPIO操作:<b class='flag-5'>按键</b>输入(扫描+外部<b class='flag-5'>中断</b>)

    stm32学习笔记-中断系统

    的主要功能。i.中断管理。ii.支持异常及中断向量化处理。iii.支持前台中断。2、外部中断控制器EXTI。3、按键
    发表于 01-13 10:19 0次下载
    <b class='flag-5'>stm32</b>学习笔记-<b class='flag-5'>中断</b>系统

    STM32 HAL库 CubeMX教程(四)按键外部中断

    STM32 HAL库 CubeMX教程(四)外部中断实验内容NVIC(嵌套向量中断控制器)外部中断简介CubeMX配置中断回调函数编写实验内
    发表于 01-14 15:11 10次下载
    <b class='flag-5'>STM32</b> HAL库 CubeMX教程(四)<b class='flag-5'>按键</b>外部<b class='flag-5'>中断</b>

    STM32学习---中断EXTI(按键中断)

    //中断实验--利用按键进行的中断;//首先分析STM32中断机制:/*    因为STM32
    发表于 01-14 15:31 14次下载
    <b class='flag-5'>STM32</b>学习---<b class='flag-5'>中断</b>EXTI(<b class='flag-5'>按键</b><b class='flag-5'>中断</b>)