微机原理 跑马灯
(2013-01-11 23:53:28)
标签:
杂谈 |
分类: 汇编 |
(一)设计要求
每隔4秒使两个发光二极管循环依次点亮;每隔3秒使四个发光二极管循环依次点亮;每隔2秒使六个发光二极管循环依次点亮;每隔1秒使八个发光二极管循环依次点亮,共计四种点亮功能。可设置键盘命令键:
按下‘A’~‘D’,分别进入四种点亮功能。
按下‘E’键,从各功能返回,停止显示,等待输入命令。
(二)提示
1.主程序为键盘输入,按‘A’~‘D’命令键,分支到各点亮功能程序段,按‘E’返回键盘输入命令程序段。
2.键盘的管理,定时的时间,可参考软件实验九、十。
3.通过8255A的端口来控制发光二极管,循环到的发光二极管点亮,其他的不亮。循环方向可从左到右,也可以从右到左。
4.8255A控制点亮发光二极管,可参考硬件实验二,8255A并行口实验(二)。
(三)要完成的工作
1.设计出完整的汇编语言程序。
2.上机调试,在实验系统中通过验收。
3.写出课程设计报告,内容包括:设计思想、功能流程图、结果讨论和完整的源程序
;***************************
;跑马灯
;***************************
CODE
OUTSEG
OUTBIT
IN_KEY
LedBuf
PA
PB
PC
PCTL
Start:
MLoop:
Light_a:
Light_b:
Light_c:
Light_d:
Run_light_a: ;选择最右边两个灯L11、L12
DELAY1:
ddd:
mm:
Run_light_b:;选择最右边四个
DELAY2:
ddd1:
mm0:
Run_light_c:;选择最右边六个
DELAY3:
ddd2:
mm1:
Run_light_d:;选择最右边八个
GetKey:
key1:
nkey:
key2:
key3:
key4:
key5:
key6:
fkey:
KeyTable:
code