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

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

3天内不再提示

STM32_ EXIT中断

黄工的嵌入式技术圈 来源:黄工的嵌入式技术圈 2020-04-08 11:12 次阅读

今天讲解“STM32F103 EXIT中断”,关于EXIT中断里面有很多学问,以我的工作经验来看,有几点是特别容易犯错的,我会在文章最后重点讲解。

每次讲解的不仅仅是基础,而是重点,不起眼的重点,容易被人忽视的重点。关注微信公众号“EmbeddDeveloper”还有更多精彩等着你。

每天提供下载的“软件工程”都是在硬件板子上进行多次测试、并保证没问题才上传至360云盘。

今天的软件工程下载地址(360云盘):

https://yunpan.cn/cPhvyer3vIwXh访问密码 57e1

STM32F10x的资料可以在我360云盘下载:

https://yunpan.cn/crBUdUGdYKam2访问密码 ca90

工程概要说明:定义一个按键(可自己定义),每按键一次,响应中断一次,在中断函数中LED提示灯变化一次,用户可更加实际情况在中断函数做出相应操作,这里只是一个模板。

关于“STM32F103EXIT中断”我把重要的几点在下面分别讲述,若不明白,请关注微信公众号“EmbeddDeveloper”查阅或留言。

一、RCC时钟配置

该函数位于在bsp.c文件下面;

使能RCC时钟:RCC_APB2Periph_GPIOC和 RCC_APB2Periph_AFIO(针对该工程主要的两项,引脚PC13和复用功能)。

二、EXIT配置

该函数位于在bsp.c文件下面;

对应外部中断(按键)的引脚,这里两处必须匹配。

三、NVIC配置

该函数位于在bsp.c文件下面;

对EXIT的中断控制器进行配置

注意:

EXTI15_10_IRQn包含EXTI10 --- EXTI15共6条外部中断线,也就是说共用一个中断入口,需要在中断里面判断是哪一个中断。

四、中断函数

该函数位于在stm32f10x_it.c文件下面;

这里需要判断是哪个中断,这里的操作根据自己实际情况条添加代码。

五、今天的重点提示

A.外部中断IO

STM32所有的IO引脚都可以配置成外部中断引脚,见手册:

B.中断入口

程序中“EXTI9_5_IRQHandler” 和 “EXTI15_10_IRQHandler”可能开始学习的人不明白,其实很简单,就是综合了几个EXIT中断,入口都在这里。

C.细心的朋友会发现我“中断函数”中有一句else{EXTI->PR = 0xFC00;}, 估计很多人都不明白。这里告诉大家,这句else其实很重要,特别是正式工作的人(我工作亲身经验),为什么重要,在与移植工程时,或许之前的工程开启了其他中断,但移植过后没有屏蔽,从而导致进入中断,而中断标志位又没有清除掉(else就是清除标志位),致使不停止中断中执行。

我们都是平凡的,但需要走好平凡的路。

软件工程下载方式:长按网站->选择复制->打开

或者复制网站在电脑上下载也可。

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

    关注

    2239

    文章

    10665

    浏览量

    348519
  • STM32F103
    +关注

    关注

    33

    文章

    474

    浏览量

    62546
  • EXIT图
    +关注

    关注

    0

    文章

    4

    浏览量

    6985
收藏 人收藏

    评论

    相关推荐

    如何使用exit()、_exit()和_Exit()来终止程序运行呢?

    在Linux系统下,你可以使用 exit()、_exit() 和 _Exit() 来终止程序运行,特别是在出现错误或执行失败的情况下。
    的头像 发表于 02-22 12:20 384次阅读

    stm32中断怎么处理的

    STM32是一款非常强大的微控制器系列,具有丰富的外设和功能。中断STM32中非常重要的部分,能够帮助我们提高系统的响应速度和效率。本文将详细介绍STM32
    的头像 发表于 01-02 17:35 943次阅读

    stm32f1如何将外部中断关掉hal库

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

    STM32CubeMX的外部中断的使用

    库的中断处理较为复杂:startup_stm32f103xb.s通过汇编注册了中断处理函数EXTI1_IRQHandler(),在stm32f1xx_it.c中,
    的头像 发表于 11-26 08:00 275次阅读
    <b class='flag-5'>STM32</b>CubeMX的外部<b class='flag-5'>中断</b>的使用

    STM32外部中断大问题

    出现这种情况,明明没有触发外部中断,可是中断服务函数还是不断的++。问题一:电气噪声和抖动电气噪声和抖动是常见的问题,可能会导致STM32的外部中断不断触发,即使没
    的头像 发表于 11-08 08:00 571次阅读
    <b class='flag-5'>STM32</b>外部<b class='flag-5'>中断</b>大问题

    STM32基于标准外设库的外部中断配置

    本文介绍了STM32基于标准外设库的外部中断配置,以及基于参考手册如何更加寄存器配置外部中断
    的头像 发表于 11-02 14:13 839次阅读
    <b class='flag-5'>STM32</b>基于标准外设库的外部<b class='flag-5'>中断</b>配置

    STM32中断,看着一篇就够了

    1,环境搭建:硬件平台:STM32H750XBH6开发环境:STM32CubeMXV6.8.1+KEILV5.28.0.0STM32H750固件版本:packageV1.11.0仿真下载驱动
    的头像 发表于 10-27 08:00 989次阅读
    <b class='flag-5'>STM32</b><b class='flag-5'>中断</b>,看着一篇就够了

    STM32如何配置外部中断STM32外部中断配置步骤

    STM32如何配置外部中断STM32外部中断配置步骤  作为一款现代化的微控制器,STM32系列芯片在各种应用场合中广泛应用。其中最常见的
    的头像 发表于 10-26 17:47 2013次阅读

    STM32学习笔记一外部中断

    STM32 的每个 IO 都可以作为外部中断中断输入口。STM32F103 的中断控制器支持 19 个外部
    的头像 发表于 10-24 14:12 668次阅读
    <b class='flag-5'>STM32</b>学习笔记一外部<b class='flag-5'>中断</b>

    为什么有些STM32中断没有子优先级?

    看到一个交流群在讨论关于【关于STM32中断优先级的话题】,其中就有小伙伴提到:为什么有些STM32中断没有【子优先级】?
    的头像 发表于 10-17 15:50 402次阅读
    为什么有些<b class='flag-5'>STM32</b><b class='flag-5'>中断</b>没有子优先级?

    STM32H7以太网的MMC中断

    电子发烧友网站提供《STM32H7以太网的MMC中断.pdf》资料免费下载
    发表于 09-20 09:11 0次下载
    <b class='flag-5'>STM32</b>H7以太网的MMC<b class='flag-5'>中断</b>

    STM32F407 外部中断配置步骤

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

    STM32中断系统的工作流程

    一、前言 在之前的STM32中断系统理论基础知识之基本原理及NVIC中,分别中断的基本原理,中断的管理机制和中断的处理流程进行了较为详细的
    的头像 发表于 06-22 09:17 1617次阅读
    <b class='flag-5'>STM32</b><b class='flag-5'>中断</b>系统的工作流程

    STM32CubeMx外部中断基本使用方法

    第一步:现在STM32CubeMx 中配置所需要IO口外部中断模式。
    发表于 05-31 15:32 2752次阅读
    <b class='flag-5'>STM32</b>CubeMx外部<b class='flag-5'>中断</b>基本使用方法

    STM32定时器中断应用实例

    本文将介绍:通过STM32cube mx配置工程文件,实现定时器中断的功能。
    的头像 发表于 04-21 11:36 1120次阅读
    <b class='flag-5'>STM32</b>定时器<b class='flag-5'>中断</b>应用实例