第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开发板的按键KEY[3:0]时,对应的在七段数码管HEX[3:0]上显示对应的数字3~0;再次按下KEY,对应的HEX不显示。

相关推荐
9527华安1 天前
Artix7系列FPGA实现SDI视频解码转CameraLink,基于GTP高速收发器+OSERDES2原语架构,提供2套工程源码和技术支持
fpga开发·架构·音视频
!chen1 天前
自适应滤波算法FPGA实现思路
算法·fpga开发
华舞灵瞳1 天前
学习FPGA(七)正弦信号合成
学习·fpga开发
葡萄杨1 天前
【软件使用】Icarus Verilog仿真
fpga开发
s09071361 天前
常用FPGA实现的图像处理算法
图像处理·算法·fpga开发
s09071361 天前
FPGA实现Gamma校正的系统性指南
图像处理·fpga开发·gama校正
读书点滴1 天前
FPGA中如何获取任何一条路径的延时
fpga开发
minglie11 天前
嵌入式协程AlarmProtothread
mcu·fpga开发
Godspeed Zhao1 天前
自动驾驶中的传感器技术79——Sensor Fusion(2)
人工智能·fpga开发·自动驾驶
ShiMetaPi1 天前
GM-3568JHF丨ARM+FPGA异构开发板系列教程:外设教程 07 音频
arm开发·fpga开发·音视频·fpga·rk3568