国产精品无码一区二区三区A片_无码狠狠躁久久久久久久91_国产精品久久久久久久_国产99九九久久无码熟妇_国产人妻精品久久久久野外_久久夜色精品国产欧美乱极品_91精品国产色综合久久不卡98口_精品人妻系列无码人妻免费视频

技術(shù)熱線: 4007-888-234
設(shè)計(jì)開發(fā)

專注差異化嵌入式產(chǎn)品解決方案 給智能產(chǎn)品定制注入靈魂給予生命

開發(fā)工具

提供開發(fā)工具、應(yīng)用測(cè)試 完善的開發(fā)代碼案例庫(kù)分享

技術(shù)支持

從全面的產(chǎn)品導(dǎo)入到強(qiáng)大技術(shù)支援服務(wù) 全程貼心伴隨服務(wù),創(chuàng)造無(wú)限潛能!

新品推廣

提供新的芯片及解決方案,提升客戶產(chǎn)品競(jìng)爭(zhēng)力

新聞中心

提供最新的單片機(jī)資訊,行業(yè)消息以及公司新聞動(dòng)態(tài)

DS18B20和PIC單片機(jī)通訊源程序

更新時(shí)間: 2019-03-22
閱讀量:2808

十年專注單片機(jī)方案開發(fā)的深圳英銳恩分享DS18B20和PIC單片機(jī)通訊源程序。

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