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

相关推荐
XINVRY-FPGA2 天前
XC7VX690T-2FFG1157I Xilinx AMD Virtex-7 FPGA
arm开发·人工智能·嵌入式硬件·深度学习·fpga开发·硬件工程·fpga
Terasic友晶科技2 天前
【案例展示】友晶科技全息传感器桥接解决方案
科技·fpga开发·holoscan·agilex 5·terasic
学习永无止境@2 天前
Verilog中有符号数计算
图像处理·算法·fpga开发
学习永无止境@2 天前
Sobel边缘检测的MATLAB实现
图像处理·opencv·算法·计算机视觉·fpga开发
fei_sun2 天前
数字芯片流程
fpga开发
YaraMemo2 天前
射频链的构成
5g·fpga开发·信息与通信·信号处理·射频工程
fei_sun2 天前
逻辑设计工程技术基础
fpga开发
fei_sun2 天前
有限状态机设计基础
fpga开发
HIZYUAN2 天前
AG32 MCU可以替代STM32+CPLD吗 (二)
stm32·单片机·嵌入式硬件·fpga开发·agm ag32·国产mcu+fpga·低成本soc
FPGA-ADDA2 天前
第一篇:软件无线电(SDR)概念与架构演进
fpga开发·信号处理·软件无线电·rfsoc·47dr