中断函数(学习笔记)

文章介绍了STM32中断系统中的IRQn_Type类型,强调中断函数的固定命名规则,如EXTI10_15_IRQHandler,并详细阐述了中断函数中如何检查和清除中断标志位。还提到了在主程序和中断程序中查看及清除标志位的函数,并给出了使用中断函数的注意事项。
摘要由CSDN通过智能技术生成

  • IRQn_Type

         control+F 搜索【IRQn_Type】

        Lookin:Current Project

        最终在gd32f4xx.h中找到

  • 中断函数

中断函数的名字都是固定的,每一个中断通道对应一个中断函数。

在启动文件(xxxx.s)中,以IRQHandler结尾的字符串就是中断函数的名字

  •  中断函数无参无返回值

void EXTI10_15_IRQHandler(void){

}

  • 中断函数格式

void EXTI10_15_IRQHandler(void){

        首先进行中断标志位的判断

        if(exti_interrupt_flag_get(EXTI_14)== SET){

        中断函数最后一定要调用清除中断标志位的函数!(因为只要中断标志位置1,程序就会跳到中断函数,未清除中断标志位则会一直申请中断。)

                exti_interrupt_flag_clear(EXTI_14);

        }

}

  • exit.h中的后四个函数区分

在主程序中查看标志位            FlagStatus exti_flag_get(exti_line_enum linex);

在主程序中清除标志位            void exti_flag_clear(exti_line_enum linex);

在中断程序中查看标志位        FlagStatus exti_interrupt_flag_get(exti_line_enum linex);

在中断程序中清除标志位        void exti_interrupt_flag_clear(exti_line_enum linex);

  • Notes

1.中断函数中最好不要执行耗时过长的代码;

2.最好不要在中断函数和主函数调用相同的函数,或者操作同一硬件。

BC锌
关注 关注
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
中断函数的写法
VAZcc 的博客
08-16 2万+
1.定时/计数器 初始化程序应完成如下工作:  对TMOD赋值,以确定T0和T1的工作方式。  计算初值,并将其写入TH0、TL0或TH1、TL1。   中断方式时,则对IE赋值,开放中断。   使TR0或TR1置位,启动定时/计数器定时或计数。 TMOD=0x01;              \\设定工作方式为16位定时器  TH0=(65536-50000)/2
中断函数
cruel的专栏
12-11 384
一,//break中止语句 #include using std::cout; using std::endl; int main() { for(int i=1;i { if(i==5)break; cout } return 0;   } 二, //中止语句continue #include using std::cout; using std::endl
EXIT常规流程和示例代码
最新发布
pythom_aaa的博客
07-20 423
EXIT常规流程和示例代码
关于中断函数
Allen.Yao的专栏
05-20 1344
1.中断函数里面不允许休眠,例如调用sleep函数
Linux·中断函数
m0_64560763的博客
08-18 1930
Linux中断函数注意事项
中断服务函数
w396255075的博客
01-20 5798
51中断:5个 ES串口,ET1定时器1,ET0定时器0,EX1外部中断1,EX0外部中断0 首先要了解相关的与中断有关的寄存器: IE寄存器:中断控制的寄存器,要实现中断就要配置该寄存器。 EA为总开关,只有先打开EA才能对相应的寄存器进行操作 TCON寄存器:用来控制中断的触发方式,是低电平触发还是下降沿触发, 由图知道:首先相应触发方式,然后看是低电平还是下降沿触发(给0或1,1下降沿触发)然后对应的IE寄存器相当于开关的作用,然后是IP寄存器控制中断的优先级 要是用中断 得.
51中断函数学习笔记
04-09
《51中断函数详解》 在单片机编程中,中断功能是不可或缺的一部分,它使得处理器可以在执行正常程序的同时,能够响应外部或内部发生的特定事件。对于51单片机而言,中断系统的理解和运用至关重要。本文主要围绕51...
stm32 TIM定时器中断函数学习笔记(一)
m0_70340305的博客
04-09 1664
函数意义: 第一个参数为需要选择哪个定时器,TIM1-8;第二个参数为时基单元的参数结构体。(在使用该函数前,需要定义时基单元参数结构体)函数意义:定义时基单元参数结构体的名称为TIM_TimeBaseInitStructure函数意义:对TIM_TimeBaseInitStructure结构体的各项参数的选择。选择定时器分频参数,有DIV1,2,4三种选择。DIV1为1分频,即频率不变,DIV2为2分频,DIV4为4分频选择计数方式,即触发计数的条件。有一共五种选择。
c语言中断函数作用,C语言学习笔记--中断程序写法
weixin_42311301的博客
05-16 5948
中断是CPU的一种核心功能,当CPU外部或内部发生指定事件时,就会触发中断,中断当前CPU正在执行的程序,保存当前状态,程序指针跳转中断服务程序的起始地址开始执行.执行完成后,跳回原程序位置恢复中断前的状态.每个CPU都有一张中断向量表,可以通过CPU的datasheet手册查找。标准C中并没有规定中断函数的写法,所以中断的语法,是各个编译器自己定义的。VCC编译器的语法规则如下:#pragma ...
STM32-外部中断学习笔记
08-11
这篇学习笔记主要围绕STM32的外部中断控制器EXTI展开,讲解了其功能、结构、配置方法以及中断处理流程。 STM32的EXTI控制器提供了19个外部中断/事件请求,这些中断线分别对应EXTI_Line0至EXTI_Line18。每个中断线都...
STM8学习笔记---uart1串口中断-综合文档
05-20
STM8学习笔记系列的这篇文章主要讲解了UART1串口中断的使用,通过编写led.h、led.c、uart.h、uart.c文件,并在stm8s_interrupt.c文件中编写中断处理函数,实现了串口接收和发送中断的处理。下面我们来详细介绍这篇...
中断函数java,java线程中断[interrupt()函数]
weixin_32191249的博客
03-10 286
. interrupt()只是改变中断状态而已 interrupt()不会中断一个正在运行的线程。这一方法实际上完成的是,在线程受到阻塞时抛出一个中断信号,这样线程就得以退出阻塞的状态。更确切的说,如果线程被Object.wait, Thread.join和Thread.sleep三种方法之一阻塞,那么,它将接收到一个中断异常(InterruptedException),从而提早地终结被...
关于中断函数的理解
Alangman的博客
07-29 3849
关于中断函数的理解 看了几个视频发现两种不同的中断函数类型格式,所达到的效果也是基本类似。 具体体现在 ①库函数TIM_GetITStatus和TIM_GetFlagStatus的区别。 ②库函数TIM_ClearFlag 和TIM_ClearITPendingBit的区别。 通过查阅库函数和论坛: ①TIM_GetFlagStatus返回值是中断标志位状态(读SR寄存器),TIM_GetITS...
Arduino——中断函数,定时中断的实现
CSDN博客
04-21 5836
通过生活中一个简单的例子来说明中断。当你正在家中看书时,突然电话铃响了,你停止看书,去接电话,和来电话的人进行交谈,通话结束后回来继续从刚才停止的位置看你的书。这就是生活中的“中断”的现象,就是正常的工作过程被外部的事件打断了。程序中的中断是指在主程序执行过程中被中断,执行中断服务程序,待中断服务程序执行完之后继续接着执行主程序。 Arduino 中的中断可以分为两类:外部中断和定时中断。 外部...
中断函数 超详细分析
热门推荐
qq_60610314的博客
12-09 1万+
一、什么是中断中断就是字面意思中途打断。这里的中途是指在cpu运行程序的过程,打断即放下本来要做的事情去做别的更重要的事情。 我个人的实体化理解就是,一个人就像cpu,当他正在农田耕作,突然有人和他说家里着火了,这是他就会放下耕作,去救火。 二、为什么要引入中断? 试想在stm32、51这种算力相对有限的芯片来说,做任何事情都要亲历亲为,会大大的降低芯片的使用效率。 试想,在战场上,啥都由将军亲历亲为,势必会降低其统帅能力。为了解...
操作系统的中断是什么?中断函数怎么调用的
pvmsmfchcs的博客
07-15 4392
中断函数是硬件或者操作系统自动调用的。。 也就是说只要满足触发条件,就会自动调用中断函数(此时主函数是停止的)。 当中断函数执行完毕,又返回主函数继续执行主函数。 然后这样不断的循环,反正只要是触发中断的条件一满足。 就会自动进入中断(前提是你的中断的配置是正确的) 中断中断 就是MCU停止当前的执行,做好现场保护。去临时执行中断要求的响应,返回 通俗点就是: 你正在图书馆看书,突然尿急了(中断条件满足,置位)。你要记下你在哪个位置,书看到多少页(现场保护),然后你去尿尿(响应中断),尿完了你不再有尿意(清
c语言中断函数作用,进一步理解中断函数
weixin_30488835的博客
05-16 4449
1.另一个外部中断前面两讲都是围绕外部中断0(P3.2的功能)来讲解,这里我们也还有一个外部中断1(P3.3的功能)。P3.3要想实现上一讲的功能只需杜邦线接下面的IO端口即可代码就是把“EX0”改为“EX1”,“IT0”改为“IT1”。interrupt后面的0要改为2,函数名我们改为“EXTI1_IRQHandler()”#include#include//详见第六章第8讲voidmai...
中断线程的三个常用函数
qq_44691484的博客
07-03 1111
一 点睛 中断一个线程,意味着该线程在完成任务之前,停止它正在进行的一切当前的操作。 有三个比较常用的函数interrupt():一个正在运行的A线程,可以调用B线程对应的interrupt方法来中断线程B。这个方法的核心功能是,将线程B的中断标识位属性设置为true。 isInterrupted():通过该方法判断某个线程是否处于中断状态。 interrupted():这是一个静态方法,用来获取当前线程的中断状态,并清除中断状态。获取的是清除之前的值,也就是说连续两次调用此方法,第二次一定会返回fal
如何写中断服务函数
snipe_O的博客
09-02 2854
【代码】如何写中断服务函数
sigprocmask()函数学习笔记
06-07
下面是关于 `sigprocmask()` 函数的一些学习笔记: 1. `sigprocmask()` 函数的头文件为 `<signal.h>`。 2. `sigprocmask()` 函数的原型为: ``` int sigprocmask(int how, const sigset_t *set, sigset_t *...
写文章

热门文章

  • 使用 Keil uVision5 打开工程, 解决“Missing Device(s)”问题 2790
  • 【转载】linux摄像头驱动 2326
  • mac下C、C++项目出现‘stdio.h’ file not found的解决方法 1446
  • 错误使用 gurobiGurobi error 10008: Unable to set parameter TuneTimeLimit to value -1 (minimum is 0) 1098
  • 中断&内核熵池 entropy pool 1014

分类专栏

  • 面试题 6篇
  • c++ 2篇

最新评论

  • 优先级反转

    普通网友: 写的真好!我也写了一篇获取【大厂面试真题解析、核心开发学习笔记、最新全套讲解视频、实战项目源码讲义、学习路线简历模板】的文章

  • 错误使用 gurobiGurobi error 10008: Unable to set parameter TuneTimeLimit to value -1 (minimum is 0)

    浪子回头070: 我也是,这是什么问题啊!!!

  • 错误使用 gurobiGurobi error 10008: Unable to set parameter TuneTimeLimit to value -1 (minimum is 0)

    Put the gun down: 我也碰到了,是为啥啊,是gurobi11的问题吗

  • 错误使用 gurobiGurobi error 10008: Unable to set parameter TuneTimeLimit to value -1 (minimum is 0)

    Chenjato: 请问这是什么原因呢

  • C++PrimerPlus学习笔记 (Ch14包含)

    大熊猫侯佩: c++是我还不能完全征服的语言,感谢博主的这篇精彩文章让我又重拾勇气!表情包

最新文章

  • 声明v.s.定义
  • *a++
  • emplace_back与push_back异同
2024年22篇
2023年25篇

目录

目录

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家合作玻璃钢牌匾雕塑武汉玻璃钢农耕人物雕塑吉林动物玻璃钢雕塑价位北京特色商场美陈销售长沙玻璃钢熊猫雕塑定制寮步玻璃钢雕塑造型商丘学校玻璃钢雕塑公司包头玻璃钢雕塑多少钱江苏专业玻璃钢雕塑推荐溧阳五一商场美陈鹰潭特色玻璃钢雕塑蒙自市玻璃钢雕塑公司商场美陈森系铜玻璃钢雕塑制作四川大型主题商场美陈制作商场气球美陈 行业前景定制酒店玻璃钢雕塑厂家包头小区玻璃钢雕塑厂家商场玻璃钢ip雕塑供货玻璃钢海洋雕塑厂家玻璃钢雕塑营造玻璃钢仿铜雕塑汕头美陈玻璃钢动物雕塑太康制作玻璃钢雕塑厂价格上海大型商场创意商业美陈怎么做西安商场美陈公司联系方式北欧风格玻璃钢雕塑北京季节性商场美陈费用内蒙古玻璃钢仿真水果雕塑定制海伦玻璃钢门头雕塑香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化