第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秒递增。
相关推荐
CinzWS27 分钟前
基于Cortex-M3 SoC的eFuse模块--实现与验证考量
fpga开发·架构·efuse
jumu2022 小时前
CEEMDAN - SE:神奇的信号处理组合
fpga开发
坏孩子的诺亚方舟3 小时前
FPGA系统架构设计实践6_工程实现概述
fpga开发·xilinx·实现
FPGA小c鸡3 小时前
Verilog核心语法速查:可综合写法、运算符陷阱与SV增强(附模板)
fpga开发
步达硬件3 小时前
【FPGA】Verilog HDL编辑、RTL仿真、网表生成主流软件
fpga开发
太爱学习了13 小时前
XILINX SRIOIP核详解、FPGA实现及仿真全流程(Serial RapidIO Gen2 Endpoint v4.1)
fpga开发·srio·dsp
HIZYUAN1 天前
嵌入式开发踩坑记: AG32硬件设计指南(一)
stm32·单片机·嵌入式硬件·fpga开发·硬件设计·最小系统·agm ag32
上海全爱科技1 天前
全爱科技推出 摩尔线程E300+FPGA开发板HOUYI-1000V
科技·fpga开发
扣脑壳的FPGAer1 天前
Xilinx远程更新之axi-quad-spi IP core
fpga开发
Troke1 天前
串行数据与并行数据转换(1)
fpga开发