

嵌入式软件设计(外部中断输入)
source link: https://blog.csdn.net/feixiaoxing/article/details/125126196
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】
之前讨论了外部按键输入,主要是利用了轮询的方式。这种方式简单来说,就是一遍又一遍地重复查询验证。虽然概念上比较好理解,但是效率比较低,cpu实际上做了很多无用功。一种比较高效的方式其实是中断。
所谓中断,概念上不复杂。就是说,cpu在执行命令的时候,发现外部有信号处理,就会保存当前的寄存器,去优先处理外部的中断信号。此时,所有现场的寄存器都会被压入到堆栈里面。直到cpu处理好外部中断,才会从堆栈中弹出之前保存的寄存器,继续执行原有的程序。
鉴于中断的内容稍显复杂,我们可以通过开发板厂商提供的中断代码,直接来进行学习。
1、查看main函数
代码中除了熟悉的LED_GPIO_Config之外,就是多了一个EXTI_Key_Config函数。所以说,只要分析这个函数就可以了。另外,我们还观察到后面就是一个while循环,这也说明了整个程序并没有使用轮询查找的方式来处理。
Recommend
-
6
HAL 库开发笔记(三)- 外部中断上一篇文章我们提到,用轮询的方法消除按键抖动、检测输入,有可能会消耗过多的系统资源并导致卡机,也有可能会错过检测。这就是为什么我们需要使用中断了。基本原理
-
7
请保留-> 【原文: https://blog.csdn.net/luobing4365 和 http://yiiyee.cn/blog/author/luobing/】 上一篇中,实现了按键的控制功能。...
-
9
Linux驱动开发-外部中断的注册使用(按键为例) 原创 DS小龙哥 2022-04-21 09:09:22...
-
3
嵌入式软件设计(怎么学)
-
5
嵌入式软件设计(数据段——最容易面试被问倒的问题)
-
6
嵌入式软件设计(按键输入)
-
5
嵌入式软件设计(定时器中断)
-
4
STM32CubeMX之外部中断1.中断简介 中断,是指处理机处理程序运行中出现的紧急事件的整个过程。程序运行过程中,系统外部、系统内部或者现行程序本身若出现紧急事件,处理机立即中止现行程序的运行,自动转入相应的处理程序...
-
2
嵌入式Linux—输入子系统 常见的输入设备...
-
6
全志V3S嵌入式驱动开发(多按键输入驱动) ...
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK