一、实验目的
- 学习ARMSIM#环境下虚拟开发板的控制。
- 编写简单程序调用软件中断服务程序实现虚拟LED闪灯的按钮控制。
二、实验要求
编写程序LED.s实现以下功能。
- 实现左右两个LED灯交替闪亮;
- 左右LED灯交替闪亮的时间比有两种选择:2:1、1:2,由两个黑按钮控制,左黑按钮按下为2:1,右黑按钮按下为1:2。
- LED灯交替闪亮时间2:1为模式1,1:2为模式2,分别在模式1时点亮数码管显示“1”,模式2时点亮数码管显示“2”。
- 初始状态为模式1,程序应一直无限循环运行。
三、实验源码
.text
.arm @声明32位ARM指令
.equ SEG_A,0x80 @patterns for 8 segment display
.equ SEG_B,0x40 @byte values for each segment
.equ SEG_C,0x20 @of the 8 segment display
.equ SEG_D,0x08
.equ SEG_E,0x04
.equ SEG_F,0x02
@Clear
swi 0x206 @Clear the board, clear the LCD screen
mov r0,#0 @Both LEDs off
swi 0x201
mov r0,#0 @8-segment blank
swi 0x200
@draw a message to the lcd s