DS18B20詳細(xì)使用方法_第1頁(yè)
DS18B20詳細(xì)使用方法_第2頁(yè)
DS18B20詳細(xì)使用方法_第3頁(yè)
DS18B20詳細(xì)使用方法_第4頁(yè)
DS18B20詳細(xì)使用方法_第5頁(yè)
已閱讀5頁(yè),還剩6頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、DS18B20的詳細(xì)使用方法1 DS18B20概述DS18B20 數(shù)字溫度計(jì)是 DALLAS 公司生產(chǎn)的 1Wire,即單總線器件,具有線路簡(jiǎn)單, 體積小的特點(diǎn)。 因此用它來(lái)組成一個(gè)測(cè)溫系統(tǒng),具有線路簡(jiǎn)單,在一根通信線,可以掛很多 這樣的數(shù)字溫度計(jì),十分方便。2、 DS18B20產(chǎn)品的特點(diǎn)(1).只要求一個(gè)端口即可實(shí)現(xiàn)通信。(2).在 DS18B20中的每個(gè)器件上都有獨(dú)一無(wú)二的序列號(hào)。(3).實(shí)際應(yīng)用中不需要外部任何元器件即可實(shí)現(xiàn)測(cè)溫。(4).測(cè)量溫度范圍在 55。C 到 125。 C 之間。(5).數(shù)字溫度計(jì)的分辨率用戶可以從 9位到 12位選擇。(6).內(nèi)部有溫度上、下限告警設(shè)置。3、 D

2、S18B20引腳圖及引腳功能介紹TO 92封裝的 DS18B20的引腳排列見圖 1,其引腳功能描述見表 1。(底視圖)圖 1表1DS18B20 詳細(xì)引腳功能描述4 DS18B20的使用方法由于 DS18B20采用的是 1 Wire 總線協(xié)議方式, 即在一根數(shù)據(jù)線實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸, 而對(duì) AT89S51單片機(jī)來(lái)說,硬件上并不支持單總線協(xié)議,因此,我們必須采用軟件的方法來(lái)模擬 單總線的協(xié)議時(shí)序來(lái)完成對(duì) DS18B20 芯片的訪問。由于 DS18B20 是在一根 I/O 線上讀寫數(shù)據(jù),因此,對(duì)讀寫的數(shù)據(jù)位有著嚴(yán)格的時(shí)序要求。DS18B20 有嚴(yán)格的通信協(xié)議來(lái)保證各位數(shù)據(jù)傳輸?shù)恼_性和完整性。 該協(xié)

3、議定義了幾種信號(hào) 的時(shí)序:初始化時(shí)序、讀時(shí)序、寫時(shí)序。所有時(shí)序都是將主機(jī)作為主設(shè)備,單總線器件作為 從設(shè)備。 而每一次命令和數(shù)據(jù)的傳輸都是從主機(jī)主動(dòng)啟動(dòng)寫時(shí)序開始, 如果要求單總線器件 回送數(shù)據(jù), 在進(jìn)行寫命令后, 主機(jī)需啟動(dòng)讀時(shí)序完成數(shù)據(jù)接收。 數(shù)據(jù)和命令的傳輸都是低位 在先。DS18B20 的復(fù)位時(shí)序DS18B20 的讀時(shí)序?qū)τ?DS18B20 的讀時(shí)序分為讀 0時(shí)序和讀 1時(shí)序兩個(gè)過程。對(duì)于 DS18B20 的讀時(shí)隙是從主機(jī)把單總線拉低之后,在15秒之內(nèi)就得釋放單總線,以讓DS18B20把數(shù)據(jù)傳輸?shù)絾慰偩€上。 DS18B20在完成一個(gè)讀時(shí)序過程, 至少需要 60us 才能完成。DS18B

4、20 的寫時(shí)序?qū)τ?DS18B20 的寫時(shí)序仍然分為寫 0時(shí)序和寫 1時(shí)序兩個(gè)過程。對(duì)于 DS18B20寫 0時(shí)序和寫 1時(shí)序的要求不同,當(dāng)要寫 0時(shí)序時(shí),單總線要被拉低至少 60us, 保證 DS18B20能夠在 15us 到45us之間能夠正確地采樣 IO 總線上的 “0”電平,當(dāng)要寫 1時(shí)序時(shí), 單總線被拉低之后,在 15us 之內(nèi)就得釋放單總線。DS18B20 應(yīng)用電路圖用一片 DS18B20 構(gòu)成測(cè)溫系統(tǒng),測(cè)量的溫度精度達(dá)到 0.1度,測(cè)量的溫度的范圍在 20度到 100度之間,用 8位數(shù)碼管顯示出來(lái)。下圖是采用AT89C2051 的測(cè)溫系統(tǒng)硬件原理圖 .DS18B20與 AT89C

5、2051組成的測(cè)溫系統(tǒng)源 程序用一片 DS18B20構(gòu)成測(cè)溫系統(tǒng),測(cè) 量的溫度精度達(dá)到 0. 1度,測(cè) 量的溫度的范圍在20度 到100度 之間,用 8位數(shù)碼管顯示出來(lái)。下面是采用 AT89C2051 單片機(jī)與 DS18B20 的測(cè)溫系統(tǒng) C語(yǔ)言源程 序,硬件電路請(qǐng)參考本站相關(guān)文章. I Nc l ud e <AT89X52. H> I Nc l ud e <I NTRI NS. H>Uns i gned Char Code Di spl ayb i t = 0xf e, 0xf d, 0xf b, 0xf 7,0x ef , 0xdf , 0xb f , 0x7f ;

6、 Unsi gned Char Code Di spl aycode =0x3f , 0x06, 0x5b,0x4f ,0x66, 0x6d, 0x7d, 0x0 7,0x7f , 0x6f , 0x77, 0x7 c,2, 16, 19, 2 2,0x39, 0x5e, 0x79, 0x71, 0x00, 0x40 ;Uns i gned Char Code Dot c ode 32 = 0, 3, 6, 9, 1 25, 28, 31, 34, 3 8, 41, 44, 48 ,50, 53, 56, 59, 6 3, 66, 69, 72 , 75, 78, 81, 84, 8 8, 9

7、1, 94, 97 ;Uns i gned CharDi s p l ay count ;Uns i gned CharDi splaybuf 8 =16, 16, 16,16,16, 16, 16, 16 ;Uns i gned CharTi me co u nt ;Uns i gned CharRead dat a 8 ;Sbi t DQ=P3 7;Bi t Sf l ag ;Bi t Reset pul se( Voi d) Uns i gn e d Ch a r IDQ=0;Fo r ( I=25 5 ; I>0 ; I-)DQ=1;Fo r ( I=60; I > 0;

8、I -);Re t u rn( DQ) ;Fo r ( I=20 0 ; I>0 ; I-)Co mma n d )Voi d Wr i t ecommandt ods18b2 0( Unsi gned CharUns i gned Ch ar I ;Uns i gned Ch ar J ;For ( I =0; I <8 ; I +)If (Command & 0x01)=0)DQ=0;For (J=35; J>0; J- ) ;DQ=1;El s eDQ=0;For(J=2;J>0; J-);DQ=1;For( J=33; J>0;J-);Comman

9、d=_cror_(Command, 1);Unsi gned Char Readdat af r omds18b20( Voi d)UnsignedCharI;UnsignedCh a rJ;UnsignedCh a rTe mp;Temp=0;Fo r (I = 0; I<8 ; I+)Temp=_cr or _( Temp,1) ;DQ=0;_nop _( ) ;_nop _( ) ;DQ=1;For( J=10;J>0;J- -);If (DQ=1)Temp=Temp | 0x 80;El s eTemp =Temp | 0x00;For ( J=200; J>0; J

10、- -) ;Ret ur n( Temp ) ;Voi d Mai n(Voi d)TMOD=0x01;TH0=(65536-4000)/ 256;TL0=( 65536-4000) %256;ET0=1;EA=1;Whi l e( Reset pul se( ) ;Wr i t ecommandt ods18b20(0xcc) ;Wr i t ecommandt ods18b20(0x44) ;TR0=1;Whi l e ( 1)Voi d T0(Void) Interrupt 1 Usi ng 0Uns i gned Ch ar X;Uns i gned I n t Resul t ;TH

11、0=(65536-4000)/ 256;TL0=( 65536-4000) %256;I f ( Di spl ayc ount =2)0x80;P0=Di spl aycode Di spl aybuf Di spl aycount |El s eP0=Di spl aycode Di spl aybuf Di spl aycount P2=Di spl ayb i t Di spl ay count ;Di s pl ayc oun t +;I f ( Di spl ayc ount =8)Di s pl ay c ount =0;Ti mec ount +;I f ( Ti mec ou

12、n t =150)Ti mecou nt =0;Whi l e( Reset pul se() ) ;Wr i t ecommandt ods18b20( 0xcc) ;Wr i t ecommandt o ds18b20( 0xbe) ;Readdat a 0 =Readdat af r omds18b20() ;Readdat a 1 =Readdat af r omds18b20() ;For ( X=0 ; X<8; X+)Di spl aybuf X =16;Sf l ag=0 ;If (Readdata1 & 0xf8)!=0x00)Sf l ag =1;Readdat a 1 =Readdat a 1 ;Readdat a 0 =Readdat a 0 ;Res ul t =Rea ddat a 0 +1;Readdat a 0 =Resul t ;If(Resul t>2

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論