资源描述
实验五:定时器实验
(2学时)
一、 实验目的
1、熟悉89C51单片机的定时中断原理;
2、进一步熟悉89C51与数码管的接口技术;
3、掌握89C51定时/计数器应用的编程方法。
二、实验内容
利用51单片机T1中断方式1,编写60秒倒计时输出到数码管显示,0秒停止的程序。晶振频率为6MHZ。仿真原理图如下:
三、实验设备
微机1台,实验板1块
四、实验报告要求
1、写出实验目的、实验内容、实验设备、和源程序清单(加注释),画出原理图和流程图;
2、写出运行结果,并分析其是否正确;
3、说明实验中遇到的问题及解决的方法;
4、用实验报告纸手写实验报告。
程序:
COUNT EQU 40H ;计数标号
ORG 0000H
LJMP MAIN
ORG 000BH
LJMP ITT0
ORG 0030H
MAIN:MOV SP,#30H
MOV COUNT,#60
MOV TMOD,#01H
MOV TH0,9EH
MOV TL0,#58H
LCALL DELAY
SETB EA
SETB ET0
SETB TR0
LP1:MOV DPTR,#TAB
MOV A,COUNT
MOV B,#10
DIV AB
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#01H
LCALL D2MS
MOV P2,#00H
MOV A,B
MOVC A,@A+DPTR
MOV P0,A
MOV P2,#02H
LCALL D2MS
MOV P2,#00H
LJMP LP1
ITT0:MOV TH0,9EH
MOV TL0,#58H
DJNZ R3,EXIT
DEC COUNT
MOV A,COUNT
JNZ EXIT ;判断是否A为0,不为0转
CLR TR0
EXIT:RETI
D2MS:MOV R3,#10
D1:MOV R4,#100
DJNZ R4,$
DJNZ R3,D1
RET
DELAY:MOV R0,#05H
D5:MOV R1,#250
D2:MOV R2,#200
D3:DJNZ R2,D3
D4:DJNZ R1,D2
DJNZ R0,D5
RET
TAB:DB 28H,7EH,0A2H,62H,74H,61H,21H,7AH,20H,60H
END
展开阅读全文