单片机
返回首页

1.5.6_按键中断程序示例_完善

2021-08-13 来源:eefocus

中对概述和初始化做了初步的介绍,现在来完善整个按键中断程序。


当按键中断发生时,CPU会跳到0x18地址执行,和之前类似,我们通过word让CPU跳到do_irq执行。

在这里插入图片描述

这里的lr_irq保存的是下一条指令的地址+4,所以要先减4再存。

在这里插入图片描述

通过handle_irq_c这个中断处理函数来处理中断,这里我们使用了一个函数指针数组,将各个中断对应的处理函数使用数组来调用。相应的,也增加了注册函数,在初始化中断时进行注册。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

大致处理的流程就是这样。


下面整理一下,首先是设置中断源,然后是初始化相关的中断配置,注册中断处理函数。大致就是这三步。


中断处理完之后,需要清楚中断源和中断标志位,注意从中断源开始从后往前清,不然清了后面的前面又会把后面的设置了。

在这里插入图片描述

进入单片机查看更多内容>>
相关视频
  • RISC-V嵌入式系统开发

  • SOC系统级芯片设计实验

  • 云龙51单片机实训视频教程(王云,字幕版)

  • 2022 Digi-Key KOL 系列: 你见过1GHz主频的单片机吗?Teensy 4.1开发板介绍

  • TI 新一代 C2000™ 微控制器:全方位助力伺服及马达驱动应用

  • MSP430电容触摸技术 - 防水Demo演示

精选电路图
  • 家用电源无载自动断电装置的设计与制作

  • 用数字电路CD4069制作的万能遥控轻触开关

  • 使用ESP8266从NTP服务器获取时间并在OLED显示器上显示

  • 开关电源的基本组成及工作原理

  • 用NE555制作定时器

  • 带有短路保护系统的5V直流稳压电源电路图

    相关电子头条文章