第48篇 汇编语言实现中断<四>

Q:怎样编写汇编语言代码配置使用按键和定时器中断?

A:本次实验同样设置Nios II堆栈指针,并使能两个中断源:按键(KEY)和间隔定时器(Interval Timer)。主程序中调用CONFIG_TIMER和CONFIG_KEYS子程序对按键和间隔定时器进行配置,使间隔定时器产生某个周期的中断。

主程序会执行一个无限循环将全局变量COUNT的值写到DE2-115开发板的红色LED;exception_handler.s为间隔定时器的中断服务程序,实现COUNT的值每隔0.25s增加1;另外还需创建按键中断服务程序key_isr.s和定时器中断程序interval_timer.s。

image-20240612161302140

烧录程序到DE2-115开发板上看到实验现象:红色LED上显示的计数值每隔0.25秒递增1,LEDR[17:0]从全熄灭到全点亮状态循环显示;按下KEY[3:0]任意一个按键会停止计数,再次按下任意一个按键会继续计数。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值