當前位置:編程學習大全網 - 編程語言 - 哪位大神能幫我寫壹個基於單片機C51的電子時鐘設計報告?

哪位大神能幫我寫壹個基於單片機C51的電子時鐘設計報告?

老師給我的

電子鐘設計

1、 電路圖:

2功能實現:

(1. 把“單片機系統”區域中的P1.0-P1.7端口用8芯排線連接到“動態數碼顯示”區域中的A-H端口上;

(2. 把“單片機系統:區域中的P3.0-P3.7端口用8芯排線連接到“動態數碼顯示”區域中的S1-S8端口上;

(3. 把“單片機系統”區域中的P0.0/AD0、P0.1/AD1、P0.2/AD2端口分別用導線連接到“獨立式鍵盤”區域中的SP3、SP2、SP1端口上;

3、程序框圖:

6. 匯編源程序

HOURK BIT P1.2

MINITEK BIT P1.1

SECONDK BIT P1.0

SECOND EQU 30H

MINITE EQU 31H

HOUR EQU 32H

ORG 00H

LJMP START

ORG 0BH

LJMP INT_T0

ORG 0030H

START:

MOV SECOND,#00H

MOV MINITE,#00H

MOV HOUR,#12

MOV R0,#00H

MOV TMOD,#01H

MOV TH0,#3CH

MOV TL0,#0B0H

SETB EA

SETB ET0

SETB TR0

NEXT: MOV A,#7FH

MOV P3,A

MOV A,HOUR

MOV B,#10

DIV AB

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P2,A

CALL DELAY

MOV A,#0BFH

MOV P3,A

MOV A,B

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P2,A

CALL DELAY

MOV A,#0DFH

MOV P3,A

mov p2,#40h

call delay

mov a,#0efh

mov p3,a

MOV A,MINITE

MOV B,#10

DIV AB

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P2,A

CALL DELAY

MOV A,#0F7H

MOV P3,A

MOV A,B

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P2,A

CALL DELAY

MOV A,#0FBH

MOV P3,A

mov p2,#40h

call delay

MOV A,#0FDH

MOV P3,A

MOV A,SECOND

MOV B,#10

DIV AB

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P2,A

CALL DELAY

MOV A,#0FEH

MOV P3,A

MOV A,B

MOV DPTR,#TABLE

MOVC A,@A+DPTR

MOV P2,A

CALL DELAY

WT: JB SECONDK,NK1

LCALL DELY10MS

JB SECONDK,NK1

JNB SECONDK,$

INC SECOND

MOV A,SECOND

CJNE A,#60,NK1

MOV SECOND,#00H

NK1: JB MINITEK,NK2

LCALL DELY10MS

JB MINITEK,NK2

JNB MINITEK,$

INC MINITE

MOV A,MINITE

CJNE A,#60,NK2

MOV MINITE,#00H

NK2: JB HOURK,NK3

LCALL DELY10MS

JB HOURK,NK3

JNB HOURK,$

INC HOUR

MOV A,HOUR

CJNE A,#24,NK3

MOV HOUR,#00

NK3:

MOV A,R0

CJNE A,#20,NEXT1

MOV R0,#0

INC SECOND

MOV A,SECOND

CJNE A,#60,NEXT1

MOV SECOND,#0

INC MINITE

MOV A,MINITE

CJNE A,#60,NEXT1

MOV MINITE,#0

INC HOUR

MOV A,HOUR

CJNE A,#24,NEXT1

MOV HOUR,#0

next1:JMP NEXT

TABLE:DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,40H

INT_T0: CLR TR0

INC R0

MOV TH0,#3CH

MOV TL0,#0B0H

SETB TR0

RETI

DELAY:

MOV R6,#2

D1: MOV R7,#248

DJNZ R7,$

DJNZ R6,D1

RET

DELY10MS:

MOV R6,#10

DD1: MOV R7,#248

DJNZ R7,$

DJNZ R6,DD1

RET

END

  • 上一篇:現在安防行業裏,AD矩陣主機太亂,如何區別?真假如何鑒別?
  • 下一篇:四川14歲男孩高221厘米破世界紀錄,如此身高給其生活帶來何種影響?
  • copyright 2024編程學習大全網