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

📄 ds18b20xu.lst

📁 是DS18B20读序列号的汇编程序
💻 LST
字号:
A51 MACRO ASSEMBLER  DS18B20XU                                                            03/21/2008 22:15:03 PAGE     1


MACRO ASSEMBLER A51 V7.10
NO OBJECT MODULE REQUESTED
ASSEMBLER INVOKED BY: D:\C51\BIN\A51.EXE ds18b20xu.asm SET(SMALL) DEBUG EP

LOC  OBJ            LINE     SOURCE

                       1     ;|--------------------------------------------------|
                       2     ;|       读出ds1820序列号应用程序,P1.0接ds1820        |
                       3     ;|--------------------------------------------------|
0000                   4              ORG 0000H
0000 0120              5              AJMP MAIN
0020                   6              ORG 0020H
                       7     ;===========================================================
0020 758160            8     MAIN:    MOV   SP,#60H
0023 C2AF              9              CLR   EA         ;使用ds1820一定要禁止任何中断产生
0025 120063           10              LCALL   INT        ;初始化ds1820
0028 7433             11              MOV   A,#33H
002A 120083           12              LCALL   WRITE      ;送入读ds1820的ROM命令
002D 120097           13              LCALL   READ       ;开始读出当前ds1820序列号
0030 F540             14              MOV   40H,A
0032 120097           15              LCALL   READ
0035 F541             16              MOV   41H,A
0037 120097           17              LCALL   READ
003A F542             18              MOV   42H,A
003C 120097           19              LCALL   READ
003F F543             20              MOV   43H,A
0041 120097           21              LCALL   READ
0044 F544             22              MOV   44H,A
0046 120097           23              LCALL   READ
0049 F545             24              MOV   45H,A
004B 120097           25              LCALL READ
004E F546             26              MOV   46H,A
0050 120097           27              LCALL   READ
0053 F547             28              MOV   47H,A
0055 120097           29              LCALL   READ
0058 F548             30              MOV   48H,A
005A 120097           31              LCALL   READ
005D F549             32              MOV   49H,A
005F D2AF             33              SETB   EA
0061 80FE             34              SJMP   $
                      35     ;===========================================================
0063 C2AF             36     INT:     CLR   EA           ;初始化ds1820子程序        
0065 C290             37     L0:      CLR   P1.0         ;ds1820总线为低复位电平
0067 7AC8             38              MOV   R2,#200
0069 C290             39     L1:      CLR   P1.0
006B DAFC             40              DJNZ   R2,L1       ;总线复位电平保持400us
006D D290             41              SETB   P1.0        ;释放ds1820总线
006F 7A1E             42              MOV   R2,#30
0071                  43     L4:      JNZ   R2,L4        ;释放ds1820总线保持60us
*** ____________________________________________________^
*** _____________________________________________________^
*** ERROR #A9 IN 43 (ds18b20xu.asm, LINE 43): SYNTAX ERROR
*** ERROR #A9 IN 43 (ds18b20xu.asm, LINE 43): SYNTAX ERROR
0071 C3               44              CLR   C            ;清存在信号(存在C=1,不存在c=0)
0072 7290             45              ORL   C,P1.0
0074 40EF             46              JC    L0            ;存在吗?不存在则重新来
0076 7E50             47              MOV   R6,#80
0078 7290             48     L5:      ORL   C,P1.0
007A 4004             49              JC    L3
007C DEFA             50              DJNZ   R6,L5      
007E 80E5             51              SJMP   L0
0080 7AF0             52     L3:      MOV   R2,#240
0082                  53     L2:      JNZ   R2,L2
*** __________________________________^
A51 MACRO ASSEMBLER  DS18B20XU                                                            03/21/2008 22:15:03 PAGE     2

*** ERROR #A38 IN 53 (ds18b20xu.asm, LINE 53): NUMBER OF OPERANDS DOES NOT MATCH INSTRUCTION
0082 22               54              RET
                      55     ;===========================================================
0083 C2AF             56     WRITE:   CLR   EA           ;向ds1820写操作命令子程序
0085 7B08             57              MOV   R3,#8        ;写入ds1820的bit

⌨️ 快捷键说明

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