第28篇 基于ARM A9处理器用C语言实现中断<四>

**Q:**可以改变上一期实验工程里红色LED计数的速率吗?

**A:**在按键中断服务程序中使HPS Timer 0停止计数,修改定时器中使用的预设计数值,然后重启定时器;所有的修改都是在按键中断服务程序中完成。主程序和其他代码都不需要变动。

修改之后实现的功能是:按下KEY0会使count变量递增或保持不变。当按下KEY1后,count递增的速度加倍;按下KEY2后,count递增的速度减半。

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

  • 按KEY1,计数速度加倍:第一次按下KEY1,计数值每隔0.125秒递增,第二次按下KEY1,计数值每隔0.0625秒递增;
  • 按KEY2,计数速度减半:第一次按下KEY2,计数值每隔0.5秒递增,第二次按下KEY2,计数值每隔1秒递增。
相关推荐
双叶8364 小时前
(C语言)虚数运算(结构体教程)(指针解法)(C语言教程)
c语言·开发语言·数据结构·c++·算法·microsoft
序属秋秋秋7 小时前
算法基础_基础算法【高精度 + 前缀和 + 差分 + 双指针】
c语言·c++·学习·算法
想睡hhh7 小时前
c语言数据结构——八大排序算法实现
c语言·数据结构·排序算法
KeithTsui7 小时前
GCC RISCV 后端 -- 控制流(Control Flow)的一些理解
linux·c语言·开发语言·c++·算法
JCBP_9 小时前
数据结构3
服务器·c语言·数据结构·vscode
南玖yy12 小时前
数据结构C语言练习(栈)
c语言·数据结构·算法
m0_5557629012 小时前
struct 中在c++ 和c中用法区别
java·c语言·c++
南玖yy13 小时前
数据结构C语言练习(两个队列实现栈)
c语言·数据结构·算法
北极象14 小时前
用C实现一个最简单的正则表达式引擎
c语言·正则表达式·php
JCBP_15 小时前
数据结构4
运维·c语言·数据结构·vscode