中文字幕无码不卡一区二区三区_少妇被又大又粗又爽毛片久久黑人_91精品国产在热久久无毒不卡_久久久久久亚洲综合网站

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

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

開(kāi)發(fā)工具

提供開(kāi)發(fā)工具、應(yīng)用測(cè)試 完善的開(kāi)發(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在16F877A上的實(shí)現(xiàn)

更新時(shí)間: 2019-03-26
閱讀量:2021

;************************************************************************
;<<溫度計(jì)-基于DS18B20>>
;時(shí)間:2006.3.6
;程序文件名:“DS18B20.asm”
;功能實(shí)現(xiàn):通過(guò)DS18B20來(lái)讀取溫度,顯示在2LED上,精確到1
;硬件連接:(1)RC0-RC7接共陽(yáng)數(shù)碼管的段碼A-H
;             RA0-RA3接共陽(yáng)數(shù)碼管的位碼DIG0-DIG3
;***********************************************************************

 

;***********************************************************************
;定義單片機(jī)型號(hào)為PIC16F877A
;程序包含文件:P16F877A.INC
;定義配置字
;***********************************************************************
LIST   P=16F877A                  ;定義本程序所使用的芯片為PIC16F877A
#INCLUDE "P16F877A.INC"            ;定義本程序包含該文件

__CONFIG  3F72H                   ;晶振配置HS,看門(mén)狗禁止,上電延時(shí)使能,掉電復(fù)位使能
                                  ;低電壓編程禁止,代碼不保護(hù)

 

#DEFINE   DQ         PORTB,2
#DEFINE   DIR        TRISB,2
         
CBLOCK    20H
      Y1
      Y2
      COUNT1
      COUNT2
      COMD
      DATE
      BIN_L                       ;要進(jìn)行轉(zhuǎn)換的字節(jié)
      GE                          ;轉(zhuǎn)換后的個(gè)位

__CONFIG  3F72H                   ;晶振配置HS,看門(mén)狗禁止,上電延時(shí)使能,掉電復(fù)位使能
                                  ;低電壓編程禁止,代碼不保護(hù)

 

#DEFINE   DQ         PORTB,2
#DEFINE   DIR        TRISB,2
         
CBLOCK    20H
      Y1
      Y2
      COUNT1
      COUNT2
      COMD
      DATE
      BIN_L                       ;要進(jìn)行轉(zhuǎn)換的字節(jié)
      GE                          ;轉(zhuǎn)換后的個(gè)位

__CONFIG  3F72H                   ;晶振配置HS,看門(mén)狗禁止,上電延時(shí)使能,掉電復(fù)位使能
                                  ;低電壓編程禁止,代碼不保護(hù)

 

#DEFINE   DQ         PORTB,2
#DEFINE   DIR        TRISB,2
         
CBLOCK    20H
      Y1
      Y2
      COUNT1
      COUNT2
      COMD
      DATE
      BIN_L                       ;要進(jìn)行轉(zhuǎn)換的字節(jié)
      GE                          ;轉(zhuǎn)換后的個(gè)位


 MOVLW     0BEH           ;讀內(nèi)部RAM中的9字節(jié)內(nèi)容
         CALL      WR18B20
         NOP
         CALL      RE18B20        ;讀數(shù)據(jù)   
         MOVF      DATE,W        
         MOVWF     DATE_L         ;讀低8
         CALL      RE18B20        ;讀數(shù)據(jù)   
         MOVF      DATE,W        
         MOVWF     DATE_H         ;讀高8
         MOVF      DATE_L,W
;------------------------顯示處理--------------------------------------
         RRF       DATE_H,F
         RRF       DATE_L,F
         RRF       DATE_H,F
         RRF       DATE_L,F
         RRF       DATE_H,F

 RRF       DATE_L,F
         RRF       DATE_H,F
         RRF       DATE_L,F
         MOVF      DATE_L,W
         MOVWF     BIN_L          ;把高8位的低4位和低8位的高4位組合起來(lái)
         CALL      DISPLAY        ;調(diào)用數(shù)碼管顯示程序
         GOTO      START
        
;=======================================================================

 

;***********************************************************************
;初始化和消影
;***********************************************************************
INTIAL   BSF       STATUS,RP0     ;定義當(dāng)前體為體1,對(duì)方向寄存器進(jìn)行修改
         MOVLW     07H
         MOVWF     ADCON1         ;關(guān)閉A口的模擬通道   
         MOVLW     00H
         MOVWF     TRISC          ;段碼顯示口為輸出口
         MOVLW     0F0H
         ANDWF     TRISA,1        ;使位碼(RA0-RA3)為輸出口     
         BSF       DIR             ;使數(shù)據(jù)線為輸入

 RRF       DATE_L,F
         RRF       DATE_H,F
         RRF       DATE_L,F
         MOVF      DATE_L,W
         MOVWF     BIN_L          ;把高8位的低4位和低8位的高4位組合起來(lái)
         CALL      DISPLAY        ;調(diào)用數(shù)碼管顯示程序
         GOTO      START
        
;=======================================================================

 

;***********************************************************************
;初始化和消影
;***********************************************************************
INTIAL   BSF       STATUS,RP0     ;定義當(dāng)前體為體1,對(duì)方向寄存器進(jìn)行修改
         MOVLW     07H
         MOVWF     ADCON1         ;關(guān)閉A口的模擬通道   
         MOVLW     00H
         MOVWF     TRISC          ;段碼顯示口為輸出口
         MOVLW     0F0H
         ANDWF     TRISA,1        ;使位碼(RA0-RA3)為輸出口     
         BSF       DIR             ;使數(shù)據(jù)線為輸入

      BSF       STATUS,RP0     ;使當(dāng)前體為體1
         BSF       DIR            ;使數(shù)據(jù)位為輸入
         BCF       STATUS,RP0     ;使當(dāng)前體為體
         NOP
         BTFSS     DQ             ;如果數(shù)據(jù)線為高電平,則C=1
         BCF       STATUS,C
         BTFSC     DQ             ;如果數(shù)據(jù)線為低電平,則C=0
         BSF       STATUS,C
         RRF       DATE,1          ;數(shù)據(jù)依次存在DATE
         MOVLW     D'20'           ;延時(shí)60us
         MOVWF     COUNT1
RE2      DECFSZ    COUNT1,1
         GOTO      RE2
         DECFSZ    COUNT2,1
         GOTO      RE0
         BSF       DQ
         RETLW     00H
;=======================================================================       
      

 

;=======================================================================
         END                      ;程序結(jié)束


丹巴县| 金湖县| 常山县| 华蓥市| 黄山市| 禹州市| 盘锦市| 阿城市| 盐城市| 紫阳县| 宁河县| 广丰县| 台东县| 蒙城县| 汉阴县| 高阳县| 安平县| 仲巴县| 灵川县| 凤冈县| 泽库县| 临漳县| 霞浦县| 松阳县| 金湖县| 扎赉特旗| 平谷区| 温宿县| 丹寨县| 绵阳市| 沙田区| 嘉禾县| 泉州市| 建水县| 商城县| 镇平县| 南郑县| 赤峰市| 金川县| 寿阳县| 错那县|