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

📄 12864.lst

📁 12864测试时间温度18b20
💻 LST
字号:
A51 MACRO ASSEMBLER  12864                                                                03/18/2008 00:32:12 PAGE     1


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

LOC  OBJ            LINE     SOURCE

                       1     ;************************************************************
                       2     ;ST7920的测试程序,该程序使用并口,可测试128×64点阵。其接口为
                       3     ;RS---P2.5     R/W---P2.6     E---------P2.7     DB0~7-----P0
                       4     ;重庆电子网 www.cqmcu.com QQ 444011745  469040972
                       5     ;************************************************************
  00A5                 6     RS EQU P2.5
  00A6                 7     RW EQU P2.6
  00A7                 8     E EQU P2.7
                       9     
0000                  10     ORG 0000H
0000 2100             11     AJMP START
                      12     
                      13     ;主程序
0100                  14     ORG 0100H
0100                  15     START:
0100 75A881           16     MOV  IE,#81H        ;EXT. INT0 PERMIT
0103 75B801           17     MOV  IP,#01H        ;INT0 IS FIRST INT. LEVEL
0106 758800           18     MOV  TCON,#00H        ;TIMER/COUNTER CONTROLER INIT.
0109 758167           19     MOV  SP, #67h
                      20     
010C 1201EA           21     LCALL DELAY
010F 1201EA           22     LCALL DELAY
0112 120180           23     LCALL SETUP
                      24     
0115 7480             25     MOV  A,#80H ;第一,三行汉字测试
0117 1201AD           26     LCALL WRITE_COM
011A 901000           27     MOV  DPTR,#CHINESE1
011D 1201FE           28     LCALL WRITE_HZ
0120 7490             29     MOV  A,#90H ;第二,四行汉字测试
0122 1201AD           30     LCALL WRITE_COM
0125 901010           31     MOV  DPTR,#CHINESE2
0128 1201FE           32     LCALL WRITE_HZ
                      33     
012B 1201EA           34     LCALL DELAY
012E 1201EA           35     LCALL DELAY
0131 1201EA           36     LCALL DELAY
0134 1201EA           37     LCALL DELAY
0137 1201EA           38     LCALL DELAY
013A 1201EA           39     LCALL DELAY
013D 1201EA           40     LCALL DELAY
0140 1201EA           41     LCALL DELAY
0143 1201EA           42     LCALL DELAY
0146 1201EA           43     LCALL DELAY
                      44     
0149 7480             45     MOV  A,#80H ;第一,三行字符测试
014B 1201AD           46     LCALL WRITE_COM
014E 901024           47     MOV DPTR,#TABLE1
0151 1201F3           48     LCALL WRITE_ASCII
0154 7490             49     MOV  A,#90H ;第二,四行字符测试
0156 1201AD           50     LCALL WRITE_COM
0159 901031           51     MOV DPTR,#TABLE2
015C 1201F3           52     LCALL WRITE_ASCII
                      53     
                      54     
015F 1201EA           55     LCALL DELAY
0162 1201EA           56     LCALL DELAY
0165 1201EA           57     LCALL DELAY
0168 1201EA           58     LCALL DELAY
A51 MACRO ASSEMBLER  12864                                                                03/18/2008 00:32:12 PAGE     2

016B 1201EA           59     LCALL DELAY
016E 1201EA           60     LCALL DELAY
0171 1201EA           61     LCALL DELAY
0174 1201EA           62     LCALL DELAY
0177 1201EA           63     LCALL DELAY
017A 1201EA           64     LCALL DELAY
                      65     
017D 020100           66     AAA: LJMP START
                      67     
                      68     ;初始化
0180                  69     SETUP:
0180 1201EA           70     LCALL DELAY
0183 1201EA           71     LCALL DELAY
0186 1201EA           72     LCALL DELAY
0189 7401             73     MOV  A,#01H ;清除显示
018B 1201AD           74     LCALL WRITE_COM
018E 7430             75     MOV  A,#00110000B ;8位MPU控制界面,基本指令集动作
0190 1201AD           76     LCALL WRITE_COM
0193 7402             77     MOV  A,#00000010B ;DDRAM的计数器(AC)到"00H",降游标移动到开头原点位置
0195 1201AD           78     LCALL WRITE_COM
0198 7404             79     MOV  A,#00000100B ;
019A 1201AD           80     LCALL WRITE_COM
019D 740C             81     MOV  A,#00001100B ;DISPLAY ON
019F 1201AD           82     LCALL WRITE_COM
01A2 7401             83     MOV  A,#00000001B ;CLEARING SCREEN
01A4 1201AD           84     LCALL WRITE_COM
01A7 7480             85     MOV  A,#10000000B ;SET DDRAM ADDRESS
01A9 1201AD           86     LCALL WRITE_COM
01AC 22               87     RET
                      88     
                      89     ;写指令
01AD                  90     WRITE_COM: 
01AD 1201EA           91     LCALL DELAY 
01B0 C2A5             92     CLR  RS
01B2 C2A5             93     CLR  RS
01B4 C2A6             94     CLR  RW
01B6 C2A6             95     CLR  RW
01B8 F580             96     MOV  P0,A
01BA F580             97     MOV  P0,A
01BC D2A7             98     SETB E
01BE D2A7             99     SETB E
01C0 00              100     NOP
01C1 00              101     NOP
01C2 C2A7            102     CLR  E
01C4 C2A7            103     CLR  E
01C6 22              104     RET
                     105     
                     106     ;写显示数据 
01C7                 107     WRITE_DAT: 
01C7 1201E1          108     LCALL DELAY1
01CA D2A5            109     SETB RS
01CC D2A5            110     SETB RS
01CE C2A6            111     CLR  RW
01D0 C2A6            112     CLR  RW
01D2 F580            113     MOV  P0,A
01D4 F580            114     MOV  P0,A
01D6 D2A7            115     SETB E
01D8 D2A7            116     SETB E
01DA 00              117     NOP
01DB 00              118     NOP
01DC C2A7            119     CLR  E
01DE C2A7            120     CLR  E
01E0 22              121     RET
                     122     
                     123     ;延时1×1+16×1+16×16×2+16×2+1×2=563us 
01E1                 124     DELAY1:
A51 MACRO ASSEMBLER  12864                                                                03/18/2008 00:32:12 PAGE     3

01E1 7F10            125     MOV  R7,#10H
01E3 7E10            126     D11: MOV  R6,#10H
01E5 DEFE            127     DJNZ R6,$
01E7 DFFA            128     DJNZ R7,D11
01E9 22              129     RET
                     130     
                     131     ;延时1×1+256×1+256×256×2+256×2+1×2=131843us
01EA                 132     DELAY:
01EA 7900            133     MOV  R1,#00H
01EC 7A00            134     D2: MOV  R2,#00H
01EE DAFE            135     DJNZ R2,$
01F0 D9FA            136     DJNZ R1,D2
01F2 22              137     RET
                     138     
                     139     ;写32个字符到128×64液晶模块,前16个汉字在第一(二)行,后16个汉字在第三(四)行。
01F3                 140     WRITE_ASCII:
01F3 7C20            141     MOV  R4,#32
01F5 E4              142     DDDD: CLR  A
01F6 93              143     MOVC A,@A+DPTR
01F7 1201C7          144     LCALL WRITE_DAT
01FA A3              145     INC  DPTR
01FB DCF8            146     DJNZ R4,DDDD
01FD 22              147     RET
                     148     
                     149     ;写16个汉字到128×64液晶模块,前8个汉字在第一(二)行,后8个汉字在第三(四)行。
01FE                 150     WRITE_HZ: 
01FE 7C10            151     MOV  R4,#16
0200 E4              152     DD: CLR  A
0201 93              153     MOVC A,@A+DPTR
                     154     
0202 1201C7          155     LCALL WRITE_DAT
0205 A3              156     INC  DPTR
0206 E4              157     CLR  A
0207 93              158     MOVC A,@A+DPTR
                     159     
0208 1201C7          160     LCALL WRITE_DAT
020B A3              161     INC DPTR
020C DCF2            162     DJNZ R4,DD
020E 22              163     RET
                     164     
                     165     ;定位,使汉字代码以偶字节开始
1000                 166     ORG 1000H
                     167     ;"这里是16*16点阵的汉字代码表"
1000 D6D8C7EC        168     CHINESE1:            DB "重庆电子网—--—"   
1004 B5E7D7D3                
1008 CDF8A1AA                
100C 2D2DA1AA                
1010 BADABDF0        169     CHINESE2:            DB "黑金刚51单片机学习板"   
1014 B8D53531                
1018 B5A5C6AC                
101C BBFAD1A7                
1020 CFB0B0E5                
                     170     ;"这里是16*8点阵的字符代码"
1024 7777772E        171     TABLE1: DB        "www.cqmcu.com"               
1028 63716D63                
102C 752E636F                
1030 6D                      
1031 51513A34        172     TABLE2: DB        "QQ:444011745 469040972         "
1035 34343031                
1039 31373435                
103D 20343639                
1041 30343039                
1045 37322020                
1049 20202020                
104D 202020                  
                     173     ;结束
A51 MACRO ASSEMBLER  12864                                                                03/18/2008 00:32:12 PAGE     4

                     174     END
                             
A51 MACRO ASSEMBLER  12864                                                                03/18/2008 00:32:12 PAGE     5

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


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

AAA. . . . . . . .  C ADDR   017DH   A   
CHINESE1 . . . . .  C ADDR   1000H   A   
CHINESE2 . . . . .  C ADDR   1010H   A   
D11. . . . . . . .  C ADDR   01E3H   A   
D2 . . . . . . . .  C ADDR   01ECH   A   
DD . . . . . . . .  C ADDR   0200H   A   
DDDD . . . . . . .  C ADDR   01F5H   A   
DELAY. . . . . . .  C ADDR   01EAH   A   
DELAY1 . . . . . .  C ADDR   01E1H   A   
E. . . . . . . . .  B ADDR   00A0H.7 A   
IE . . . . . . . .  D ADDR   00A8H   A   
IP . . . . . . . .  D ADDR   00B8H   A   
P0 . . . . . . . .  D ADDR   0080H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
RS . . . . . . . .  B ADDR   00A0H.5 A   
RW . . . . . . . .  B ADDR   00A0H.6 A   
SETUP. . . . . . .  C ADDR   0180H   A   
SP . . . . . . . .  D ADDR   0081H   A   
START. . . . . . .  C ADDR   0100H   A   
TABLE1 . . . . . .  C ADDR   1024H   A   
TABLE2 . . . . . .  C ADDR   1031H   A   
TCON . . . . . . .  D ADDR   0088H   A   
WRITE_ASCII. . . .  C ADDR   01F3H   A   
WRITE_COM. . . . .  C ADDR   01ADH   A   
WRITE_DAT. . . . .  C ADDR   01C7H   A   
WRITE_HZ . . . . .  C ADDR   01FEH   A   


REGISTER BANK(S) USED: 0 

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

⌨️ 快捷键说明

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