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

相关推荐
阿钱真强道6 小时前
24 鸿蒙LiteOS GPIO中断实战:从原理到上升沿/下降沿详解
harmonyos·中断·rk·liteos·开源鸿蒙·瑞芯微·rk2206
szxinmai主板定制专家8 小时前
RK3568 + CODESYS+实时系统运动控制器PLC,支持 AI 视觉目标检测,预测性维护,混合多系统部署,多路模拟量采集
arm开发·人工智能·嵌入式硬件·fpga开发
GateWorld10 小时前
LCD显示技术完全指南:原理·制造·驱动·FPGA实现之驱动二
fpga开发·lcd显示·fpga点亮屏幕·minilvds
GateWorld13 小时前
LCD显示技术完全指南:原理·制造·驱动·FPGA实现之驱动一
fpga开发·lcd显示·minilvds·fpga点屏
XMAIPC_Robot13 小时前
深度无人机自动驾驶仪,中小型无人机硬件在环仿真飞行
运维·arm开发·人工智能·fpga开发·无人机·边缘计算
吴声子夜歌14 小时前
Java——线程的中断
java·中断
小眼睛FPGA1 天前
【紫光HiYou开源入门轻量级PCIE开发板PG2L25G】实验例程1-基于紫光FPGA 的LED 流水灯
fpga开发
不会武功的火柴1 天前
SystemVerilog语法(8)-有限状态机(FSM)
嵌入式硬件·fpga开发·自动化·ic验证·rtl·uvm方法学
Kent Gu1 天前
Lattice FPGA选型
fpga开发
Terasic友晶科技1 天前
答疑解惑|为DE25-Nano开发板配置Linux kernel时.config文件没有起作用是什么原因?
linux·服务器·fpga开发·linux kernel·de25-nano