⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 key.lst

📁 关于51单片机学习的基本样例程序
💻 LST
字号:
A51 MACRO ASSEMBLER  KEY                                                                  06/23/2007 09:42:34 PAGE     1


MACRO ASSEMBLER A51 V7.10
OBJECT MODULE PLACED IN key.OBJ
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE key.asm SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

                       1     ;-----------------------------------
                       2     ;                   受控输出实例1
                       3     ;功能:查询方式检测按键状态,8只LED显示按键被按下次数的二进制值
                       4     ;-----------------------------------
  00B2                 5     KEY_PIN         EQU                     P3.2
  0030                 6     COUNT                   DATA            30H
                       7     
0000                   8     ORG     0000H                   ;伪指令,指定程序从0000H开始存放
0000 020100            9     LJMP    MAIN                    ;跳转指令,程序跳转到MAIN处
                      10     
0100                  11     ORG     0100H                   ;伪指令,指定以下程序从0100H开始存放
0100                  12     MAIN:
0100 758160           13             MOV     SP,#60H         ;给堆栈指针赋初值
0103 D2B2             14             SETB    KEY_PIN         ;置一P3.2,初始化输入口
0105 7530FF           15             MOV     COUNT,#0FFH     ;给计数变量COUNT赋初值
0108 853090           16             MOV     P1,COUNT        ;给P1赋初值,LED全灭
010B                  17     KEY:
010B A2B2             18             MOV     C,KEY_PIN       ;检测按键
010D 40FC             19             JC              KEY
010F 12011D           20             LCALL   DELAY10MS       ;延时10MS,按键抖动消除
0112 A2B2             21             MOV     C,KEY_PIN
0114 40F5             22             JC              KEY
0116 1530             23             DEC             COUNT           ;按键被按下,计数加一
0118 853090           24             MOV     P1,COUNT        ;LED输出显示
011B 80EE             25             SJMP    KEY                     ;跳转,程序继续
                      26     
                      27     ;延时10MS子程序
011D                  28     DELAY10MS:
011D 7F14             29             MOV     R7,#20
011F                  30     DELAY0:
011F 7EFA             31             MOV     R6,#250
0121 DEFE             32             DJNZ    R6,$
0123 DFFA             33             DJNZ    R7,DELAY0
0125 22               34             RET
                      35     
                      36     END 
A51 MACRO ASSEMBLER  KEY                                                                  06/23/2007 09:42:34 PAGE     2

SYMBOL TABLE LISTING
------ ----- -------


N A M E             T Y P E  V A L U E   ATTRIBUTES

COUNT. . . . . . .  D ADDR   0030H   A   
DELAY0 . . . . . .  C ADDR   011FH   A   
DELAY10MS. . . . .  C ADDR   011DH   A   
KEY. . . . . . . .  C ADDR   010BH   A   
KEY_PIN. . . . . .  B ADDR   00B0H.2 A   
MAIN . . . . . . .  C ADDR   0100H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
SP . . . . . . . .  D ADDR   0081H   A   


REGISTER BANK(S) USED: 0 

ASSEMBLY COMPLETE.  0 WARNING(S), 0 ERROR(S)

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -