第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秒递增。
相关推荐
!chen8 小时前
自适应滤波算法FPGA实现思路
算法·fpga开发
华舞灵瞳8 小时前
学习FPGA(七)正弦信号合成
学习·fpga开发
葡萄杨8 小时前
【软件使用】Icarus Verilog仿真
fpga开发
s09071368 小时前
常用FPGA实现的图像处理算法
图像处理·算法·fpga开发
s090713615 小时前
FPGA实现Gamma校正的系统性指南
图像处理·fpga开发·gama校正
读书点滴15 小时前
FPGA中如何获取任何一条路径的延时
fpga开发
minglie115 小时前
嵌入式协程AlarmProtothread
mcu·fpga开发
Godspeed Zhao16 小时前
自动驾驶中的传感器技术79——Sensor Fusion(2)
人工智能·fpga开发·自动驾驶
ShiMetaPi17 小时前
GM-3568JHF丨ARM+FPGA异构开发板系列教程:外设教程 07 音频
arm开发·fpga开发·音视频·fpga·rk3568
bitQ1 天前
ZBoot-MP:ZYNQ 多介质 Linux 启动与升级解决方案
fpga开发