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

📄 lcd.lst

📁 51单片机用汇编实例 包括ad
💻 LST
📖 第 1 页 / 共 2 页
字号:
A51 MACRO ASSEMBLER  LCD                                                                  01/04/2006 14:35:09 PAGE     1


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

LOC  OBJ            LINE     SOURCE

                       1     ;================================================================
                       2     ; 文件名称: LCD.ASM
                       3     ; 功能描述: 图形点阵液晶, 128*64, 显示"唐都科教仪器公司欢迎您"
                       4     ;================================================================
                       5     
  0090                 6     RW      BIT P1.0
  0091                 7     RS      BIT P1.1
  0092                 8     CS2     BIT P1.2
  0093                 9     CS1     BIT P1.3
  0094                10     E       BIT P1.4
  0095                11     LED     BIT P1.5
                      12     
  0030                13     XADD    DATA 30H
  0031                14     YADD    DATA 31H
                      15     
0000                  16             ORG 0000H
0000 020100           17             LJMP START
0100                  18             ORG 0100H
0100 C295             19     START:  CLR LED                 ;关闭背景灯
0102 7C3F             20             MOV R4, #3FH
0104 12021F           21             LCALL SENDMCMD          ;打开显示
0107 12023D           22             LCALL SENDSCMD
010A 7CC0             23             MOV R4, #0C0H
010C 12021F           24             LCALL SENDMCMD          ;设置起始行
010F 12023D           25             LCALL SENDSCMD
0112 1202C3           26             LCALL CLEAR             ;清屏
0115 7530BA           27             MOV XADD, #0BAH         ;显示汉字"唐"
0118 753140           28             MOV YADD, #40H
011B 9002F0           29             MOV DPTR, #TANG
011E 1201C1           30             LCALL WRITEHZM
                      31     
0121 7530BA           32             MOV XADD, #0BAH         ;显示汉字"都"
0124 753150           33             MOV YADD, #50H
0127 900310           34             MOV DPTR, #DU
012A 1201C1           35             LCALL WRITEHZM
                      36     
012D 7530BA           37             MOV XADD, #0BAH         ;显示汉字"科"
0130 753160           38             MOV YADD, #60H
0133 900330           39             MOV DPTR, #KE
0136 1201C1           40             LCALL WRITEHZM
                      41     
0139 7530BA           42             MOV XADD, #0BAH         ;显示汉字"教"
013C 753170           43             MOV YADD, #70H
013F 900350           44             MOV DPTR, #JIAO
0142 1201C1           45             LCALL WRITEHZM
                      46     
0145 7530BA           47             MOV XADD, #0BAH         ;显示汉字"仪"
0148 753140           48             MOV YADD, #40H
014B 900370           49             MOV DPTR, #YI
014E 1201F0           50             LCALL WRITEHZS
                      51     
0151 7530BA           52             MOV XADD, #0BAH         ;显示汉字"器"
0154 753150           53             MOV YADD, #50H
0157 900390           54             MOV DPTR, #QI
015A 1201F0           55             LCALL WRITEHZS
                      56     
015D 7530BA           57             MOV XADD, #0BAH         ;显示汉字"公"
0160 753160           58             MOV YADD, #60H
A51 MACRO ASSEMBLER  LCD                                                                  01/04/2006 14:35:09 PAGE     2

0163 9003B0           59             MOV DPTR, #GONG
0166 1201F0           60             LCALL WRITEHZS
                      61     
0169 7530BA           62             MOV XADD, #0BAH         ;显示汉字"司"
016C 753170           63             MOV YADD, #70H
016F 9003D0           64             MOV DPTR, #SI
0172 1201F0           65             LCALL WRITEHZS
                      66     
0175 7530BC           67             MOV XADD, #0BCH         ;显示汉字"欢"
0178 753160           68             MOV YADD, #60H
017B 9003F0           69             MOV DPTR, #HUAN
017E 1201C1           70             LCALL WRITEHZM
                      71     
0181 7530BC           72             MOV XADD, #0BCH         ;显示汉字"迎"
0184 753170           73             MOV YADD, #70H
0187 900410           74             MOV DPTR, #YING
018A 1201C1           75             LCALL WRITEHZM
                      76     
018D 7530BC           77             MOV XADD, #0BCH         ;显示汉字"您"
0190 753140           78             MOV YADD, #40H
0193 900430           79             MOV DPTR, #NIN
0196 1201F0           80             LCALL WRITEHZS
                      81     
0199 7530BC           82             MOV XADD, #0BCH         ;显示"感叹号"
019C 753150           83             MOV YADD, #50H
019F 900450           84             MOV DPTR, #GANTAN
01A2 1201F0           85             LCALL WRITEHZS
                      86     
01A5 7CC0             87     MLP0:   MOV R4, #0C0H           ;滚屏显示
01A7 0C               88     MLP1:   INC R4
01A8 12021F           89             LCALL SENDMCMD
01AB 12023D           90             LCALL SENDSCMD
01AE 78FF             91             MOV R0, #0FFH
01B0 1202E7           92     MLP2:   LCALL DELAY
01B3 D8FB             93             DJNZ R0, MLP2
01B5 78FF             94             MOV R0, #0FFH
01B7 1202E7           95     MLP3:   LCALL DELAY
01BA D8FB             96             DJNZ R0, MLP3
01BC BCFFE8           97             CJNE R4, #0FFH, MLP1
01BF 21A5             98             AJMP MLP0
                      99     ;写汉字到控制器1
                     100     ;入口参数: XADD YADD 以及汉字表首地址
01C1                 101     WRITEHZM:
01C1 AC30            102             MOV R4, XADD
01C3 12021F          103             LCALL SENDMCMD
01C6 AC31            104             MOV R4, YADD
01C8 12021F          105             LCALL SENDMCMD
01CB 7B00            106             MOV R3, #00H
01CD 7810            107             MOV R0, #10H            ;写头16字节
01CF EB              108     WMLP1:  MOV A, R3
01D0 93              109             MOVC A, @A+DPTR
01D1 FC              110             MOV R4, A
01D2 12025B          111             LCALL SENDMDATA
01D5 0B              112             INC R3
01D6 D8F7            113             DJNZ R0, WMLP1
01D8 0530            114             INC XADD
01DA AC30            115             MOV R4, XADD
01DC 12021F          116             LCALL SENDMCMD
01DF AC31            117             MOV R4, YADD
01E1 12021F          118             LCALL SENDMCMD
01E4 7810            119             MOV R0, #10H            ;写后16字节
01E6 EB              120     WMLP2:  MOV A, R3
01E7 93              121             MOVC A, @A+DPTR
01E8 FC              122             MOV R4, A
01E9 12025B          123             LCALL SENDMDATA
01EC 0B              124             INC R3
A51 MACRO ASSEMBLER  LCD                                                                  01/04/2006 14:35:09 PAGE     3

01ED D8F7            125             DJNZ R0, WMLP2
01EF 22              126             RET
                     127     ;写汉字到控制器2
                     128     ;入口参数: XADD YADD 以及汉字表首地址
01F0                 129     WRITEHZS:
01F0 AC30            130             MOV R4, XADD
01F2 12023D          131             LCALL SENDSCMD
01F5 AC31            132             MOV R4, YADD
01F7 12023D          133             LCALL SENDSCMD
01FA 7B00            134             MOV R3, #00H
01FC 7810            135             MOV R0, #10H
01FE EB              136     WSLP1:  MOV A, R3
01FF 93              137             MOVC A, @A+DPTR
0200 FC              138             MOV R4, A
0201 120279          139             LCALL SENDSDATA
0204 0B              140             INC R3
0205 D8F7            141             DJNZ R0, WSLP1
0207 0530            142             INC XADD
0209 AC30            143             MOV R4, XADD
020B 12023D          144             LCALL SENDSCMD
020E AC31            145             MOV R4, YADD
0210 12023D          146             LCALL SENDSCMD
0213 7810            147             MOV R0, #10H
0215 EB              148     WSLP2:  MOV A, R3
0216 93              149             MOVC A, @A+DPTR
0217 FC              150             MOV R4, A
0218 120279          151             LCALL SENDSDATA
021B 0B              152             INC R3
021C D8F7            153             DJNZ R0, WSLP2
021E 22              154             RET
                     155     
                     156     ;入口参数: R4, 命令字节
021F                 157     SENDMCMD:       ;向控制器1发送命令
021F C0E0            158             PUSH ACC
0221 7D01            159             MOV R5, #01H
0223 1202E7          160             LCALL DELAY
0226 C291            161             CLR RS
0228 C290            162             CLR RW
022A C293            163             CLR CS1
022C EC              164             MOV A, R4
022D F580            165             MOV P0, A
022F C294            166             CLR E
0231 00              167             NOP
0232 D294            168             SETB E
0234 00              169             NOP
0235 C294            170             CLR E
0237 00              171             NOP
0238 D293            172             SETB CS1
023A D0E0            173             POP ACC
023C 22              174             RET
                     175     ;入口参数: R4, 命令字节
023D                 176     SENDSCMD:       ;向控制器2发送命令
023D C0E0            177             PUSH ACC
023F 7D02            178             MOV R5, #02H
0241 1202E7          179             LCALL DELAY
0244 C291            180             CLR RS
0246 C290            181             CLR RW
0248 C292            182             CLR CS2
024A EC              183             MOV A, R4
024B F580            184             MOV P0, A
024D C294            185             CLR E
024F 00              186             NOP
0250 D294            187             SETB E
0252 00              188             NOP
0253 C294            189             CLR E
0255 00              190             NOP
A51 MACRO ASSEMBLER  LCD                                                                  01/04/2006 14:35:09 PAGE     4

0256 D292            191             SETB CS2
0258 D0E0            192             POP ACC
025A 22              193             RET     
                     194     ;入口参数: R4, 数据字节
025B                 195     SENDMDATA:      ;向控制器1发送数据
025B C0E0            196             PUSH ACC
025D 7D01            197             MOV R5, #01H
025F 1202E7          198             LCALL DELAY
0262 D291            199             SETB RS
0264 C290            200             CLR RW
0266 C293            201             CLR CS1
0268 EC              202             MOV A, R4
0269 F580            203             MOV P0, A
026B C294            204             CLR E
026D 00              205             NOP
026E D294            206             SETB E
0270 00              207             NOP
0271 C294            208             CLR E
0273 00              209             NOP
0274 D293            210             SETB CS1
0276 D0E0            211             POP ACC
0278 22              212             RET
                     213     ;入口参数: R4, 数据字节
0279                 214     SENDSDATA:      ;向控制器2发送数据
0279 C0E0            215             PUSH ACC
027B 7D02            216             MOV R5, #02H
027D 1202E7          217             LCALL DELAY
0280 D291            218             SETB RS
0282 C290            219             CLR RW
0284 C292            220             CLR CS2
0286 EC              221             MOV A, R4
0287 F580            222             MOV P0, A
0289 C294            223             CLR E
028B 00              224             NOP
028C D294            225             SETB E
028E 00              226             NOP
028F C294            227             CLR E
0291 00              228             NOP
0292 D292            229             SETB CS2
0294 D0E0            230             POP ACC
0296 22              231             RET
                     232     
                     233     ;状态查询
                     234     ;入口参数: R5; R5=1, 表示为控制器1, R5=2为控制器2
0297 C0E0            235     QUERY:  PUSH ACC
0299 7FA0            236             MOV R7, #0A0H
029B C291            237             CLR RS
029D D290            238             SETB RW
029F BD0104          239             CJNE R5, #01, QLP1

⌨️ 快捷键说明

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