最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

登錄 免費(fèi)注冊(cè) 首頁(yè) | 行業(yè)黑名單 | 幫助
維庫(kù)電子市場(chǎng)網(wǎng)
技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測(cè)控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng)
驅(qū)動(dòng)編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計(jì) | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe

求助!!!18B20使用!!!!!!江湖救急!!!!!斑竹幫忙!。。。!

作者:cuiyizheng 欄目:單片機(jī)
求助!!!18B20使用!!!!!!江湖救急!!!!!斑竹幫忙。。。。。
先謝謝各位大哥了!!
我現(xiàn)在做畢業(yè)設(shè)計(jì),其中一部分用到18B20做溫度采集,自己找了一個(gè)程序,單片機(jī)晶振11.0592,用的是89C51.現(xiàn)在做仿真,就是測(cè)不出溫度!!!用的匯編.
采上來(lái)的數(shù)據(jù)全部是FF!!
用的直接接電源的方法,沒(méi)有上拉電阻.加了也不行.我做的是兩路采集.各位大哥幫幫忙看看!!!
程序在這里:
DQ_0     EQU     P1.0
DQ_1     EQU     P1.1
DQ_2     EQU     P1.2
DQ_3     EQU     P1.3

ADDR    EQU    40H
LENGTH    EQU    41H
DAT_BGN    EQU    42H
FLAG_RX    EQU    7FH
_LOCAL    EQU    07H

;CH0 DATA
HI_0    EQU    51H
LO_0    EQU    50H

;CH1 DATA
HI_1    EQU    53H
LO_1    EQU    52H




ORG     0000H
AJMP    MAIN
ORG    0023H

ORG    0100H
MAIN:

    
    
        
SUB_PRO:
    LCALL    SUB_FUNCTION_0    
    LCALL    SUB_FUNCTION_1
    

;//////////////////////////////////CH0
SUB_FUNCTION_0:                ;本子函數(shù)將溫度轉(zhuǎn)化后存入40H,41H
    PUSH     07H
    PUSH     03H
    ACALL     DS18B20_RST_CH_0    ;復(fù)位
    MOV     R7,#0CCH        ;直接開(kāi)始函數(shù)指令
    ACALL     _DS18B20_W8_CH_0
    MOV     R7,#44H            ;命令傳感器開(kāi)始轉(zhuǎn)化溫度
    ACALL     _DS18B20_W8_CH_0

    
    MOV     R3,#02H
WAIT5US_0:
    DJNZ     R3,WAIT5US_0        ;延遲幾個(gè)微秒
    SETB     DQ_0            ;將DQ_0上拉935毫秒,為傳感器轉(zhuǎn)化溫度供電
    ACALL     DELAY315MS     
    ACALL     DELAY315MS    
    ACALL     DELAY315MS
    CLR     DQ_0

    ACALL     DS18B20_RST_CH_0    ;復(fù)位

    MOV     R7,#0CCH        ;直接開(kāi)始函數(shù)指令
    ACALL     _DS18B20_W8_CH_0
    MOV     R7,#0BEH        ;開(kāi)始讀中間存儲(chǔ)器
    ACALL     _DS18B20_W8_CH_0
    ACALL     DS18B20_R8_CH_0
    MOV     50H,R7            ;開(kāi)始讀溫度值低字節(jié)至40H
    ACALL     DS18B20_R8_CH_0
    MOV     51H,R7            ;開(kāi)始讀溫度值高字節(jié)至41H

    POP 03H
    POP 07H
    RET



;;DS18B20 SERVICE PROGRAM OF CHANNEL 1
DS18B20_RST_CH_0:            ;復(fù)位函數(shù)
    PUSH     02H
    PUSH     06H
L11O_0:
    CLR     DQ_0            ;將DQ_0清零480US以上
    MOV     R2,#200
L111_0:
    NOP
    DJNZ     R2,L111_0
    SETB     DQ_0        
    MOV     R2,#30
L114_0:
    DJNZ     R2,L114_0
    CLR     C
    ORL     C,DQ_0            ;讀DQ_0入C
    JC     L113_0            ;DQ_0為1時(shí)初始化結(jié)束
    MOV     R6,#80
L115_0:
    ORL     C,DQ_0            ;DQ_0不為1時(shí),繼續(xù)讀DQ_0判斷    
    JC     L113_0
    DJNZ     R6,L115_0
    SJMP     L11O_0

L113_0:
    MOV     R2,#250
L112_0:
    DJNZ     R2,L112_0
    POP     02H
    POP     06H
    RET


_DS18B20_W8_CH_0:    ;本函數(shù)將R7中的數(shù)從DQ_0寫出
    PUSH     03H
    PUSH     04H
    MOV     A,R7
    MOV     R3,#8
WR111_0:     
    SETB     DQ_0    
    MOV     R4,#8
    RRC     A            ;R7的低位依次放入C中
    CLR     DQ_0        ;將DQ_0清零15uS以內(nèi)
WR112_0:
    DJNZ     R4,WR112_0
    MOV     DQ_0,C        ;將C的值置入DQ_0上發(fā)出
    MOV     R4,#20
WR113_0:
    DJNZ     R4,WR113_0
    DJNZ     R3,WR111_0        ;循環(huán)8次R7的8位依次發(fā)出
    SETB    
2樓: >>參與討論
cuiyizheng
謝謝啦!
幫幫忙啊!!!

3樓: >>參與討論
cuiyizheng
我覺(jué)得也可能是程序中的延遲有問(wèn)題!!
 
4樓: >>參與討論
cuiyizheng
有沒(méi)有人知道啊!!????
 
5樓: >>參與討論
ODQQDO
我也覺(jué)得也可能是程序中的延遲有問(wèn)題!!
    ACALL     DELAY315MS     
    ACALL     DELAY315MS    
    ACALL     DELAY315MS
可能太久了,好像12位精度都只要750MS。

6樓: >>參與討論
cuiyizheng
有一次我用6M的內(nèi)部時(shí)鐘竟然做出來(lái)了!
有一次我用6M的內(nèi)部時(shí)鐘竟然做出來(lái)了!
效果還不錯(cuò),結(jié)果半天以后就不行了!
調(diào)試了3天了,結(jié)果還是FF!!!


7樓: >>參與討論
cuiyizheng
!!
我精確的算了一遍延時(shí),改了下.
但是結(jié)果還是全一!!

8樓: >>參與討論
cuiyizheng
斑竹在嗎!!!
 
9樓: >>參與討論
puppyh
復(fù)位以后要延時(shí)60毫秒,你好像沒(méi)有做
 
10樓: >>參與討論
cuiyizheng
關(guān)于復(fù)位??
還有一個(gè)問(wèn)題,我在復(fù)位時(shí)拉高電平后等待的是傳感器發(fā)過(guò)來(lái)的高電平還是低電平作為復(fù)位成功判斷.

SETB  DQ_0  
MOV  R2,#30
L114_0:
DJNZ  R2,L114_0
CLR  C
ORL  C,DQ_0   ;讀DQ_0入C
JC  L113_0   ;DQ_0為1時(shí)初始化結(jié)束
有的書上說(shuō)是收到低電平初始化結(jié)束啊!

請(qǐng)指教!


11樓: >>參與討論
puppyh
應(yīng)該是低電平
在復(fù)位時(shí),拉高電平后等待傳感器反饋低電平作為復(fù)位成功判斷。

參與討論
昵稱:
討論內(nèi)容:
 
 
相關(guān)帖子
請(qǐng)問(wèn)各位大俠誰(shuí)有關(guān)于ADUC812的相關(guān)程序,小弟急需
發(fā)現(xiàn)一個(gè)protel的問(wèn)題
哪位大俠能給一個(gè)均方根算法的程序
好心人幫幫忙啊——AT45DBO41B和MAX232都是座什么用 的呀
哪位有開(kāi)方運(yùn)算程序
免費(fèi)注冊(cè)為維庫(kù)電子開(kāi)發(fā)網(wǎng)會(huì)員,參與電子工程師社區(qū)討論,點(diǎn)此進(jìn)入


Copyright © 1998-2006 www.udpf.com.cn 浙ICP證030469號(hào)