第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秒递增。
相关推荐
小魏每天都学习1 小时前
【算法——c/c++]
c语言·c++·算法
智码未来学堂2 小时前
探秘 C 语言算法之枚举:解锁解题新思路
c语言·数据结构·算法
彷徨而立4 小时前
【C/C++】strerror、GetLastError 和 errno 的含义和区别?
c语言·c++
代码无bug抓狂人5 小时前
动态规划(附带入门例题)
c语言·算法·动态规划
恶魔泡泡糖6 小时前
51单片机串口通信
c语言·单片机·嵌入式硬件·51单片机
知无不研7 小时前
c语言动态内存规划
c语言·动态内存管理·内存泄露·基础知识·malloc·realloc·calloc
3108748768 小时前
0005.C/C++学习笔记5
c语言·c++·学习
历程里程碑9 小时前
Linxu14 进程一
linux·c语言·开发语言·数据结构·c++·笔记·算法
JiL 奥9 小时前
Nexus制品归档(c/c++项目)
c语言·c++
梵刹古音9 小时前
【C语言】 字符型变量
c语言·开发语言·嵌入式