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

📄 exa.lst

📁 Mini51板lcd1602字符显示,汇编程序。
💻 LST
字号:
A51 MACRO ASSEMBLER  EXA                                                                  04/30/2008 23:47:58 PAGE     1


MACRO ASSEMBLER A51 V7.00a
OBJECT MODULE PLACED IN .\obj\exa.obj
ASSEMBLER INVOKED BY: C:\Keil\C51\BIN\A51.EXE asm\exa.asm SET(SMALL) DEBUG PRINT(.\exa.lst) OBJECT(.\obj\exa.obj) EP

LOC  OBJ            LINE     SOURCE

                       1     ;功能简介
                       2     ;Mini51板数码管计数器0到9998
                       3     ;作者:田开坤
                       4     ;时间:2008.04.30
                       5     
                       6     ;/******LCD1602接口定义*******/
  FCEB                 7             LCD_CW    EQU 0FCEBH    ;该地址由Mini51板硬件确定
  FDEB                 8             LCD_DW    EQU 0FDEBH    ;该地址由Mini51板硬件确定
  FEEB                 9             LCD_CR    EQU 0FEEBH    ;该地址由Mini51板硬件确定
  FFEB                10             LCD_DR    EQU 0FFEBH    ;该地址由Mini51板硬件确定
  0000                11             LINE1     EQU 00H       ;LCD1602第一行地址
  0040                12             LINE2     EQU 40H       ;LCD1602第二行地址
                      13     
0000                  14             ORG     0000H                    
0000 0130             15             AJMP    START
                      16                                           
0030                  17             ORG     0030H           ;30H以前的空间被中断占用,主程序一般从30H开始
0030 758160           18     START:  MOV     SP,#60H         ;设置堆栈指针
                      19     
0033 90FCEB           20             MOV     DPTR,#LCD_CW    
0036 740C             21             MOV     A,#0CH
0038 F0               22             MOVX    @DPTR,A         ;LCD初始化
                      23             
0039 1177             24             ACALL   BUSY
003B 90FCEB           25             MOV     DPTR,#LCD_CW
003E 7438             26             MOV     A,#38H
0040 F0               27             MOVX    @DPTR,A         ;LCD显示
                      28             
                      29     ;写LCD第一行
                      30     ;****************************************
0041 1177             31             ACALL   BUSY
0043 90FCEB           32             MOV     DPTR,#LCD_CW
0046 7480             33             MOV     A,#(80H+LINE1)
0048 F0               34             MOVX    @DPTR,A
0049 7E10             35             MOV     R6,#16
004B 7F00             36             MOV     R7,#0
004D 1177             37     LOOP:   ACALL   BUSY
004F EF               38             MOV     A,R7
0050 900080           39             MOV     DPTR,#CHAR_STR
0053 93               40             MOVC    A,@A+DPTR
0054 90FDEB           41             MOV     DPTR,#LCD_DW
0057 F0               42             MOVX    @DPTR,A
0058 0F               43             INC     R7
0059 DEF2             44             DJNZ    R6,LOOP
                      45     ;****************************************
                      46     
                      47     ;写LCD第二行
                      48     ;****************************************
005B 1177             49             ACALL   BUSY
005D 90FCEB           50             MOV     DPTR,#LCD_CW
0060 74C0             51             MOV     A,#(80H+LINE2)
0062 F0               52             MOVX    @DPTR,A
0063 7E10             53             MOV     R6,#16
0065 7F00             54             MOV     R7,#0
0067 1177             55     LOOP0:  ACALL   BUSY
0069 EF               56             MOV     A,R7
006A 900090           57             MOV     DPTR,#CHAR_STR+16
006D 93               58             MOVC    A,@A+DPTR
A51 MACRO ASSEMBLER  EXA                                                                  04/30/2008 23:47:58 PAGE     2

006E 90FDEB           59             MOV     DPTR,#LCD_DW
0071 F0               60             MOVX    @DPTR,A
0072 0F               61             INC     R7
0073 DEF2             62             DJNZ    R6,LOOP0
                      63     ;**************************************
                      64     
0075 80FE             65             SJMP $     ;结束,原地踏步
                      66     
                      67     ;LCD忙检测
                      68     ;*************************************
0077 90FEEB           69     BUSY:   MOV     DPTR,#LCD_CR
007A E0               70     BUSY?:  MOVX    A,@DPTR
007B 5480             71             ANL     A,#80H
007D 70FB             72             JNZ     BUSY?
007F 22               73             RET
                      74     ;*************************************
                      75     
0080                  76     CHAR_STR:
0080 77656C63         77             DB "welcometostuelab"
0084 6F6D6574                
0088 6F737475                
008C 656C6162                
0090 30313233         78             DB "0123456789ABCDEF"
0094 34353637                
0098 38394142                
009C 43444546                
                      79             END
A51 MACRO ASSEMBLER  EXA                                                                  04/30/2008 23:47:58 PAGE     3

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


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

BUSY . . . . . . .  C ADDR   0077H   A   
BUSY?. . . . . . .  C ADDR   007AH   A   
CHAR_STR . . . . .  C ADDR   0080H   A   
LCD_CR . . . . . .  N NUMB   FEEBH   A   
LCD_CW . . . . . .  N NUMB   FCEBH   A   
LCD_DR . . . . . .  N NUMB   FFEBH   A   
LCD_DW . . . . . .  N NUMB   FDEBH   A   
LINE1. . . . . . .  N NUMB   0000H   A   
LINE2. . . . . . .  N NUMB   0040H   A   
LOOP . . . . . . .  C ADDR   004DH   A   
LOOP0. . . . . . .  C ADDR   0067H   A   
SP . . . . . . . .  D ADDR   0081H   A   
START. . . . . . .  C ADDR   0030H   A   


REGISTER BANK(S) USED: 0 

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

⌨️ 快捷键说明

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