×
单片机 > 单片机程序设计 > 详情

DS18b20同PIC单片机通讯源程序

发布时间:2020-06-23 发布时间:
|
     ORG     PIC54
     GOTO    MAIN
     ORG     0
;----------------------
;----------------------------
DELAY22            
        MOVLW   D'200'               ; DELAY 2*250=500mS
        MOVWF    COUNT1
DE32    MOVLW   D'250'                ; 8*250=2mS
    MOVWF    COUNT2
DE42    NOP                          ; 1+2+1=5uS
        DECFSZ    COUNT2,1
        GOTO    DE42
        DECFSZ    COUNT1,1
        GOTO    DE32
        RETLW   0             
;--------------------------------
;       子程序!!!
;********************************
MAIN
        MOVLW  0FFH
        TRIS   RA
LOOP
        CALL   CONVERT
        CALL   DELAY22
        CALL   DELAY22
        CALL   GET_TEMP

        GOTO   LOOP
;------------------------
GET_TEMP
       CALL   INI
       MOVLW  0CCH
       MOVWF  COMD
       CALL   WR1820
       MOVLW  0BEH
       MOVWF  COMD
       CALL   WR1820
       CALL   RE1820
       MOVF   TEM_DATE,W
       MOVWF  TEM_DATEL
       CALL   RE1820
       MOVF   TEM_DATE,W
       MOVWF  TEM_DATEH
       RETLW  0
;------------------------
CONVERT
        CALL   INI
        MOVLW  0CCH
        MOVWF  COMD
        CALL   WR1820
        MOVLW  44H
        MOVWF  COMD
        CALL   WR1820
        RETLW  0

;---------DS1820---------
INI
     ;MOVLW  B'00100000'
     MOVLW  0
     TRIS   RA
     BSF    RA,3
     NOP
     BCF    RA,3
     MOVLW  D'200'
     MOVWF  COUNT1
L0
     DECFSZ COUNT1,1
     GOTO   L0
     ;MOVLW  B'01100000'
     MOVLW  0FH
     TRIS   RA
     MOVLW  D'30'
     MOVWF  COUNT1
L1
     DECFSZ COUNT1,1
     GOTO   L1
     BTFSC  RA,3
     GOTO   INI
L2
     MOVLW  D'80'
     MOVWF  COUNT1
L3
     DECFSZ COUNT1,1
     GOTO   L3
     BTFSS  RA,3
     GOTO   L0
     RETLW  0
;-------------------------
WR1820
     MOVLW   8
     MOVWF   COUNT2
WR0
     ;MOVLW   B'00100000'
     MOVLW   0
     TRIS    RA
     BCF     RA,3
     NOP
     NOP
     MOVLW   2
     MOVWF   COUNT1
WR1     
     DECFSZ  COUNT1,1
     GOTO    WR1
     ;MOVLW   B'01111111'
     MOVLW   0FH
     BTFSC   COMD,0
     BSF     RA,3
     BTFSC   COMD,0
     TRIS    RA
     BCF     STATUS,C
     RRF     COMD,1
     MOVLW   D'20'
     MOVWF   COUNT1
WR2
     DECFSZ  COUNT1,1
     GOTO    WR2
     BSF     RA,3
     ;MOVLW   B'01100000'
     MOVLW   0FH
     TRIS    RA
     DECFSZ  COUNT2,1
     GOTO    WR0
     RETLW   0
;--------------------------
RE1820
     MOVLW   8
     MOVWF   COUNT2
RE0
     ;MOVLW   B'00100000'
     MOVLW   0
     TRIS    RA
     BCF     RA,3      
     MOVLW   2
     MOVWF   COUNT1
RE1     
     DECFSZ  COUNT1,1
     GOTO    RE1
     ;MOVLW   B'01100000'
     MOVLW   0FH
     TRIS    RA
     NOP
     BTFSS   RA,3
     BCF     STATUS,C
     BTFSC   RA,3
     BSF     STATUS,C    
     RRF     TEM_DATE,1
     MOVLW   D'20'
     MOVWF   COUNT1
RE2
     DECFSZ  COUNT1,1
     GOTO    RE2
     DECFSZ  COUNT2,1
     GOTO    RE0
     BSF     RA,3
     RETLW   0
;-------------------------      
;****************************
;**************************
         END
关键字:DS18b20  PIC单片机  通讯源程序 

『本文转载自网络,版权归原作者所有,如有侵权请联系删除』

热门文章 更多
AVR熔丝位操作时的要点和需要注意的相关事项