📄 秒钟0.lst
字号:
8051 Assembler Version 1.00 12/30/101 05:35:15 Page 1
H:\89s52编程器实验板\ASM程序初级\秒钟0\秒钟0.a51
1 0000 ORG 0000H
2 0000 020030 BEGIN: LJMP INIT
3 0003 ORG 0003H ;INT0
4 0003 32 RETI
5 000B ORG 000BH ;T0 INT
6 000B 0200CE T0: LJMP T0INTSR
7 000E 32 RETI
8 0013 ORG 0013H ;1NT1
9 0013 32 RETI
10 001B ORG 001BH ;T1 INT
11 001B 32 RETI
12 0023 ORG 0023H ;S PORT INT
13 0023 32 RETI
14 002B ORG 002BH ;T2 INT
15 002B 32 RETI
16 0030 ORG 0030H
17 0030 ;=====================================================
18 0030 ;8032 RAM 00H--FFH CLEAR 0
19 0030 INIT:
20 0030 78FF MOV R0,#0FFH
21 0032 7400 MOV A, #00H
22 0034 CLE0FFH:
23 0034 F6 MOV @R0,A
24 0035 D8FD DJNZ R0,CLE0FFH
25 0037
26 0037 ;SET STACK AREA 70H--7FH
27 0037 758170 MOV SP,#70H
28 003A ;TIMER INIT
29 003A 758901 MOV TMOD,#01H
30 003D 758AFC MOV TL0,#0FCH ;2 E+16 = 65536 = 55536 + 10000(0.05S)
31 0040 758CD8 MOV TH0,#0D8H ;D8F0H=55536
32 0043 ;ENABLE INTERRUPT
33 0043 D2AF SETB EA
34 0045 D2A9 SETB ET0
35 0047 ;START UP T0
36 0047 D28C SETB TR0
37 0049 ;SYSTEM NORMAL ,IDENTIFIER "0.0"
38 0049 75D000 MOV PSW,#00H
39 004C ;====================================================================
40 004C 00 ENTRK1: NOP
41 004D 120055 LCALL TICHANG;DISPLAY CHARACTER CHANGE
42 0050 120068 LCALL DISPLAY;DISPLAY SUBRUTIN
43 0053 80F7 SJMP ENTRK1
44 0055 ;====================================================================
45 0055 ; 2. TICHANG......TIME DATA CHARACTER CHANGE
46 0055 ; 4. DISPLAY......DISPLAY SUBRUTIN
47 0055 ; 6. DELAY60......DELAY 60mS
48 0055 ; 7. DCCHANG......DISPLAY CHARACTER CHANGE
49 0055 ;--------------------------------------------------------------------
50 0055 ;2.------------------------------------------------------------------
51 0055 ;TICHANG
52 0055 ; TIME DATA CHARACTER CHANGE
53 0055 ; 2. RAM BIT 00H --PRESS TIMESET KEY FLAG 1=PRESSED, 0=NOT
54 0055 ;
55 0055 ;--------------------------------------------------------------------
56 0055 00 TICHANG:NOP
57 0056 7F04 MOV R7,#4
8051 Assembler Version 1.00 12/30/101 05:35:15 Page 2
H:\89s52编程器实验板\ASM程序初级\秒钟0\秒钟0.a51
58 0058 786F MOV R0,#6FH
59 005A 7933 MOV R1,#33H
60 005C E7 TCHANG0:MOV A,@R1
61 005D 1200B7 LCALL DCCHANG ;DISPLAY CHARACTER CHANGE
62 0060 F4 CPL A
63 0061 F6 MOV @R0,A
64 0062 18 DEC R0
65 0063 19 DEC R1
66 0064 DFF6 DJNZ R7,TCHANG0
67 0066 00 TICHOUT:NOP
68 0067 22 RET
69 0068 ;--------------------------------------------------------------------
70 0068
71 0068 ;4.------------------------------------------------------------------
72 0068 ;DISPLAY:
73 0068 ; DISPLAY SUBRUTIN
74 0068 ;
75 0068 ; RAM:6FH CLOCK HORE 10 BIT
76 0068 ; 6EH CLOCK HORE 1 BIT
77 0068 ; 6DH CLOCK MIN 10 BIT
78 0068 ; 6CH CLOCK MIN 1 BIT
79 0068 ;
80 0068 ;--------------------------------------------------------------------
81 0068 00 DISPLAY:NOP
82 0069 ; CLR P1.3
83 0069 D293 SETB P1.3
84 006B 856F80 MOV P0,6FH
85 006E ; SETB P1.0
86 006E C290 CLR P1.0
87 0070 1200A7 LCALL DELAY60 ;DELAY 60MS
88 0073 1200A7 LCALL DELAY60 ;DELAY 60MS
89 0076 ; CLR P1.0
90 0076 D290 SETB P1.0
91 0078
92 0078 856E80 MOV P0,6EH
93 007B ; SETB P1.1
94 007B C291 CLR P1.1
95 007D 1200A7 LCALL DELAY60 ;DELAY 60MS
96 0080 1200A7 LCALL DELAY60 ;DELAY 60mS
97 0083 ; CLR P1.1
98 0083 D291 SETB P1.1
99 0085
100 0085 856D80 MOV P0,6DH
101 0088 ; SETB P1.2
102 0088 C292 CLR P1.2
103 008A 1200A7 LCALL DELAY60 ;DELAY 60MS
104 008D 1200A7 LCALL DELAY60 ;DELAY 60MS
105 0090 ; CLR P1.2
106 0090 D292 SETB P1.2
107 0092
108 0092 856C80 MOV P0,6CH
109 0095 ; SETB P1.3
110 0095 C293 CLR P1.3
111 0097 1200A7 LCALL DELAY60 ;DELAY 60MS
112 009A 1200A7 LCALL DELAY60 ;DELAY 60MS
113 009D D294 SETB P1.4
114 009F D297 SETB P1.7
8051 Assembler Version 1.00 12/30/101 05:35:15 Page 3
H:\89s52编程器实验板\ASM程序初级\秒钟0\秒钟0.a51
115 00A1 D296 SETB P1.6
116 00A3 D295 SETB P1.5
117 00A5 22 RET
118 00A6 ;--------------------------------------------------------------------
119 00A6
120 00A6
121 00A6 22 RET
122 00A7 ;--------------------------------------------------------------------
123 00A7 ;6.------------------------------------------------------------------
124 00A7 ;DELAY60:
125 00A7 ; DELAY 100mS FOR NEXT RANGING
126 00A7
127 00A7 ;--------------------------------------------------------------------
128 00A7 C0D0 DELAY60:PUSH PSW
129 00A9 75D000 MOV PSW,#00H
130 00AC 7B06 MOV R3,#6 ;#10 0.5ms * 10 = 5ms 1997-9-3
131 00AE 7CFA W60MS: MOV R4,#0FAH ;0FAH =250
132 00B0 DCFE W500US1:DJNZ R4,W500US1 ;TIME = 2US 2 US * 250 = 0.5 MS
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -