实验六 并行口输出:彩灯移动实验
一.实验目的
1.掌握MCS-51单片机并行口的程序设计和调试方法;
2.熟悉用IBM-PC交叉汇编调试软件MBUG机器汇编及ME-5103在线仿真器调试。
二.实验设备
1.ME-5103在线仿真器1台;
2.IBM-PC微机1台;
3.并行口实验接口板1块;
4.直流稳压电源1台。
三.实验内容
1.程序结构采用主程序和中断服务子程序结构
2.定时中断程序,并行口输出,控制彩灯移动
定时器0于方式1,16位,10ms中断一次
40H 10ms计数单元
41H 初值为01101101B
位地址 00H=1
定时方式1为10MS:THX=0ECH,TLX=78H
3.参考程序
;
DISP EQU 0DE00H ;显示子程序入口
;
ORG 0000H
START: AJMP MAIN
;
ORG 000BH ;定时器0中断服务程序入口
AJMP TINT0
;
ORG 0030H
MAIN: MOV R0,#39H ;显示缓冲区初始化
MAIN_0: MOV @R0,#0
INC R0
CJNE R0,#40H,MAIN_0
MOV 41H,#01101101B
SETB 00H
MOV TMOD,#01H
MOV IE,#10000010B
MOV TH0,#0ECH;10ms:EC78H
MOV TL0,#78H
SETB TR0
MAIN_1: ACALL CONT ;主程序循环
SJMP MAIN_1
;
CONT: LCALL DISP ;控制程序
RET
;
;定时器0中断服务程序
TINT0: MOV TH0,#0ECH
MOV TL0,#78H
PUSH ACC ;保护现场
PUSH PSW
INC 40H
MOV A,40H
CJNE A,#50,TINT0R
MOV 40H,#0
MOV A,41H
MOV C,00H
RRC A
MOV 41H,A
MOV 00H,C
MOV 3FH,A ;输出显示缓冲
TINT0R: POP PSW ;恢复现场
POP ACC
RETI
四.实验报告
1.写出本程序调试过程和运行结果.
2.灯移一次时间多少?如何改?
3.本实验灯移动方向相反程序修改哪里?
4.每移动一次计数累计显示修改什么地方?