第26篇 基于ARM A9处理器用C语言实现中断<二>

devtools/2025/2/5 9:15:07/

Q:基于ARM A9处理器怎样编写C语言工程,使用按键中断将数字显示在七段数码管上呢?

A:基本原理:主程序需要首先调用子程序set_A9_IRQ_stack()初始化IRQ模式的ARM A9堆栈指针;然后主程序调用子程序config_GIC()初始化通用中断控制器(GIC)以及config_KEYs()初始化按键端口来产生中断。最后调用子程序enable_A9_interrupts()取消屏蔽ARM处理器中的IRQ中断;初始化步骤完成之后,主程序在无限循环中被挂起。

image-20241128100921903

另外创建interrupt_ID.h、exceptions.c、pushbutton_ISR.c以及defines.h代码程序,并将exceptions.c和pushbutton_ISR.c添加到工程中。

image-20241128101223191

编译下载程序到DE1-SoC开发板上:按下KEY0后,HEX0上会显示数字0;再按一次KEY0HEX0显示为空白;按KEY1、KEY2和KEY3会显示数字1、2、3。


http://www.ppmy.cn/devtools/156230.html

相关文章

简单介绍一下什么是OpenFeign

OpenFeign是什么? OpenFeign是一个声明式的Http客户端,它可以用来发起Http请求 它主要用于SpringCloud微服务之间的通讯,让调用另一个服务的Java方法和调用本地方法一样快速和便捷 之前我们是用RestTemplate写一大堆东西发起Http请求远程调…

css中的animation

css的animation animation是一个综合属性,是animation-name, animation-duration, animation-timing-function, animation-delay, animation-iteration-count, animation-direction, animation-fill-mode, animation-play-state, and animation-timeline这些属性的简写 不过在…

Java项目: 基于SpringBoot+mybatis+maven+mysql实现的疾病防控综合管理系统(含源码+数据库+毕业论文)

一、项目简介 本项目是一套基于SpringBootmybatismavenmysql实现的疾病防控综合管理系统 包含:项目源码、数据库脚本等,该项目附带全部源码可作为毕设使用。 项目都经过严格调试,eclipse或者idea 确保可以运行! 该系统功能完善、…

Linux基础

一. Linux 主要目录 介绍:Linux 系统的文件系统遵循类似 UNIX 的目录结构,根目录 (/) 是最顶层的目录,下面包含了不同的子目录,承载着系统和应用程序的文件。 / (根目录) 这是整个文件系统的起点,所有其他目录和文件都…

Vue3 完整学习笔记 - 第五部分

Vue3 完整学习笔记 - 第五部分 5. Vue3 高级特性与性能优化 5.1 shallow 系列 API 重点掌握&#xff1a; shallowRef vs refshallowReactive vs reactive使用场景和性能影响 示例代码&#xff1a; <script setup> import { ref, shallowRef, reactive, shallowReac…

冯诺依曼系统及操作系统

目录 一.冯诺依曼体系结构 二.操作系统 三.系统调用和库函数概念 一.冯诺依曼体系结构 我们常见的计算机&#xff0c;如笔记本。我们不常见的计算机&#xff0c;如服务器&#xff0c;大部分都遵守冯诺依曼体系 截至目前&#xff0c;我们所认识的计算机&#xff0c;都是由一…

ip属地是根据所在位置定位的吗

在数字化时代&#xff0c;随着网络社交和电子商务的蓬勃发展&#xff0c;IP属地这一概念逐渐走入了大众的视野。许多平台开始显示用户的IP属地&#xff0c;这一举措旨在增强网络信息的透明度和真实性。然而&#xff0c;关于IP属地是否就是根据用户所在位置进行定位的问题&#…

接口测试通用测试用例

接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。 测试的重点是检查数据的交换&#xff0c;传递和控制管理过程&#xff0c;以及系统间的相互逻辑依赖关系等。 现在很多系统前后端架构是分离的&#xff0c;从安全层面来说&#xff0c;只依赖前段进行限…