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

**Q:**怎样修改HPS Timer 0定时器产生的中断周期?

**A:**在上一期实验的基础上,可以修改按键中断服务程序,实现红色LED上的计数值递增的速率,主程序和其余代码文件不用修改。

实现以下功能:按下KEY0时,RUN变量的值在1和0之间切换,也使得COUNT变量的值保持不变或递增;按下KEY1时,COUNT值递增的速率加倍;按下KEY2时速率减半;通过在按键中断服务例程中停止HPS Timer 0定时器,修改定时器中用到的load值,然后重新启动定时器来实现这个功能。

修改过的程序烧录到DE1-SoC开发板后,相比上一期的实验新实现的功能现象:

  • 按KEY1,计数速度加倍:第一次按下KEY1,计数值每隔0.125秒递增,第二次按下KEY1,计数值每隔0.0625秒递增;
  • 按KEY2,计数速度减半:第一次按下KEY2,计数值每隔0.5秒递增,第二次按下KEY2,计数值每隔1秒递增。
相关推荐
北京青翼科技2 小时前
【PXIE301-211】基于PXIE总线的16路并行LVDS数据采集、1路光纤数据收发处理平台
图像处理·fpga开发·信号处理
霖005 小时前
PCIe数据采集系统
数据结构·经验分享·单片机·嵌入式硬件·fpga开发·信号处理
FakeOccupational7 小时前
fpga系列 HDL : Microchip FPGA开发软件 Libero Soc 安装 & license申请
fpga开发
千歌叹尽执夏9 小时前
FPGA: UltraScale+ bitslip实现(ISERDESE3)
fpga开发·training·ultrascale+·bitslip
zly886537211 小时前
MLX5 Linux 驱动代码分析
linux·运维·fpga开发
ALINX技术博客13 小时前
【ALINX 实战笔记】FPGA 大神 Adam Taylor 使用 ChipScope 调试 AMD Versal 设计
笔记·fpga开发
Yesheldon1 天前
Cadence 高速系统设计流程及工具使用三
嵌入式硬件·fpga开发·硬件架构·硬件工程·智能硬件
搬砖的小码农_Sky1 天前
FPGA:Xilinx Kintex 7实现DDR3 SDRAM读写
fpga开发·硬件架构·硬件工程
小眼睛FPGA1 天前
why FPGA喜欢FMC子卡?
fpga开发
tiantianuser1 天前
NVMe简介1
fpga开发·nvme·可编程逻辑·verilogy