第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秒递增。
相关推荐
幻智星科技15 小时前
纯FPGA网络通信实现微秒级确定性延迟
网络协议·fpga开发·硬件架构
泡泡糖的中文规格书16 小时前
HDLbits 1.5 学习笔记
fpga开发
幻智星科技18 小时前
FPGA不同品牌开发平台约束文件迁移难题解析
fpga开发·架构·硬件架构
幻智星科技19 小时前
Karatsuba与CSD优化FPGA大数乘法
c++·fpga开发·密码学
星夜离尘5621 小时前
FPGA 实战:W1C 中断状态寄存器,事件置位与软件清除撞在同一拍怎么办
fpga开发
像枫一样21 小时前
STM32串口轮询收发实战教程
arm开发·c++·stm32·单片机·嵌入式硬件·fpga开发·51单片机
传感器与混合集成电路1 天前
DLM8676计数控制集成电路DC-DC一体化与RS422隔离接口设计
fpga开发
嵌入式软硬件攻城狮2 天前
9.读写DDR测试
fpga开发
幻智星科技2 天前
多通道数据采集DMA设计详解
fpga开发·udp·硬件架构
泡泡糖的中文规格书2 天前
HDLbits 1.4 学习笔记
fpga开发