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

📄 ds1820.asm

📁 单线串行温度传感器DS18B20汇编程序(51)
💻 ASM
字号:
        ORG 0000H
        AJMP TEMPP
        ORG 100H
TEMPP:  MOV 40H,#00
        MOV 41H,#00
        ACALL RST
        MOV A,#0CCH
        ACALL WRIT
        MOV A,#44H
        LCALL WRIT
        JNB P1.0,$
        LCALL TIM1
        JNB P1.0,$
        ACALL RST
        MOV A,#0CCH
        LCALL WRIT
        MOV A,#0BEH
        LCALL WRIT
        MOV R5,#02       ;READ TEMPERATURE BIT SUM
        MOV R0,#40H      ;TEMPERATURE START ADDRES LSB 41H<--MSB
        LCALL READ
        LCALL TEMP
LOOP:   AJMP LOOP
        RET
RST:    NOP
        CLR P1.0
        MOV R7,#03H               ;REST
RST1:   MOV R6,#90
RST2:   DJNZ R6,RST2
        DJNZ R7,RST1
        SETB P1.0
        MOV R7,#20
RST3:   DJNZ R7,RST3
RST4:   JB P1.0,RST4
        MOV R7,#120
LL2:    DJNZ R7,LL2
        SETB P1.0
        MOV R7,#130
        DJNZ R7,$
        RET
WRIT:   MOV R6,#08H        ;WRIT  A->DS1820
        CLR C
WRI1:   SETB P1.0
        MOV R7,#28
        RRC A
        CLR P1.0
        NOP
        NOP
        NOP
        NOP
        MOV P1.0,C
LL5:    DJNZ R7,LL5
        DJNZ R6,WRI1
        SETB P1.0
        RET
READ:   MOV R6,#8           ;READ  DS1820-->50H
        CLR C
        CLR A
RED1:   SETB P1.0
        MOV R7,#23
        NOP
        CLR P1.0
        NOP
        NOP
        SETB P1.0
        NOP
        NOP
        NOP
        NOP
        NOP
        NOP
        MOV C,P1.0
        RRC A
LL3:    DJNZ R7,LL3
        DJNZ R6,RED1
        MOV @R0,A
        INC R0
        CLR C
        CLR A
        MOV R6,#08H
        DJNZ R5,RED1
        SETB P1.0
        RET
TIM1:   MOV R7,#6
TI2:    MOV R6,#250
TI1:    MOV R5,#250
TI0:    DJNZ R5,TI0
        DJNZ R6,TI1
        DJNZ R7,TI2
        RET
TEMP:   MOV A,41H
        ANL A,#0FH
        SWAP A
        MOV B,A
        MOV A,40H
        JNB ACC.3,TE1
        MOV 41H,#05H
        AJMP TE2
TE1:    MOV 41H,#00H
TE2:    ANL A,#0F0H
        SWAP A
        ORL A,B
        MOV B,#10
        DIV AB
        SWAP A
        ANL A,#0F0H
        ANL B,#0FH
        ORL A,B        
        MOV 40H,A
        RET
        END

⌨️ 快捷键说明

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