60S倒计时实验报告

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验四 60S倒计时实验

一、实验目的:

1.通过AT89C51的定时器实现60S倒计时,显示采用两位数码管动态显示。

2.用PROTEUS 设计,仿真基于AT89C51单片机的60S倒计时实验。

二、PROTEUS电路设计:

三、实验仪器和设备

PC机、PROTEUS软件或W-A-51综合开发学习板

四、源程序设计:

1.程序

ORG 0000H

AJMP MAIN

AJMP T0INT

ORG 0030H

MAIN:

MOV TMOD,#01H ;工作方式1

MOV TH0,#3CH

MOV TL0,#0B0H ;初始值15536,50MS一中断MOV R0,#20 ;20次为1S

MOV R4,#60 ;60S开始倒计时

SETB EA ;开中断

SETB ET0 ;中断允许

SETB TR0 ;定时器T0开始计算

MOV DPTR,#TABLE

MAIN1:

ACALL DISP

AJMP MAIN1

DISP:

MOV A,R4

MOV B,#10

DIV AB ;当前值除以10

MOV 20H,A ;得出的商送给十位

MOV 21H,B ;得出的余数送给个位

MOV A,20H ;十位显示

MOVC A,@A+DPTR

MOV P1,A

SETB P2.0

LCALL DELAY

CLR P2.0

MOV A,21H ;个位显示

MOVC A,@A+DPTR

MOV P1,A

SETB P2.1

LCALL DELAY

CLR P2.1

RET

T0INT:

MOV TH0,#3CH

MOV TL0,#0B0H

DJNZ R0,RTI

DEC R4

CJNE R4,#0,RTI

MOV R4,#60

RTI:

RETI

DELAY: ;延时1S

MOV R6,#10

DL0:

MOV R5,#50

DJNZ R5,$

DJNZ R6,DL0

RET

TABLE:

DB 40H,79H,24H,30H,19H,12H,02H,78H,00H,10H END

相关文档
最新文档