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

📄 max539.lst

📁 单片机C语言教程
💻 LST
字号:
A51 MACRO ASSEMBLER  MAX539                                                               08/10/2007 11:42:10 PAGE     1


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

LOC  OBJ            LINE     SOURCE

                       1     ;/****************************************************************/
                       2     ;/* 这是MAX539的汇编程序,文件名MAX539.ASM。                      */
                       3     ;/* 功能:本程序主要是实现MAX539芯片的D/A转换。程序中转换的十六进*/
                       4     ;/*    制值依次为0x0fff,0x07ff,0x03ff,0x01ff,0,VOUT脚输出转换后  */
                       5     ;/*    的模拟信号,它既可用万用表的直流电压档测试,也可用示波器  */
                       6     ;/*    的探头点在此处观察。                                      */
                       7     ;/*****************************************************************/
                       8     
  0090                 9     SI               EQU P1.0
  0091                10     SCK              EQU P1.1
  0092                11     CS               EQU P1.2
  0093                12     SO               EQU P1.3
                      13     
0000                  14                      ORG 0000H    ;程序入口
0000 C2AF             15                      CLR EA
0002 D292             16                                  SETB CS
0004 C292             17                                  CLR CS
0006 740F             18                                  MOV A,#0FH    ;输入0FFFH,输出电压为REF*2
0008 12005E           19                                  LCALL BYTE_OUT
000B 74FF             20                                  MOV A,#0FFH
000D 12005E           21                                  LCALL BYTE_OUT
0010 D292             22                      SETB CS
0012 12007A           23                                  LCALL DELAY
0015 00               24                      NOP
0016 C292             25                      CLR CS
0018 7407             26                                  MOV A,#07H    ;输入07FFH,输出电压为REF
001A 12005E           27                                  LCALL BYTE_OUT
001D 74FF             28                                  MOV A,#0FFH
001F 12005E           29                                  LCALL BYTE_OUT
0022 D292             30                      SETB CS
0024 12007A           31                      LCALL DELAY
0027 00               32                      NOP
0028 C292             33                      CLR CS
002A 7403             34                                  MOV A,#03H    ;输入03FFH,输出电压为REF/2
002C 12005E           35                                  LCALL BYTE_OUT
002F 74FF             36                                  MOV A,#0FFH
0031 12005E           37                                  LCALL BYTE_OUT
0034 D292             38                      SETB CS
0036 12007A           39                      LCALL DELAY
0039 00               40                      NOP
003A C292             41                      CLR CS
003C 7401             42                                  MOV A,#01H    ;输入01FFH,输出电压为REF/4
003E 12005E           43                                  LCALL BYTE_OUT
0041 74FF             44                                  MOV A,#0FFH
0043 12005E           45                                  LCALL BYTE_OUT
0046 D292             46                      SETB CS
0048 12007A           47                                  LCALL DELAY
004B 00               48                      NOP
004C C292             49                      CLR CS
004E 7400             50                                  MOV A,#00H    ;输入0000H,输出电压为0
0050 12005E           51                                  LCALL BYTE_OUT
0053 7400             52                                  MOV A,#000H
0055 12005E           53                                  LCALL BYTE_OUT
0058 D292             54                      SETB CS
005A 00               55                                  NOP
005B 02005B           56                      LJMP $
005E 7808             57     BYTE_OUT:       MOV R0,#08H    ;发送单个字节到芯片串口
0060 C291             58     BOUT1:          CLR SCK
A51 MACRO ASSEMBLER  MAX539                                                               08/10/2007 11:42:10 PAGE     2

0062 33               59                             RLC A
0063 9290             60                             MOV SI,C
0065 D291             61                             SETB SCK
0067 D8F7             62                           DJNZ R0,BOUT1
0069 C290             63                             CLR SI
006B 22               64                             RET
006C 7808             65     BYTE_IN:        MOV R0,#08H    ;从芯片串口取出单个字节
006E D291             66     BIN1:           SETB SCK
0070 C291             67                     CLR SCK
0072 A293             68                             MOV C,SO
0074 33               69                             RLC A
0075 D8F7             70                             DJNZ R0,BIN1
0077 C291             71                     CLR SCK
0079 22               72                             RET
                      73     
007A                  74     DELAY:                          ;延时程序
007A 7A0A             75                     MOV   R2, #10
007C 7900             76                     MOV   R1, #0
007E 7800             77                     MOV   R0, #0
0080                  78     DLP:
0080 D8FE             79                     DJNZ  R0, DLP
0082 D9FC             80                     DJNZ  R1, DLP
0084 DAFA             81                     DJNZ  R2, DLP
0086 22               82                     RET
                      83                             END
                             
A51 MACRO ASSEMBLER  MAX539                                                               08/10/2007 11:42:10 PAGE     3

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


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

BIN1 . . . . . . .  C ADDR   006EH   A   
BOUT1. . . . . . .  C ADDR   0060H   A   
BYTE_IN. . . . . .  C ADDR   006CH   A   
BYTE_OUT . . . . .  C ADDR   005EH   A   
CS . . . . . . . .  B ADDR   0090H.2 A   
DELAY. . . . . . .  C ADDR   007AH   A   
DLP. . . . . . . .  C ADDR   0080H   A   
EA . . . . . . . .  B ADDR   00A8H.7 A   
P1 . . . . . . . .  D ADDR   0090H   A   
SCK. . . . . . . .  B ADDR   0090H.1 A   
SI . . . . . . . .  B ADDR   0090H.0 A   
SO . . . . . . . .  B ADDR   0090H.3 A   


REGISTER BANK(S) USED: 0 

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

⌨️ 快捷键说明

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