📄 delay500ms.lst
字号:
A51 MACRO ASSEMBLER DELAY500MS 11/06/2008 01:10:40 PAGE 1
MACRO ASSEMBLER A51 V7.07
OBJECT MODULE PLACED IN delay500ms.obj
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE a51\delay500ms.a51 SET(SMALL) DEBUG PRINT(.\delay500ms.lst) OBJECT(delay50
0ms.obj) EP
LOC OBJ LINE SOURCE
1
2 NAME DELAY500MS
3 PUBLIC ES51_DELAY500MS
4
5 ES51 segment code
---- 6 RSEG ES51
7
0000 8 ES51_DELAY500MS:
9 ; 延时500毫秒;[假设时钟为12MHZ];
10 ; 延时间约500ms(500.063ms)
11 ; 1+[(1+1+48*2+2)*250+1+2]*20+2 = 3+(100*250+3)*20 = 500063us = 500.063ms
0000 7814 12 MOV R0, #20 ; 1us
0002 13 DELAY500MS_LOOP1:
0002 79FA 14 MOV R1, #250 ; 1us
0004 15 DELAY500MS_LOOP2:
0004 00 16 NOP ; 1
0005 7A30 17 MOV R2, #48 ; 1
0007 DAFE 18 DJNZ R2, $ ; 2*8
0009 D9F9 19 DJNZ R1, DELAY500MS_LOOP2; 2us
000B D8F5 20 DJNZ R0, DELAY500MS_LOOP1; 2us
000D 22 21 RET ; 2us
22
23 END
A51 MACRO ASSEMBLER DELAY500MS 11/06/2008 01:10:40 PAGE 2
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
DELAY500MS . . . . N NUMB -----
DELAY500MS_LOOP1 . C ADDR 0002H R SEG=ES51
DELAY500MS_LOOP2 . C ADDR 0004H R SEG=ES51
ES51 . . . . . . . C SEG 000EH REL=UNIT
ES51_DELAY500MS. . C ADDR 0000H R SEG=ES51
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -