?? stepper.lst
字號:
MACRO ASSEMBLER STEPPER 02/14/06 14:00:51 PAGE 1
WIN32 MACRO ASSEMBLER MA51 V06.04.16OBJECT MODULE PLACED IN E:\BACK2005LAST\WORKS\STEPPER\STEPPER.OBJ
ASSEMBLER INVOKED BY: MA51.EXE E:\BACK2005LAST\WORKS\STEPPER\STEPPER.SRC OJ(E:\BACK2005LAST\WORKS\STEPPER\STEPPER.OBJ) PIN(C:\RIDE\INC;C:\RIDE\INC\51) PIN(C:\RIDE\INC\51\) EP LINES SYNTAX(ASM51) PR(E:\BACK2005LAST\WORKS\STEPPER\STEPPER.LST) XR DB PW(80) RB(0)
LOC OBJ LINE SOURCE
1 $INCLUDE(STEPPERVAR.INC)
0000 290 ORG 00H
0000 0125 291 AJMP ATRESET
0002 00 292 NOP
293
0023 294 ORG 23H
295 SERIALINT :
0023 0152 296 AJMP UART_ISR
297
298 ATRESET :
0025 53900F 299 ANL P1,#0FH
0028 758150 300 MOV SP,#50H
002B 753009 301 MOV PEXILSIZE,#09H
002E 753315 302 MOV LINESPACE,#15H
0031 D200 303 SETB COLEND
0033 438780 304 ORL PCON,#80H ;enable high speed (doubled baud rate)
305 ;MOV IP,#10H ;give serial port high priority
0036 758920 306 MOV TMOD,#20H ;timer 1 mode
0039 758DF3 307 MOV TH1,#0F3H ;load timer 1 reload
003C 759850 308 MOV SCON,#50H ;enable serial port in mod 1
003F 758BF3 309 MOV TL1,#0F3H
0042 758840 310 MOV TCON,#40H ;start timer 1
311 ;ORL IE,#90H
0045 0163 312 AJMP MAIN
313
314
0047 DFFE 315 BIGDELAY: DJNZ R7,$
0049 DFFE 316 DJNZ R7,$
004B DFFE 317 DELAY: DJNZ R7,$
004D DFFE 318 DJNZ R7,$
004F DFFE 319 SMALLDELAY: DJNZ R7,$
0051 22 320 RET
321
322 UART_ISR:
0052 309904 323 JNB TI,$+07H ; SENDING
0055 C299 324 CLR TI
0057 D204 325 SETB READY2SEND
0059 209801 326 JB RI,$+04H
005C 32 327 RETI
005D C298 328 CLR RI
005F 85992F 329 MOV SERIALRECB,SBUF
0062 32 330 RETI
331
0063 30B707 332 MAIN: JNB RUN,GO
333 ;MOV A,#"*"
334 ;XRL A,SerialRecB
335 ;JNZ MainLoop
336 ;MOV SerialRecB,#0
337 ;AJMP Go
0066 53900F 338 MAINLOOP : ANL P1,#0FH
0069 114B 339 ACALL DELAY
006B 0163 340 AJMP MAIN
341
342 GO :
006D 753559 343 MOV LINEA,#"Y"
0070 75364E 344 MOV LINEB,#"N"
0073 753720 345 MOV LINEC,#" "
0076 11FE 346 ACALL BURNCOL
0078 753561 347 MOV LINEA,#"a"
007B 753661 348 MOV LINEB,#"a"
007E 753720 349 MOV LINEC,#" "
0081 11FE 350 ACALL BURNCOL
0083 753563 351 MOV LINEA,#"c"
0086 753674 352 MOV LINEB,#"t"
0089 753720 353 MOV LINEC,#" "
008C 11FE 354 ACALL BURNCOL
008E 75356F 355 MOV LINEA,#"o"
0091 753673 356 MOV LINEB,#"s"
0094 753720 357 MOV LINEC,#" "
0097 11FE 358 ACALL BURNCOL
0099 753575 359 MOV LINEA,#"u"
009C 753668 360 MOV LINEB,#"h"
009F 753720 361 MOV LINEC,#" "
00A2 11FE 362 ACALL BURNCOL
00A4 753562 363 MOV LINEA,#"b"
00A7 753665 364 MOV LINEB,#"e"
00AA 753720 365 MOV LINEC,#" "
00AD 11FE 366 ACALL BURNCOL
00AF 753520 367 MOV LINEA,#" "
00B2 753668 368 MOV LINEB,#"h"
00B5 753720 369 MOV LINEC,#" "
00B8 11FE 370 ACALL BURNCOL
00BA 753520 371 MOV LINEA,#" "
00BD 753620 372 MOV LINEB,#" "
00C0 753720 373 MOV LINEC,#" "
00C3 11FE 374 ACALL BURNCOL
00C5 0163 375 AJMP MAIN
376
00C7 300008 377 CLOCK_COUNT: JNB COLEND,SETCLK
00CA C200 378 CLR COLEND
00CC 7531A0 379 MOV COLSIZE1,#0A0H
00CF 753203 380 MOV COLSIZE2,#03H
00D2 D292 381 SETCLK : SETB CLK
00D4 00 382 NOP
00D5 C292 383 CLR CLK
00D7 D53105 384 DJNZ COLSIZE1,ENDCLK
00DA D53202 385 DJNZ COLSIZE2,ENDCLK
00DD D200 386 SETB COLEND
00DF 22 387 ENDCLK : RET
388
389 GETCHAR :
00E0 9001A0 390 MOV DPTR,#CHARSET
00E3 E7 391 MOV A,@R1
00E4 09 392 INC R1
00E5 C2D7 393 CLR CY
00E7 9420 394 SUBB A,#20H
00E9 75F005 395 MOV B,#05H
00EC A4 396 MUL AB
00ED C2D7 397 CLR CY
00EF 2582 398 ADD A,DPL
00F1 F582 399 MOV DPL,A
00F3 E5F0 400 MOV A,B
00F5 3583 401 ADDC A,DPH
00F7 F583 402 MOV DPH,A
00F9 7405 403 MOV A,#05H
00FB 9534 404 SUBB A,CHARWIDE
00FD 22 405 RET
406
407 BURNCOL :
00FE 3148 408 ACALL STEPPING
0100 3148 409 ACALL STEPPING
0102 753405 410 MOV CHARWIDE,#05H
0105 7935 411 BURNCOLLOOP: MOV R1,#LINEA
0107 C203 412 CLR LASTLINE
0109 11E0 413 ACALL GETCHAR
010B 93 414 MOVC A,@A+DPTR
010C 3171 415 ACALL SENDLINE
010E 11E0 416 ACALL GETCHAR
0110 93 417 MOVC A,@A+DPTR
0111 3171 418 ACALL SENDLINE
0113 D203 419 SETB LASTLINE
0115 11E0 420 ACALL GETCHAR
0117 93 421 MOVC A,@A+DPTR
0118 3171 422 ACALL SENDLINE
011A C030 423 PUSH PEXILSIZE
011C E530 424 MOV A,PEXILSIZE
011E 75F003 425 MOV B,#03H
0121 84 426 DIV AB
0122 C530 427 XCH A,PEXILSIZE
0124 9530 428 SUBB A,PEXILSIZE
0126 C530 429 XCH A,PEXILSIZE
0128 313B 430 NEXTLINE : ACALL BURNING
012A 3148 431 ACALL STEPPING
012C D530F9 432 DJNZ PEXILSIZE,NEXTLINE
012F D030 433 POP PEXILSIZE
0131 3148 434 ACALL STEPPING
0133 D534CF 435 DJNZ CHARWIDE,BURNCOLLOOP
0136 3148 436 ACALL STEPPING
0138 3148 437 ACALL STEPPING
013A 22 438 RET
439
013B C291 440 BURNING : CLR STROBE
013D 00 441 NOP
013E 00 442 NOP
013F D291 443 SETB STROBE
0141 C293 444 CLR ENABLE
0143 114B 445 ACALL DELAY
0145 D293 446 SETB ENABLE
0147 22 447 RET
448
0148 300113 449 STEPPING: JNB STEPAB,STEP2
014B B201 450 STEP1: CPL STEPAB
014D 53900F 451 ANL P1,#0FH
0150 439090 452 ORL P1,#90H
0153 1147 453 ACALL BIGDELAY
0155 53900F 454 ANL P1,#0FH
0158 439050 455 ORL P1,#50H
015B 1147 456 ACALL BIGDELAY
015D 22 457 RET
015E B201 458 STEP2: CPL STEPAB
0160 53900F 459 ANL P1,#0FH
0163 439060 460 ORL P1,#60H
0166 1147 461 ACALL BIGDELAY
0168 53900F 462 ANL P1,#0FH
016B 4390A0 463 ORL P1,#0A0H
016E 1147 464 ACALL BIGDELAY
0170 22 465 RET
466
467
0171 C033 468 SENDLINE : PUSH LINESPACE
0173 11C7 469 ACALL CLOCK_COUNT
0175 D533FB 470 DJNZ LINESPACE,$-2
0178 D033 471 POP LINESPACE
017A 7808 472 MOV R0,#08H
017C 20E704 473 NEXTBIT: JB ACC.7,$+7
017F C290 474 CLR DATAOUT
0181 2185 475 AJMP $+4
0183 D290 476 SETB DATAOUT
0185 C030 477 PUSH PEXILSIZE
0187 11C7 478 CLOCKING: ACALL CLOCK_COUNT
0189 D530FB 479 DJNZ PEXILSIZE,CLOCKING
018C D030 480 POP PEXILSIZE
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -