第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秒递增。
相关推荐
阿让啊21 小时前
C语言strtol 函数使用方法
c语言·数据结构·c++·单片机·嵌入式硬件
Florence231 天前
计算机组成原理:GPU架构、并行计算、内存层次结构等
c语言
不吃鱼的羊1 天前
启动文件Startup_vle.c
c语言·开发语言
歪歪1001 天前
qt creator新手入门以及结合sql server数据库开发
c语言·开发语言·后端·qt·数据库开发
凤年徐1 天前
C++类和对象(上):从设计图到摩天大楼的构建艺术
c语言·开发语言·c++·类和对象
CYRUS_STUDIO1 天前
LLVM 不止能编译!自定义 Pass + 定制 clang 实现函数名加密
c语言·c++·llvm
CYRUS_STUDIO1 天前
OLLVM 移植 LLVM 18 实战,轻松实现 C&C++ 代码混淆
c语言·c++·llvm
南山十一少1 天前
STM32CubeMX + HAL 库:基于 I²C 通信的 BMP280气压海拔测量
c语言·stm32·嵌入式硬件
lingran__2 天前
C语言制作扫雷游戏(拓展版赋源码)
c语言·算法·游戏
77qqqiqi2 天前
学习结构体
c语言·学习