第21篇 基于ARM A9处理器用汇编语言实现中断<三>

Q:怎样编写ARM A9处理器汇编语言代码配置按键端口产生中断?

A:使用Intel Monitor Program创建中断程序时,Linker Section Presets下拉菜单中需选择Exceptions。主程序在.vectors代码段为ARM处理器设置异常向量表,在.text代码段主程序为中断模式和监督模式都设置堆栈指针,初始化通用中断控制器(GIC),配置按键端口以产生中断,最后在处理器中使能中断。

创建config_GIC.s文件,并添加初始化GIC的子程序CONFIG_GIC,配置GIC将按键端口产生的中断发送到ARM处理器;创建key_isr.s按键中断服务程序、 defines.s以及interrupt_ID.s程序。

该汇编语言程序实现的功能是:按下DE1-SoC开发板的按键KEY3:0时,对应的在七段数码管HEX3:0上显示对应的数字3~0;再次按下KEY,对应的HEX不显示。

相关推荐
cmc10281 小时前
318.关于在ip内部封装PLL,MMCM的注意事项
fpga开发
LabVIEW开发4 小时前
LabVIEW CompactRIO 编程模式怎么选(系列 02/05)
fpga开发·labview
FPGA小迷弟15 小时前
FPGA 与千兆以太网校验和:从原理到 Verilog 实现
嵌入式硬件·fpga开发·无人机·ai编程·fpga
码农小韩1 天前
FPGA学习(二)——LED闪烁
fpga开发·verilog·fpga·led·组合逻辑·分频设计
9527华安2 天前
FPGA纯verilog实现DP视频接口,支持2K60帧分辨率,提供3套工程源码和技术支持
fpga开发·音视频·dp
二级小助手2 天前
四级 Linux 应用与开发工程师笔记:8086 汇编、存储器、接口芯片和操作系统计算题整理
汇编语言·操作系统原理·计算机等级考试·计算机四级·四级linux应用与开发工程师·计算机组成与接口
ChaseVLSI3 天前
FPGA与ASIC的区别详解:内部结构、开发成本与适用场景,项目选型到底该选哪个
嵌入式硬件·fpga开发·硬件架构·硬件工程
9527华安3 天前
FPGA实现ARINC818总线协议,基于GT Transceivers Wizard高速收发器,提供7套工程源码和技术支持
fpga开发·transceivers·arinc818
小蘇的FPGA4 天前
fpga-wide-data-crc32
fpga开发
波儿菜4 天前
Xcode MCP 助力运行时二进制分析
人工智能·程序员·汇编语言