delay500ms.lst
来自「EasyStudy51-II单片机开发系统的库函数源代码.包含了EasyStud」· LST 代码 · 共 53 行
LST
53 行
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 + =
减小字号Ctrl + -
显示快捷键?