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

📄 eight interrupt.lst

📁 这是一个八路循环的模拟电压转换电路,将模拟信号在数码管上显示出来
💻 LST
字号:
A51 MACRO ASSEMBLER  EIGHT_INTERRUPT                                                      06/08/2006 17:12:22 PAGE     1


MACRO ASSEMBLER A51 V7.07
NO OBJECT MODULE REQUESTED
ASSEMBLER INVOKED BY: e:\Keil\C51\BIN\A51.EXE eight interrupt.a51 SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

                       1      ;调试基本成功,但是,个别通道数据不匹配
                       2      ;而且,不能实时检测数据。为什么?
0000                   3             ORG 0000H
0000 8004              4             SJMP START
0030                   5             ORG 0030H
0030 020006            6             LJMP START
0003                   7             ORG 0003H
0003 020000            8             LJMP INT0
*** ______________________________________^
*** ERROR #A46 IN 8 (eight interrupt.a51, LINE 8): CODE-ADDRESS EXPECTED
                       9     ;******************
                      10     ;初始化各个变量
                      11     ;******************
0006 E4               12     START:  CLR A
0007 7830             13             MOV R0,#30H ;初始化30H-3BH
0009 7A0D             14             MOV R2,#0DH
000B 7B08             15             MOV R3,#08H ;设置8路采样记数值
000D F6               16     LOOP0:  MOV @R0,A
000E 08               17             INC R0
000F DAFC             18             DJNZ R2,LOOP0  
0011 00               19             NOP
0012 00               20             NOP
0013 00               21             NOP      
0014 74FF             22             MOV A,#0FFH
0016 F580             23             MOV P0,A
0018 F590             24             MOV P1,A
001A F5A0             25             MOV P2,A
001C F5B0             26             MOV P3,A
001E 7830             27             MOV R0,#30H  ;让R0重新指向数据缓冲区首位
0020 907FF8           28             MOV DPTR,#7FF8H
                      29             
0023 D2D5             30     MAIN:   SETB F0
0025 F0               31             MOVX @DPTR,A
0026 D2AF             32             SETB EA
0028 D2A8             33             SETB EX0
002A D288             34             SETB IT0        
002C 20D5FD           35     NEXT:   JB F0,NEXT
002F DBF2             36             DJNZ R3,MAIN
0031 00               37             NOP    
0032 00               38             NOP
0033 00               39             NOP
                      40             
                      41     ;**********************
                      42     ;主程序
                      43     ;**********************
0034 00               44     LOOP:   NOP
0035 00               45             NOP
0036 00               46             NOP
0037 12003F           47             LCALL DISPLAY
003A 00               48             NOP
003B 00               49             NOP
003C 00               50             NOP
003D 80F5             51             SJMP LOOP
                      52     ;*********************
                      53     ;显示控制子程序
                      54     ;*********************
003F 7B08             55     DISPLAY:MOV R3,#08H
0041 7830             56             MOV R0,#30H
A51 MACRO ASSEMBLER  EIGHT_INTERRUPT                                                      06/08/2006 17:12:22 PAGE     2

0043 753B00           57             MOV 3BH,#00H ;显示通道路数初值
0046 12006C           58     DISPLP1:LCALL PROC
0049 00               59             NOP
004A 00               60             NOP
004B 00               61             NOP
004C 7CAA             62             MOV R4,#0AAH ;每路显示时间控制
004E 1200B3           63     DISPLP2:LCALL DISP   ;调用显示4位
0051 00               64             NOP
0052 00               65             NOP
0053 00               66             NOP
0054 DCF8             67             DJNZ R4,DISPLP2
0056 08               68             INC R0         ;显示下一路
0057 053B             69             INC 3BH        ;显示通道数加1
0059 DBEB             70             DJNZ R3,DISPLP1
005B 22               71             RET
005C 00               72             NOP
005D 00               73             NOP
005E 00               74             NOP
                      75     
                      76     ;*********************
                      77     ;;AD转换子程序中断方式
                      78     ;*********************
                      79     
005F 00               80     INT0:   NOP
*** _________________________^
*** ERROR #A8 IN 80 (eight interrupt.a51, LINE 80): ATTEMPT TO DEFINE AN ALREADY DEFINED LABEL
0060 00               81             NOP
0061 00               82             NOP
0062 E0               83             MOVX A,@DPTR
0063 F6               84             MOV @R0,A
0064 A3               85             INC DPTR
0065 08               86             INC R0
0066 C2D5             87             CLR F0
0068 32               88             RETI
0069 00               89             NOP
006A 00               90             NOP
006B 00               91             NOP
                      92       
                      93     ;*********************
                      94     ;数据处理子程序
                      95     ;*********************
006C E6               96     PROC:   MOV A,@R0
006D 75F033           97             MOV B,#51 
0070 84               98             DIV AB
0071 F53A             99             MOV 3AH,A
0073 C5F0            100             XCH A,B
0075 75F00A          101             MOV B,#10
0078 A4              102             MUL AB
0079 20D20D          103             JB OV,BCD1
007C 75F033          104             MOV B,#51
007F 84              105             DIV AB
0080 F539            106             MOV 39H,A
0082 C5F0            107             XCH A,B
0084 0195            108             AJMP BCD2
0086 00              109             NOP
0087 00              110             NOP
0088 00              111             NOP
0089 75F033          112     BCD1:   MOV B,#51
008C 84              113             DIV AB
008D 2405            114             ADD A,#5
008F F539            115             MOV 39H,A
0091 C5F0            116             XCH A,B
0093 2405            117             ADD A,#5
0095 75F00A          118     BCD2:   MOV B,#10
0098 A4              119             MUL AB
0099 20D20B          120             JB OV,BCD3
A51 MACRO ASSEMBLER  EIGHT_INTERRUPT                                                      06/08/2006 17:12:22 PAGE     3

009C 75F033          121             MOV B,#51
009F 84              122             DIV AB
00A0 F538            123             MOV 38H,A
00A2 01AF            124             AJMP BCD4
00A4 00              125             NOP
00A5 00              126             NOP
00A6 00              127             NOP
00A7 75F033          128     BCD3:   MOV B,#51
00AA 84              129             DIV AB
00AB 2405            130             ADD A,#5
00AD F538            131             MOV 38H,A
00AF 22              132     BCD4:   RET
00B0 00              133             NOP
00B1 00              134             NOP
00B2 00              135             NOP
                     136     ;*******************
                     137     ;显示子程序 
                     138     ;*******************
00B3 E53B            139     DISP:   MOV A,3BH
00B5 900101          140             MOV DPTR,#TABLE
00B8 93              141             MOVC A,@A+DPTR
00B9 F590            142             MOV P1,A
00BB 74FE            143             MOV A,#0FEH
00BD F5A0            144             MOV P2,A
00BF 12010B          145             LCALL DELAY
00C2 00              146             NOP
00C3 00              147             NOP
00C4 00              148             NOP
00C5 E53A            149             MOV A,3AH
00C7 900101          150             MOV DPTR, #TABLE
00CA 93              151             MOVC A,@A+DPTR
00CB 4480            152             ORL A,#80H
00CD F590            153             MOV P1,A
00CF 74FD            154             MOV A, #0FDH
00D1 F5A0            155             MOV P2,A
00D3 12010B          156             LCALL DELAY
00D6 00              157             NOP
00D7 00              158             NOP
00D8 00              159             NOP
00D9 E539            160             MOV A,39H
00DB 900101          161             MOV DPTR, #TABLE
00DE 93              162             MOVC A,@A+DPTR
00DF F590            163             MOV P1,A
00E1 74FB            164             MOV A, #0FBH
00E3 F5A0            165             MOV P2,A
00E5 12010B          166             LCALL DELAY
00E8 00              167             NOP
00E9 00              168             NOP
00EA 00              169             NOP
00EB E538            170             MOV A,38H
00ED 900101          171             MOV DPTR, #TABLE
00F0 93              172             MOVC A,@A+DPTR
00F1 F590            173             MOV P1,A
00F3 74F7            174             MOV A, #0F7H
00F5 F5A0            175             MOV P2,A
00F7 12010B          176             LCALL DELAY
00FA 00              177             NOP
00FB 00              178             NOP
00FC 00              179             NOP
00FD 22              180             RET
00FE 00              181             NOP
00FF 00              182             NOP
0100 00              183             NOP
0101 3F065B4F        184     TABLE:  DB 3FH,06H,5BH,4FH,66H
0105 66                      
0106 6D7D077F        185             DB 6DH,7DH,07H,7FH,6FH
A51 MACRO ASSEMBLER  EIGHT_INTERRUPT                                                      06/08/2006 17:12:22 PAGE     4

010A 6F                      
010B 7E14            186     DELAY:  MOV R6,#14H    
010D 7F19            187     D0:     MOV R7,#19H
010F DFFE            188     D1:     DJNZ R7,D1
0111 DEFA            189             DJNZ R6,D0
0113 22              190             RET
0114 00              191             NOP
0115 00              192             NOP
0116 00              193             NOP
                     194             END
A51 MACRO ASSEMBLER  EIGHT_INTERRUPT                                                      06/08/2006 17:12:22 PAGE     5

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


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

B. . . . . . . . .  D ADDR   00F0H   A   
BCD1 . . . . . . .  C ADDR   0089H   A   
BCD2 . . . . . . .  C ADDR   0095H   A   
BCD3 . . . . . . .  C ADDR   00A7H   A   
BCD4 . . . . . . .  C ADDR   00AFH   A   
D0 . . . . . . . .  C ADDR   010DH   A   
D1 . . . . . . . .  C ADDR   010FH   A   
DELAY. . . . . . .  C ADDR   010BH   A   
DISP . . . . . . .  C ADDR   00B3H   A   
DISPLAY. . . . . .  C ADDR   003FH   A   
DISPLP1. . . . . .  C ADDR   0046H   A   
DISPLP2. . . . . .  C ADDR   004EH   A   
EA . . . . . . . .  B ADDR   00A8H.7 A   
EX0. . . . . . . .  B ADDR   00A8H.0 A   
F0 . . . . . . . .  B ADDR   00D0H.5 A   
INT0 . . . . . . .  B ADDR   00B0H.2 A   
IT0. . . . . . . .  B ADDR   0088H.0 A   
LOOP . . . . . . .  C ADDR   0034H   A   
LOOP0. . . . . . .  C ADDR   000DH   A   
MAIN . . . . . . .  C ADDR   0023H   A   
NEXT . . . . . . .  C ADDR   002CH   A   
OV . . . . . . . .  B ADDR   00D0H.2 A   
P0 . . . . . . . .  D ADDR   0080H   A   
P1 . . . . . . . .  D ADDR   0090H   A   
P2 . . . . . . . .  D ADDR   00A0H   A   
P3 . . . . . . . .  D ADDR   00B0H   A   
PROC . . . . . . .  C ADDR   006CH   A   
START. . . . . . .  C ADDR   0006H   A   
TABLE. . . . . . .  C ADDR   0101H   A   


REGISTER BANK(S) USED: 0 

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

⌨️ 快捷键说明

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