第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不显示。

相关推荐
悲喜自渡7216 小时前
硬件加速(FPGA)
fpga开发
雨霁初曦7 小时前
串行数据检测器,检测到011,Y输出1,否则为0.
fpga开发·数字电路与逻辑设计·logisim
Major_pro8 小时前
MIG_IP核的时钟系统
fpga开发
小眼睛FPGA18 小时前
【RK3568+PG2L50H开发板实验例程】FPGA部分 | DDR3 读写实验例程
科技·嵌入式硬件·ai·fpga开发·fpga
9527华安18 小时前
FPGA实现SDI转LVDS视频发送,基于GTP+OSERDES2原语架构,提供工程源码和技术支持
fpga开发·音视频·lvds·gtp·sdi·oserdes2
三贝勒文子1 天前
Synopsys 逻辑综合之 MultiBit Flip-Flop 与 ICG
fpga开发·eda·synopsys
骁的小小站1 天前
HDLBits刷题笔记和一些拓展知识(十一)
开发语言·经验分享·笔记·其他·fpga开发
千宇宙航1 天前
闲庭信步使用图像验证平台加速FPGA的开发:第九课——图像插值的FPGA实现
图像处理·计算机视觉·缓存·fpga开发
尤老师FPGA1 天前
LVDS系列20:Xilinx 7系ISERDESE2原语(一)
fpga开发
XINVRY-FPGA2 天前
XCZU47DR-2FFVG1517I Xilinx FPGA AMD ZynqUltraScale+ RFSoC
人工智能·嵌入式硬件·fpga开发·信息与通信·信号处理·射频工程·fpga