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

📄 adc1.lst

📁 LCD和44键盘的一个简单例子,proteus下仿真通过
💻 LST
字号:
A51 MACRO ASSEMBLER  ADC1                                                                 09/26/2007 10:47:24 PAGE     1


MACRO ASSEMBLER A51 V7.00a
OBJECT MODULE PLACED IN ADC1.OBJ
ASSEMBLER INVOKED BY: D:\学习\Proteus_6_Professiona\keil中文版本\Keil\C51\BIN\A51.EXE ADC1.ASM SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

  0035                 1        TEMPHIGH EQU 35H
  0034                 2        TEMPLOW  EQU 34H
0000                   3        ORG 0000H
0000 0130              4        AJMP MAIN
0030                   5        ORG 0030H
0030 753000            6     MAIN:MOV 30H, #00H   ;采样单元初始化     
0033                   7     LOOP:
0033 113B              8        ACALL ADCON
0035 114D              9        ACALL  HEXTBCD
0037 1191             10        ACALL DISPLAY 
0039 0133             11             AJMP loop
                      12     ;///////////////////////////////////////
                      13     ;/ AD转换程序,利用查询方式,实时采样四路数据,
                      14     ;/ 并分别存入30H~33H四个单元中
                      15     ;///////////////////////////////////////
003B                  16     ADCON:
003B 908000           17       MOV DPTR,#08000H;通道0的地址
003E 7930             18        MOV R1,#30H
0040 F0               19       MOVX @DPTR,A    ;启动AD转换
0041 7A20             20       MOV R2,#20H
0043 DAFE             21       DLY:DJNZ R2,DLY
0045 20B2FD           22       HE: JB P3.2,HE
0048 E0               23       MOVX A,@DPTR
0049 F530             24       MOV 30H,A
004B F8               25       MOV R0,A
004C 22               26       RET
                      27      ;////////////////////
                      28       ; / 显示预处理子程序,TEMPHIAH TEMPLOW存放AD转换值与20的乘积
                      29       ; / R3为转换时所用循环次数16
                      30       ; /R4 R5分别存放BCD码的低位和高位
                      31        ;/处理后的结果分别存放入38H~3FH
                      32     ;/////////////////////////
004D                  33     HEXTBCD:
004D 7830             34         MOV R0,#30H       ;存放AD转换值的首地址
004F 7938             35        MOV R1,#38H       ;存放BCD码的首地址
                      36        ;MOV R2,#1        ;要转化的AD转换值的个数
                      37     
0051 7C00             38           MOV R4,#0        ;暂存转化结果的低位
0053 7D00             39        MOV R5,#0        ;;暂存转化结果的高位
0055 C3               40        CLR C
0056 E6               41        MOV A,@R0        ;取要转化的AD转换值
0057 75F014           42        MOV B,#20      ;×20
005A A4               43        MUL AB
005B FB               44        MOV R3,A     ;积低位存入TEMPLOW单元
005C E5F0             45        MOV A,B
005E FA               46        MOV R2,A    ;积高位存入TEMPHIGH单元
005F E4               47        CLR A                 ;转化程序
                      48        
0060 FE               49        MOV R6,A
0061 7F10             50        MOV R7,#10H
0063 C3               51        BP1:CLR C
0064 EB               52        MOV A,R3
0065 33               53        RLC A
0066 FB               54        MOV  R3,A
0067 EA               55        MOV A, R2
0068 33               56        RLC A
0069 FA               57        MOV  R2,A
006A EE               58           MOV A ,R6
A51 MACRO ASSEMBLER  ADC1                                                                 09/26/2007 10:47:24 PAGE     2

006B 3E               59        ADDC A ,R6
006C D4               60        DA A
006D FE               61        MOV R6 ,A
006E ED               62        MOV A ,R5
006F 3D               63        ADDC A ,R5
0070 D4               64        DA A
0071 FD               65        MOV R5 ,A
0072 EC               66        MOV  A,R4
0073 3C               67        ADDC A,R4
0074 C4               68        SWAP A
0075 FC               69        MOV R4,A
0076 DFEB             70        DJNZ R7,BP1
0078 8E30             71          MOV 30H,R6
007A 8D31             72           MOV 31H,R5
007C 7830             73           MOV R0,#30H
007E 7938             74        MOV R1,#38H
0080 7F02             75        MOV R7,#02H
0082 E6               76       BP2: MOV A,@R0
0083 540F             77        ANL A,#0FH
0085 F7               78        MOV @R1,A
0086 09               79        INC R1
0087 E6               80        MOV A,@R0
0088 C4               81        SWAP A
0089 540F             82        ANL A,#0FH
008B F7               83        MOV @R1,A
008C 08               84       INC R0
008D 09               85       INC R1
008E DFF2             86       DJNZ R7, BP2
                      87     
0090 22               88           RET
                      89      
                      90     ;*******************
                      91     ;显示子程序 
                      92     ;*******************
0091 74FE             93     DISPLAY:MOV A,#0FEH
0093 F5A0             94             MOV P2,A
0095 E53B             95             MOV A,3BH
0097 9000CF           96             MOV DPTR,#TABLE
009A 93               97             MOVC A,@A+DPTR
009B 4480             98             ORL A,#80H  ;加小数点
009D F590             99             MOV P1,A
009F 11D9            100             CALL DELAY
00A1 74FD            101                     MOV A, #0FDH
00A3 F5A0            102             MOV P2,A
00A5 E53A            103             MOV A,3AH
00A7 9000CF          104             MOV DPTR, #TABLE
00AA 93              105             MOVC A,@A+DPTR
00AB F590            106             MOV P1,A
00AD 1200D9          107             LCALL DELAY
00B0 74FB            108                      MOV A, #0FBH
00B2 F5A0            109             MOV P2,A
00B4 E539            110             MOV A,39H
00B6 9000CF          111             MOV DPTR, #TABLE
00B9 93              112             MOVC A,@A+DPTR
00BA F590            113             MOV P1,A      
00BC 1200D9          114           LCALL DELAY
00BF 74F7            115               MOV A, #0F7H
00C1 F5A0            116             MOV P2,A
00C3 E538            117             MOV A,38H
00C5 9000CF          118             MOV DPTR, #TABLE
00C8 93              119             MOVC A,@A+DPTR
00C9 F590            120             MOV P1,A       
00CB 1200D9          121           LCALL DELAY
00CE 22              122                     RET
00CF 3F065B4F        123            TABLE:  DB 3FH,06H,5BH,4FH,66H
00D3 66                      
A51 MACRO ASSEMBLER  ADC1                                                                 09/26/2007 10:47:24 PAGE     3

00D4 6D7D077F        124             DB 6DH,7DH,07H,7FH,6FH
00D8 6F                      
00D9 752834          125     DELAY:  MOV 40,#34H    
00DC 752919          126     D0:     MOV 41,#19H
00DF D529FD          127     D1:     DJNZ 41,D1
00E2 D528F7          128             DJNZ 40,D0
00E5 22              129             RET
                     130     
                     131             END
A51 MACRO ASSEMBLER  ADC1                                                                 09/26/2007 10:47:24 PAGE     4

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


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

ADCON. . . . . . .  C ADDR   003BH   A   
B. . . . . . . . .  D ADDR   00F0H   A   
BP1. . . . . . . .  C ADDR   0063H   A   
BP2. . . . . . . .  C ADDR   0082H   A   
D0 . . . . . . . .  C ADDR   00DCH   A   
D1 . . . . . . . .  C ADDR   00DFH   A   
DELAY. . . . . . .  C ADDR   00D9H   A   
DISPLAY. . . . . .  C ADDR   0091H   A   
DLY. . . . . . . .  C ADDR   0043H   A   
HE . . . . . . . .  C ADDR   0045H   A   
HEXTBCD. . . . . .  C ADDR   004DH   A   
LOOP . . . . . . .  C ADDR   0033H   A   
MAIN . . . . . . .  C ADDR   0030H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
TABLE. . . . . . .  C ADDR   00CFH   A   
TEMPHIGH . . . . .  N NUMB   0035H   A   
TEMPLOW. . . . . .  N NUMB   0034H   A   


REGISTER BANK(S) USED: 0 

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

⌨️ 快捷键说明

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