📄 test.lst
字号:
00DF 134 RS232TEST:
00DF 758920 135 MOV TMOD,#20H ;
00E2 758DFD 136 MOV TH1,#0FDH ;FAH=9600BPS串口速度
00E5 758BFD 137 MOV TL1,#0FDH
00E8 758700 138 MOV PCON,#00H ;不加速
00EB 759850 139 MOV SCON,#50H
00EE D28E 140 SETB TR1
00F0 7455 141 MOV A,#55H ;发送55H
00F2 F599 142 MOV SBUF,A
00F4 C299 143 CLR TI
00F6 3098FD 144 JNB RI,$
00F9 C298 145 CLR RI
00FB A899 146 MOV R0,SBUF
00FD E8 147 MOV A,R0
00FE B4551D 148 CJNE A,#55H,R232ERR
0101 753311 149 MOV SJQW,#11H ;" "
0104 753202 150 MOV SJBW,#2
0107 753103 151 MOV SJSW,#3
010A 753002 152 MOV SJGW,#2
010D 12034E 153 _232LO: LCALL DISPLAY
0110 D2B3 154 SETB SW2
0112 20B3F8 155 JB SW2,_232LO
0115 120330 156 _232KEY: LCALL D10MS
0118 30B3FA 157 JNB SW2,_232KEY
011B 020121 158 LJMP DATEST
011E 02011E 159 R232ERR: LJMP $
160
161 ;DA测试
0121 75330D 162 DATEST: MOV SJQW,#0DH
0124 75320A 163 MOV SJBW,#0AH
0127 753102 164 MOV SJSW,#2
012A 753005 165 MOV SJGW,#5 ; 显示DA25
012D 75A07F 166 MOV P2,#7FH ;输出2.5V
0130 12034E 167 LCALL DISPLAY
0133 D2B4 168 SETB SW3
0135 20B4E9 169 JB SW3,DATEST
0138 120330 170 DAKEY1: LCALL D10MS
013B 30B3FA 171 JNB SW2,DAKEY1
013E 75330D 172 DATE: MOV SJQW,#0DH
0141 75320A 173 MOV SJBW,#0AH
0144 753105 174 MOV SJSW,#5
0147 753000 175 MOV SJGW,#0 ; 显示DA50
014A 75A0FF 176 MOV P2,#0FFH ;输出5V
014D 12034E 177 LCALL DISPLAY
0150 D2B2 178 SETB SW1
0152 20B2E9 179 JB SW1,DATE
0155 120330 180 DAKEY2: LCALL D10MS
0158 30B4FA 181 JNB SW3,DAKEY2
182 ;声测试
015B 7AFA 183 SOUND: MOV R2,#250 ;响250个周期
015D C2B7 184 SLOP1: CLR SPK ;使V1 9015导通
015F 3175 185 ACALL SOUD10MS ;延时
0161 D2B7 186 SETB SPK ;使V1 9015截止
0163 317E 187 ACALL SOUD1MS
0165 DAF6 188 DJNZ R2,SLOP1
0167 D2B3 189 SETB SW2
0169 20B3EF 190 JB SW2,SOUND ;结束
A51 MACRO ASSEMBLER TEST 21/05/03 15:23:15 PAGE 4
016C 120330 191 SPKKEY: LCALL D10MS
016F 30B2FA 192 JNB SW1,SPKKEY
0172 020003 193 LJMP good ;返回
194 ;10MS延时子程序
0175 195 SOUD10MS:
0175 7802 196 MOV R0,#2
0177 793C 197 SDL0OOP:MOV R1,#60 ;改变R0的数值将改变声音频率
0179 D9FE 198 DJNZ R1,$
017B D8FA 199 DJNZ R0,SDL0OOP
017D 22 200 RET
017E 7F6E 201 SOUD1MS: MOV R7,#110 ;保证与蜂鸣器频率一致
0180 DFFE 202 DJNZ R7,$
0182 22 203 RET
204
205
206 ;★★93C46读写子程序★★★★★★★★★★★★★★★★★★★★★★★★
207 ;资源:程序中用到R6,操作地址为_93ADD,收、送数据_93DATA
208 ; 使用8位操作,PRG=0
209 ;2002/5/15调试通过
210 ;定义:
211 ;CS BIT
212 ;DIO BIT
213 ;ADDH EQU
214 ;ADDL EQU
215 ;_93ADD EQU
216 ;_93DATA EQU
217 ;调用程序
0183 218 AT93READ: ;读
0183 C2B4 219 CLR CS ;初始
0185 C2B6 220 CLR DIO
0187 752003 221 MOV ADDH,#11B ;读指令110
018A 752100 222 MOV ADDL,#00000000B ;传送指令和地址
018D E523 223 MOV A,_93ADD
018F 4521 224 ORL A,ADDL
0191 F521 225 MOV ADDL,A ;地址加入
0193 12023F 226 LCALL READDATA ;读指令
0196 22 227 RET
228
0197 229 AT93WRIT: ;写允许
0197 C2B4 230 CLR CS ;初始
0199 C2B6 231 CLR DIO
019B 752002 232 MOV ADDH,#10B
019E 752160 233 MOV ADDL,#01100000B ;9346允许擦除指令
01A1 1201BD 234 LCALL WRICOMM ;写允许擦写指令
235 ;写数据
01A4 752002 236 MOV ADDH,#10B ;写指令101
01A7 752180 237 MOV ADDL,#10000000B ;传送指令和地址
01AA E523 238 MOV A,_93ADD
01AC 4521 239 ORL A,ADDL
01AE F521 240 MOV ADDL,A ;地址合成加入
01B0 1201F0 241 LCALL WRIDATA ;将_93DATA中的数据写到片中
01B3 242 EWEND: ;写禁止
01B3 752002 243 MOV ADDH,#10B
01B6 752100 244 MOV ADDL,#00000000B
01B9 1201BD 245 LCALL WRICOMM ;写禁止
01BC 22 246 RET
247
248 ;******* 9 3公共子程序************************************
249 ;写不含地址的指令,如,写允许、禁止、擦除等
250 ;**************************************************************
01BD D2B4 251 WRICOMM: SETB CS ;复位
01BF 7E08 252 MOV R6,#8
01C1 8520E0 253 MOV ACC,ADDH ;送出指令字
01C4 33 254 WCOM: RLC A
01C5 92B6 255 MOV DIO,C ;移出到C并送DIO端
01C7 12028E 256 LCALL D15US
A51 MACRO ASSEMBLER TEST 21/05/03 15:23:15 PAGE 5
01CA D2B5 257 SETB CLK
01CC 12028E 258 LCALL D15US
01CF C2B5 259 CLR CLK
01D1 12028E 260 LCALL D15US
01D4 DEEE 261 DJNZ R6,WCOM
01D6 7E08 262 MOV R6,#8
01D8 8521E0 263 MOV ACC,ADDL ;送出地址
01DB 33 264 WADD: RLC A
01DC 92B6 265 MOV DIO,C ;移出到C并送DIO端
01DE 12028E 266 LCALL D15US
01E1 D2B5 267 SETB CLK
01E3 12028E 268 LCALL D15US
01E6 C2B5 269 CLR CLK
01E8 12028E 270 LCALL D15US
01EB DEEE 271 DJNZ R6,WADD
01ED C2B4 272 CLR CS
01EF 22 273 RET
274 ;******* 9 3公共子程序************************************
275 ;写数据
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -