📄 24cxx.lst
字号:
A51 MACRO ASSEMBLER 24CXX 09/13/2007 02:25:18 PAGE 5
0312 E51D 257 MOV A,ADDRELO ;送低位地址
0314 12038C 258 LCALL SHOUT_DATA
0317 20000A 259 JB ERRFLAG,WRITE_B_STOP
031A E51E 260 MOV A,WRITE_DATA
031C 12038C 261 LCALL SHOUT_DATA
031F 200002 262 JB ERRFLAG,WRITE_B_STOP
0322 C200 263 CLR ERRFLAG ;正常清出错位
0324 1203DF 264 WRITE_B_STOP: LCALL STOPI2C
0327 751B0A 265 MOV DELAYCOUNT,#0AH
032A 1202F3 266 LCALL DELAY
032D 22 267 WRITE_B_RE: RET
268
269 ;单字节写没有延时
032E 1203C3 270 WRITE_BYTE0: LCALL STARTI2C
0331 20001D 271 JB ERRFLAG,WRITE_B_RE0 ;不是空闲返回
0334 74A0 272 MOV A,#0A0H
0336 12038C 273 LCALL SHOUT_DATA
0339 200012 274 JB ERRFLAG,WRITE_B_STOP0 ;出错停止
033C E51D 275 MOV A,ADDRELO ;送低位地址
033E 12038C 276 LCALL SHOUT_DATA
0341 20000A 277 JB ERRFLAG,WRITE_B_STOP0
0344 E51E 278 MOV A,WRITE_DATA
0346 12038C 279 LCALL SHOUT_DATA
0349 200002 280 JB ERRFLAG,WRITE_B_STOP0
034C C200 281 CLR ERRFLAG ;正常清出错位
034E 1203DF 282 WRITE_B_STOP0: LCALL STOPI2C
0351 22 283 WRITE_B_RE0: RET
284 ;单字节读(入口ADDREHI,ADDRELO;出口READ_DATA)
0352 1203C3 285 READ_BYTE: LCALL STARTI2C
0355 200019 286 JB ERRFLAG,READ_RE
0358 74A0 287 MOV A,#0A0H
035A 12038C 288 LCALL SHOUT_DATA
035D 20000E 289 JB ERRFLAG,READ_STOP
290 ; MOV A,ADDREHI
291 ; LCALL SHOUT_DATA
292 ; JB ERRFLAG,READ_STOP
0360 E51D 293 MOV A,ADDRELO
0362 12038C 294 LCALL SHOUT_DATA
0365 200006 295 JB ERRFLAG,READ_STOP
0368 120372 296 LCALL READ_CURRENT
036B 020371 297 LJMP READ_RE
036E 1203DF 298 READ_STOP: LCALL STOPI2C
0371 22 299 READ_RE: RET
300
301
302
0372 1203C3 303 READ_CURRENT: LCALL STARTI2C
0375 200013 304 JB ERRFLAG,RE_CURRENTRE
0378 74A1 305 MOV A,#0A1H
037A 12038C 306 LCALL SHOUT_DATA
037D 200008 307 JB ERRFLAG,RE_CURRENTST
0380 1203AD 308 LCALL SHIN_DATA
0383 1203F9 309 LCALL NAK
0386 C200 310 CLR ERRFLAG
0388 1203DF 311 RE_CURRENTST: LCALL STOPI2C
038B 22 312 RE_CURRENTRE: RET
313
314
315
038C 7E08 316 SHOUT_DATA: MOV R6,#08H
038E 33 317 SHOUT_DATA1: RLC A
038F 92B4 318 MOV SDA,C
0391 00 319 NOP
0392 D2B3 320 SETB SCK
0394 00 321 NOP
0395 00 322 NOP
A51 MACRO ASSEMBLER 24CXX 09/13/2007 02:25:18 PAGE 6
0396 00 323 NOP
0397 00 324 NOP
0398 C2B3 325 CLR SCK
039A DEF2 326 DJNZ R6,SHOUT_DATA1
039C D2B4 327 SETB SDA
039E 00 328 NOP
039F 00 329 NOP
03A0 D2B3 330 SETB SCK
03A2 00 331 NOP
03A3 00 332 NOP
03A4 00 333 NOP
03A5 00 334 NOP
03A6 A2B4 335 MOV C,SDA
03A8 9200 336 MOV ERRFLAG,C
03AA C2B3 337 CLR SCK
03AC 22 338 RET
339
340
03AD D2B4 341 SHIN_DATA: SETB SDA
03AF 7E08 342 MOV R6,#08H
03B1 00 343 SHIN_DATA1: NOP
03B2 00 344 NOP
03B3 00 345 NOP
03B4 D2B3 346 SETB SCK
03B6 00 347 NOP
03B7 00 348 NOP
03B8 A2B4 349 MOV C,SDA
03BA 33 350 RLC A
03BB 00 351 NOP
03BC C2B3 352 CLR SCK
03BE DEF1 353 DJNZ R6,SHIN_DATA1
03C0 F51F 354 MOV READ_DATA,A
03C2 22 355 RET
356
357
358
359
360
03C3 D2B4 361 STARTI2C: SETB SDA
03C5 D2B3 362 SETB SCK
03C7 00 363 NOP
03C8 30B411 364 JNB SDA,STARTI2C_ERR
03CB 30B30E 365 JNB SCK,STARTI2C_ERR
03CE 00 366 NOP
03CF C2B4 367 CLR SDA
03D1 00 368 NOP
03D2 00 369 NOP
03D3 00 370 NOP
03D4 00 371 NOP
03D5 C2B3 372 CLR SCK
03D7 C200 373 CLR ERRFLAG
03D9 0203DE 374 LJMP STARTI2C_RE
03DC D200 375 STARTI2C_ERR: SETB ERRFLAG
03DE 22 376 STARTI2C_RE: RET
377
378
379
380
03DF C2B4 381 STOPI2C: CLR SDA
03E1 00 382 NOP
03E2 00 383 NOP
03E3 D2B3 384 SETB SCK
03E5 00 385 NOP
03E6 00 386 NOP
03E7 00 387 NOP
03E8 00 388 NOP
A51 MACRO ASSEMBLER 24CXX 09/13/2007 02:25:18 PAGE 7
03E9 D2B4 389 SETB SDA
03EB 22 390 RET
391
03EC C2B4 392 ACK: CLR SDA
03EE 00 393 NOP
03EF 00 394 NOP
03F0 D2B3 395 SETB SCK
03F2 00 396 NOP
03F3 00 397 NOP
03F4 00 398 NOP
03F5 00 399 NOP
03F6 C2B3 400 CLR SCK
03F8 22 401 RET
402
03F9 D2B4 403 NAK: SETB SDA
03FB 00 404 NOP
03FC 00 405 NOP
03FD D2B3 406 SETB SCK
03FF 00 407 NOP
0400 00 408 NOP
0401 00 409 NOP
0402 00 410 NOP
0403 C2B3 411 CLR SCK
0405 22 412 RET
413 END
A51 MACRO ASSEMBLER 24CXX 09/13/2007 02:25:18 PAGE 8
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
ACK. . . . . . . . C ADDR 03ECH A
ADDREHI. . . . . . N NUMB 001CH A
ADDRELO. . . . . . N NUMB 001DH A
CLR0 . . . . . . . C ADDR 0102H A
CMD_BYTE . . . . . N NUMB 0030H A
DAT_BYTE . . . . . N NUMB 0031H A
DELAY. . . . . . . C ADDR 02F3H A
DELAY0 . . . . . . C ADDR 02EDH A
DELAY1 . . . . . . C ADDR 02EFH A
DELAYCOUNT . . . . N NUMB 001BH A
DELAY_1. . . . . . C ADDR 02FBH A
DELAY_RE . . . . . C ADDR 0303H A
DISPEEPAD. . . . . C ADDR 0236H A
DISPEEPMO. . . . . C ADDR 026AH A
DPEEPAD_1. . . . . C ADDR 0244H A
DPEEPAD_2. . . . . C ADDR 024CH A
DPEEPAD_3. . . . . C ADDR 0250H A
DPEEPAD_4. . . . . C ADDR 025AH A
DPEEPAD_5. . . . . C ADDR 0262H A
DPEEPAD_6. . . . . C ADDR 0266H A
DPEEPMO_1. . . . . C ADDR 0278H A
DPEEPMO_2. . . . . C ADDR 0280H A
DPEEPMO_3. . . . . C ADDR 0284H A
DPEEPMO_4. . . . . C ADDR 028EH A
DPEEPMO_5. . . . . C ADDR 0296H A
DPEEPMO_6. . . . . C ADDR 029AH A
E. . . . . . . . . B ADDR 00A0H.2 A
ERRFLAG. . . . . . B ADDR 0020H.0 A
IE . . . . . . . . D ADDR 00A8H A
INITLCD. . . . . . C ADDR 02C2H A
LCDPORT. . . . . . D ADDR 0080H A
MAIN . . . . . . . C ADDR 0100H A
MAIN1. . . . . . . C ADDR 018FH A
NAK. . . . . . . . C ADDR 03F9H A
P0 . . . . . . . . D ADDR 0080H A
P2 . . . . . . . . D ADDR 00A0H A
P3 . . . . . . . . D ADDR 00B0H A
PCON . . . . . . . D ADDR 0087H A
READBIT. . . . . . B ADDR 0020H.1 A
READ_BYTE. . . . . C ADDR 0352H A
READ_CURRENT . . . C ADDR 0372H A
READ_DATA. . . . . N NUMB 001FH A
READ_EEP . . . . . C ADDR 0214H A
READ_RE. . . . . . C ADDR 0371H A
READ_STOP. . . . . C ADDR 036EH A
RECSUM . . . . . . N NUMB 0032H A
REN. . . . . . . . B ADDR 0098H.4 A
RE_CURRENTRE . . . C ADDR 038BH A
RE_CURRENTST . . . C ADDR 0388H A
RI . . . . . . . . B ADDR 0098H.0 A
RS . . . . . . . . B ADDR 00A0H.0 A
RS232. . . . . . . C ADDR 0023H A
RS232OKBIT . . . . B ADDR 0020H.3 A
RS232_1. . . . . . C ADDR 0033H A
RS232_2. . . . . . C ADDR 003FH A
RS232_RE . . . . . C ADDR 0046H A
RW . . . . . . . . B ADDR 00A0H.1 A
SBUF . . . . . . . D ADDR 0099H A
SCK. . . . . . . . B ADDR 00B0H.3 A
SCON . . . . . . . D ADDR 0098H A
A51 MACRO ASSEMBLER 24CXX 09/13/2007 02:25:18 PAGE 9
SDA. . . . . . . . B ADDR 00B0H.4 A
SHIN_DATA. . . . . C ADDR 03ADH A
SHIN_DATA1 . . . . C ADDR 03B1H A
SHOUT_DATA . . . . C ADDR 038CH A
SHOUT_DATA1. . . . C ADDR 038EH A
STARTI2C . . . . . C ADDR 03C3H A
STARTI2C_ERR . . . C ADDR 03DCH A
STARTI2C_RE. . . . C ADDR 03DEH A
STOPI2C. . . . . . C ADDR 03DFH A
TEMP1. . . . . . . N NUMB 001AH A
TH0. . . . . . . . D ADDR 008CH A
TH1. . . . . . . . D ADDR 008DH A
TIME0_1. . . . . . C ADDR 0200H A
TIME0_RE . . . . . C ADDR 0213H A
TL0. . . . . . . . D ADDR 008AH A
TL1. . . . . . . . D ADDR 008BH A
TMOD . . . . . . . D ADDR 0089H A
TODP . . . . . . . C ADDR 020BH A
TR0. . . . . . . . B ADDR 0088H.4 A
TR1. . . . . . . . B ADDR 0088H.6 A
WRITEBIT . . . . . B ADDR 0020H.2 A
WRITE_BYTE . . . . C ADDR 0304H A
WRITE_BYTE0. . . . C ADDR 032EH A
WRITE_B_RE . . . . C ADDR 032DH A
WRITE_B_RE0. . . . C ADDR 0351H A
WRITE_B_STOP . . . C ADDR 0324H A
WRITE_B_STOP0. . . C ADDR 034EH A
WRITE_CMD. . . . . C ADDR 029EH A
WRITE_DAT. . . . . C ADDR 02B0H A
WRITE_DATA . . . . N NUMB 001EH A
WRITE_EEP. . . . . C ADDR 0222H A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -