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

📄 ad.lst

📁 用单片机实现方搏输出
💻 LST
字号:
A51 MACRO ASSEMBLER  AD                                                                   08/03/2005 23:34:07 PAGE     1


MACRO ASSEMBLER A51 V7.09
OBJECT MODULE PLACED IN .\ad.obj
ASSEMBLER INVOKED BY: D:\软件安装\C51\BIN\A51.EXE F:\ad\ad.asm SET(SMALL) DEBUG PRINT(.\ad.lst) OBJECT(.\ad.obj) EP

LOC  OBJ            LINE     SOURCE

  0030                 1     CH      EQU 30H
  0031                 2     DPCNT   EQU 31H
  0033                 3     DPBUF   EQU 33H
  0032                 4     GDATA   EQU 32H
  00B0                 5     ST              BIT P3.0  ;设置使能端口
  00B1                 6     OE              BIT P3.1
  00B2                 7     EOC             BIT P3.2
                       8     
0000                   9                     ORG 00H    ;程序起始
0000 020030           10                     LJMP START ;跳转 
000B                  11                     ORG 0BH    ;设置定时器中断入口地址
000B 02007E           12                     LJMP T0X   ;中断调转
0030                  13                     ORG 30H    ;主程序开始 
0030 7530BC           14     START: MOV CH,#0BCH        ;30=BCH
0033 753100           15                     MOV DPCNT,#00H  ;31=00H
0036 7931             16                     MOV R1,#DPCNT   ;R1=00H
0038 7F05             17                     MOV R7,#5       ;R7=5 
003A 740A             18                     MOV A,#10       ;A=10
003C 7833             19                     MOV R0,#DPBUF   ;R0指向33H单元
003E F6               20     LOP:    MOV @R0,A               ;(33H)=10
003F 08               21                     INC R0          ;33H-->34H 
0040 DFFC             22                     DJNZ R7,LOP     ;33H--37H单元赋值10
0042 7600             23                     MOV @R0,#00H    ;38H=00
0044 08               24                     INC R0
0045 7600             25                     MOV @R0,#00H
0047 08               26                     INC R0
0048 7600             27                     MOV @R0,#00H    ;38H\39H\40H单元情零
004A 758901           28                     MOV TMOD,#01H   ;定时器初始化,定时方式一,Tmax=65.536ms
004D 758CF0           29                     MOV TH0,#(65536-4000)/256      ;定时器赋初值
0050 758A60           30                     MOV TL0,#(65536-4000) MOD 256  ;
0053 D28C             31                     SETB TR0   ;启动定时器TO
0055 D2A9             32                     SETB ET0                    
0057 D2AF             33                     SETB EA    ;开总中断 
0059 C2B0             34     WT:             CLR ST     ;
005B D2B0             35                     SETB ST    ;启动0809
005D C2B0             36                     CLR ST     ;
005F 30B2FD           37     WAIT:   JNB EOC,WAIT       ;等待转换 
0062 D2B1             38                     SETB OE                  
0064 858032           39                     MOV GDATA,P0  ;暂存AD 转换值                 
0067 C2B1             40                     CLR OE        ;停止读入数据 
0069 E532             41                     MOV A,GDATA   ;数据送入累加器 
006B 75F064           42                     MOV B,#100    ;B=100  
006E 84               43                     DIV AB        ;累加器A除以寄存器B,相当于十进制的除法 
006F F533             44                     MOV 33H,A     ;商放在33H单元,相当于百位
0071 E5F0             45                     MOV A,B       ;暂存余数 
0073 75F00A           46                     MOV B,#10     ;暂存除数10
0076 84               47                     DIV AB        ;余数与10做除法  
0077 F534             48                     MOV 34H,A     ;余数商存储34H,相当于十位 
0079 85F035           49                     MOV 35H,B     ;存储个位
007C 80DB             50                     SJMP WT        
007E 00               51     T0X:    NOP                   ;定时器中断子程序      
007F 758CF0           52                     MOV TH0,#(65536-4000)/256     ;T0重装初值
0082 758A60           53                     MOV TL0,#(65536-4000) MOD 256
0085 9000A4           54                     MOV DPTR,#DPCD       ;DPTR指向字形数据表  
0088 E531             55                     MOV A,DPCNT          ;清零A 
008A 2433             56                     ADD A,#DPBUF         ;取出显示数据位(33H--35H)的暂存地址
008C F8               57                     MOV R0,A             ;R0暂存数据位地址 
008D E6               58                     MOV A,@R0            ;取出数据地址的内容 
A51 MACRO ASSEMBLER  AD                                                                   08/03/2005 23:34:07 PAGE     2

008E 93               59                     MOVC A,@A+DPTR       ;取出字形码       
008F F590             60                     MOV P1,A             ;字形码送至I/O口P1
0091 9000AF           61                     MOV DPTR,#DPBT       ;LED 驱动口查表           
0094 E531             62                     MOV A,DPCNT
0096 93               63                     MOVC A,@A+DPTR
0097 F5A0             64                     MOV P2,A
0099 0531             65                     INC DPCNT
009B E531             66                     MOV A,DPCNT
009D B40803           67                     CJNE A,#8,NEXT
00A0 753100           68                     MOV DPCNT,#00H
00A3 32               69     NEXT:   RETI
00A4 3F065B4F         70     DPCD:   DB 3FH,06H,5BH,4FH,66H
00A8 66                      
00A9 6D7D077F         71                     DB 6DH,7DH,07H,7FH,6FH,00H
00AD 6F00                    
00AF FEFDFBF7         72     DPBT:   DB 0FEH,0FDH,0FBH,0F7H
00B3 EFDFBF7F         73                     DB 0EFH,0DFH,0BFH,07FH
                      74                     END
A51 MACRO ASSEMBLER  AD                                                                   08/03/2005 23:34:07 PAGE     3

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


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

B. . . . . . . . .  D ADDR   00F0H   A   
CH . . . . . . . .  N NUMB   0030H   A   
DPBT . . . . . . .  C ADDR   00AFH   A   
DPBUF. . . . . . .  N NUMB   0033H   A   
DPCD . . . . . . .  C ADDR   00A4H   A   
DPCNT. . . . . . .  N NUMB   0031H   A   
EA . . . . . . . .  B ADDR   00A8H.7 A   
EOC. . . . . . . .  B ADDR   00B0H.2 A   
ET0. . . . . . . .  B ADDR   00A8H.1 A   
GDATA. . . . . . .  N NUMB   0032H   A   
LOP. . . . . . . .  C ADDR   003EH   A   
NEXT . . . . . . .  C ADDR   00A3H   A   
OE . . . . . . . .  B ADDR   00B0H.1 A   
P0 . . . . . . . .  D ADDR   0080H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
ST . . . . . . . .  B ADDR   00B0H.0 A   
START. . . . . . .  C ADDR   0030H   A   
T0X. . . . . . . .  C ADDR   007EH   A   
TH0. . . . . . . .  D ADDR   008CH   A   
TL0. . . . . . . .  D ADDR   008AH   A   
TMOD . . . . . . .  D ADDR   0089H   A   
TR0. . . . . . . .  B ADDR   0088H.4 A   
WAIT . . . . . . .  C ADDR   005FH   A   
WT . . . . . . . .  C ADDR   0059H   A   


REGISTER BANK(S) USED: 0 

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

⌨️ 快捷键说明

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