基于AT89S52单片机的万年历设计 下载本文

内容发布更新时间 : 2024/11/8 18:05:27星期一 下面是文章的全部内容请认真阅读。

洛阳师范学院课程设计说明书(2015)

RET

WRITE: CLR T_CLK

WRITE1: WRITE2: NOP SETB T_RST NOP

MOV A,DS1302_ADDR MOV R4,#8

RRC A

NOP NOP

CLR T_CLK NOP NOP NOP

MOV T_IO,C NOP NOP NOP

SETB T_CLK NOP NOP

DJNZ R4,WRITE1 CLR T_CLK NOP

MOV A,DS1302_DATA MOV R4,#8

RRC A

NOP

CLR T_CLK NOP NOP

MOV T_IO,C NOP NOP

45

洛阳师范学院课程设计说明书(2015)

RD1302: READ: NOP

SETB T_CLK NOP NOP

DJNZ R4,WRITE2 CLR T_RST RET

MOV DS1302_ADDR,#8DH LCALL READ

MOV YEAR,DS1302_DATA

MOV DS1302_ADDR,#8BH LCALL READ

MOV WEEK2,DS1302_DATA

MOV DS1302_ADDR,#89H LCALL READ

MOV MONTH,DS1302_DATA

MOV DS1302_ADDR,#87H LCALL READ

MOV DAY,DS1302_DATA

MOV DS1302_ADDR,#85H LCALL READ

MOV HOUR,DS1302_DATA

MOV DS1302_ADDR,#83H LCALL READ

MOV MIN,DS1302_DATA

MOV DS1302_ADDR,#81H LCALL READ

MOV SEC,DS1302_DATA RET

CLR T_CLK

NOP NOP

SETB T_RST NOP

46

;READ OUT YEAR

;READ OUT WEEK2 ;READ OUT MONTH ;READ OUT DAY ;READ OUT HOUR ;READ OUT MINTUE ;READ OUT SEC

洛阳师范学院课程设计说明书(2015)

MOV A,DS1302_ADDR MOV R4,#8

READ1: RRC A

READ2: MOV T_IO,C NOP NOP NOP

SETB T_CLK NOP NOP NOP

CLR T_CLK NOP NOP

DJNZ R4,READ1 MOV R4,#8

CLR T_CLK

NOP NOP NOP

MOV C,T_IO NOP NOP NOP NOP NOP RRC A NOP NOP NOP NOP

SETB T_CLK NOP

DJNZ R4,READ2

47

洛阳师范学院课程设计说明书(2015)

MOV DS1302_DATA,A CLR T_RST RET

;//*************200ms定时******************// TT0: MOV TH0,#0BH

MOV TL0,#0E0H DJNZ R7,INN2 MOV R7,#10 LCALL DS18B20 LCALL SHOW

INN2: RETI

;//************7219****************// DISIN0: MOV R4,#09H

;译码方式寄存器 ;#0ff=0-7位均译为B码 ;调用写入命令子程序 ;亮度寄存器 ;亮度值

;扫描界限寄存器 ;显示7位 ;停机寄存器 ;正常工作

MOV R5,#0FFH LCALL DINPUT MOV R4,#0AH MOV R5,#08H LCALL DINPUT MOV R4,#0BH MOV R5,#07H LCALL DINPUT MOV R4,#0CH MOV R5,#01H LCALL DINPUT

RET

;****************7219显示子程序********************** SHOW:

MOV A,40H MOV B,#10 DIV AB MOV G_BIT,B MOV H_BIT,A MOV

R4,#01H

MOV R5,H_BIT

48

洛阳师范学院课程设计说明书(2015)

LCALL DINPUT MOV R4,#02H MOV

R5,G_BIT

LCALL DINPUT MOV A,EF_BIT

MOV B,#10H DIV AB MOV E_BIT,B MOV F_BIT,A MOV

R4,#03H

MOV R5,F_BIT LCALL DINPUT MOV R4,#04H MOV

R5,E_BIT

LCALL DINPUT MOV A,CD_BIT

MOV B,#10H DIV AB MOV C_BIT,B MOV D_BIT,A MOV

R4,#05H

MOV R5,D_BIT LCALL DINPUT MOV R4,#06H MOV

R5,C_BIT

LCALL DINPUT MOV A,AB_BIT MOV B,#10H DIV AB MOV A_BIT,B MOV B_BIT,A MOV

R4,#07H

MOV R5,B_BIT LCALL DINPUT

49