PIC单片机

单片机

PIC单片机 PIC单片机自学 PIC单片机编程 PIC单片机教材下载 PIC单片机学习源程序 PIC单片机仿真器|PIC单片机编程器 PIC单片机编程器实验板定价 PIC单片机学习开发板购买方式 PIC单片机学习论坛
【侃单片机】主题文章: 回复文章:DS18B20和PIC单片机通讯源程序
发信人:hpu1234 发表时间:2002-08-22 11:20:08

;PIC单片机 www.pic16.com
     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


PIC单片机 www.pic16.com