測溫芯片DS18B20詳細解讀_第1頁
測溫芯片DS18B20詳細解讀_第2頁
測溫芯片DS18B20詳細解讀_第3頁
測溫芯片DS18B20詳細解讀_第4頁
測溫芯片DS18B20詳細解讀_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、測溫芯片DS18B20羊細解讀第一部分:DS18B20的封裝和管腳定義首先,我們來認識一下 DS18B20這款芯片的外觀和針腳定義,DS18B20芯片的常見封裝為TO-92,也就是普通直插三極管的樣子,當然也可以找到以SO (DS18B20Z )和uSOP (DS18B20U )形式封裝的產品,下面為DS18B20各種封裝的圖示及引腳圖。O NC匚NC匚心。匚DQ匚DQNC底部規(guī)角NCGNDT892封裝(DS18B20)8 7 6 5DALLAS12 3 4SQ封裝(DS18B20Z)NCNCNCGNDlo812007M6 NC3_1 NC45p=l NC聲OP封裝(DS18320U )* N

2、d置茫引腳1了解了這些該芯片的封裝形式,下面就要說到各個管腳的定義了,如下表即為該芯片的管腳定義:E引KDSQK封護TO-92封裝說明51GND接地42DQ數(shù)SE輸入/輸出引腳寄生電源槿藝時提供電潟33VDD電涯引腳,工作在奇生電漏模式時0殛妾地in m.廠mnt上面的表中提到了一個“奇怪”的詞一一“寄生電源”,那我有必要說明一下了,DS18B20芯片可以工作在“寄生電源模式”下,該模式允許DS18B20 工作在無外部電源狀態(tài),當總線為高電平時,寄生電源由單總線通過 VDD引腳, 此時DS18B20可以從總線“竊取”能量,并將“偷來”的能量儲存到寄生電源 儲能電容(Cpp )中,當總線為低電平

3、時釋放能量供給器件工作使用。所以,當 DS18B20工作在寄生電源模式時,VDD引腳必須接地。第二部分:DS18B20的多種電路連接方式如下面的兩張圖片所示,分別為外部供電模式下單只和多只 DS18B20測溫系統(tǒng) 的典型電路連接圖。(1 )外部供電模式下的單只 DS18B20芯片的連接圖單片機VpvDS18B20(2)外部供電模式下的多只 DS18B20芯片的連接圖一個單線端口通訊,當全部器件經由一個三態(tài)端口或者漏極開路端口與總線連接 時,控制線需要連接一個弱上拉電阻。在多只DS18B20連接時,每個DS18B20 都擁有一個全球唯一的64位序列號,在這個總線系統(tǒng)中,微處理器依靠每個器 件獨有

4、的64位片序列號辨認總線上的器件和記錄總線上的器件地址,從而允許 多只DS18B20同時連接在一條單線總線上,因此,可以很輕松地利用一個微處理器去控制很多分布在不同區(qū)域的 DS18B20,這一特性在環(huán)境控制、探測建筑 物、儀器等溫度以及過程監(jiān)測和控制等方面都非常有用。對于DS18B20的電路連接,除了上面所說的傳統(tǒng)的外部電源供電時的電路連接圖,DS18B20也可以工作在“寄生電源模式”,而下圖則表示了 DS18B20 工作在“寄生電源模式”下的電路連接圖。沒錯,這樣就可以使 DS18B20工作 在寄生電源模式下了,不用額外的電源就可以實時采集到位于多個地點的溫度信息了VPD518B20Vpu1

5、23第三部分:DS18B20內部寄存器解析及工作原理介紹完DS18B20的封裝、針腳定義和連接方式后,我們有必要了解DS18B20芯片的各個控制器、存儲器的相關知識,如下圖所示,為DS18B20內部主要寄存器的結果框圖FF昭魁測$1結合圖中的內部寄存器框圖,我們先簡單說一下DS18B20芯片的主要寄存器工作流程,而在對DS18B20工作原理進行詳細說明前,有必要先上幾張相關圖片:(1)DS18B20內部寄存器結構圖丈高速暫存臥byte 0溫崩8搖低位LSB ( 50H byte 1byte 2byte 3byte 4byte 5byte 6byte 7byte 8溫度數(shù)據高位初陽(05H)TH

6、用戶字節(jié)1 (高溫觸發(fā)值)TL用戶字節(jié)2 (低溫觸發(fā)值)配置奇存器(設置溫度稿度)保留位(FFH )保留位(OCH )保留位(10H)CRC校驗位寄存器(2) DS18B20主要寄存器數(shù)據格式圖示什科TH奇存贛配鷲寄存番TH用戶字節(jié)(高溫獨發(fā)設定值配置寄存器(設置溫度精度)TL用戶字節(jié);?。ò哂|發(fā)設定值)加1 7bitstiitSbit 4bit 3bit 2billbito232?212212 J2-32abit 15bit 14bit 13bit 12bjtlJbit 10bit 9bitsSSSSs262524bit 7bit 6bitsbit 4bit 3bit 2bitlbitOs2

7、625242322212bit 7bitsbitsbit 4bn 3bit 2bitlbitO0R1RO111110電曲示澳卄崔后屯汰 涇雯為理寧C畫丄臚遊唸標講 臨示1Z55(3) DS18B20通訊指令圖指令類型指令詳細描述FOH搜索ROM指令當系焼初始化時,總銭控制購通過此插令參次補環(huán)搜嘉ROM端壬以淋Xs斤育從機器件33H讀取ROM指令蘭總疑上三亙一三仍1出20時才會運同此匡專允渾史査 控制器直菠讀取從機的序列碼指令匹駅ROM指令匹酹ROM管會恢總統(tǒng)刮器在塞為遜上淀位一貝軻建5SHDS18B20ICCH忽貂ROM指令忽骼ROM指令1ft;指令鬆審堆制器興必掘吳54垃ROM漏鴛就更用功直

8、獵令【ECU今學總線上存在滿足按警劄牛的從機時閡A機捋爾應此垢令44H溫度轉按指令止毘瑁令用菖控劇DS1802A啟動一歩逗度饕按生成的溟 度就據以2字節(jié)的形式存蠟在言進暫存器口寫曹存器指令此指令閆DSL8B20曲哲存器寫入瑟壽,開囪隹在暫存器4EH第2手節(jié)(州靑嚴請 ”収最任有效位亓詒佬功餾g令BEH讀暫存器旨冬此雀令用夭茸取DS18B20雪手器艾生 彥脫將從手巧0幵 姐.更囁g字韋(匚M咬蠢位)厲豈4SH拷貝令曲播令將1U TL*配置審存器脫時貝列EEPROM中B8H召回 EPROM 18宥TH TL 兒艮函童衽囲中吃城拭EEPROPjt貝到苜B4H讀電源模式揩令想竝制器在發(fā)出此褚令后啟動湊

9、時瞳若育註電源擾 式.DS1&B20捋拉氐簸若為護部電譚模式,則桁總戎 強罷r用以到If 0520船電頑運了解了這些內部結構和細節(jié),下面說一下 DS18B20芯片的工作原理。IIDS18B20啟動后將進入低功耗等待狀態(tài),當需要執(zhí)行溫度測量和AD轉I換時,總線控制器(多為單片機)發(fā)出44H指令完成溫度測量和AD轉換(其I他功能指令見上面的指令表),DS18B20將產生的溫度數(shù)據以兩個字節(jié)的形式存儲到高速暫存器的溫度寄存器中,然后,DS18B20繼續(xù)保持等待狀態(tài)。當DS18B20芯片由外部電源供電時,總線控制器在溫度轉換指令之后發(fā)起“讀時隙”(詳見本帖的“ DS18B20時隙圖”),從而讀出測量到

10、的溫度數(shù)據通過總線完成與單片機的數(shù)據通訊(DS18B20正在溫度轉換中由DQ引腳返回0,轉 換結束則返回1。如果DS18B20由寄生電源供電,除非在進入溫度轉換時總線-1被一個強上拉拉高,否則將不會有返回值)。另外, DS18B20在完成一次溫度I轉換后,會將溫度值與存儲在 TH (高溫觸發(fā)器)和TL (低溫觸發(fā)器)中各一_|個字節(jié)的用戶自定義的報警預置值進行比較,寄存器中的S標志位(詳見寄存器L格式圖示中的“TH和TL寄存器格式”圖示)指出溫度值的正負(S=0時為正,_|S=1時為負),如果測得的溫度高于 TH或者低于TL數(shù)值,報警條件成立,IDS18B20內部將對一個報警標識置位,此時,總

11、線控制器通過發(fā)出報警搜索命I令ECH檢測總線上所有的DS18B20報警標識,然后,對報警標識置位的_|DS18B20將響應這條搜索命令。III第四部分:針對DS18B20的單片機編程II針對DS18B20的編程,可以理解為總線控制器通過相關指令操作器件或者L器件中的相應寄存器,從而完成器件也總線控制器的數(shù)據通信, 所以要真正搞定_|DS18B20的通訊編程,還需要詳細的了解該芯片的各種寄存器結構、寄存器數(shù)I據格式和相關的指令系統(tǒng),下面我們就結合上面圖示,說說DS18B20的內部存I儲器結構。DS18B20的每個暫存器都有8bit存儲空間,用來存儲相應數(shù)據,其中byteO和bytel分別為溫度數(shù)

12、據的低位和高位,用來儲存測量到的溫度值,且這兩個字節(jié)都是只讀的;byte2和byte3為TH、TL告警觸發(fā)值的拷貝,可以在從片內的電可擦可編程只讀存儲器 EEPROM中讀出,也可以通過總線控制器I發(fā)出的48H指令將暫存器中TH、TL的值寫入到EEPROM,掉電后EEPROMI 中的數(shù)據不會丟失;byte4的配置寄存器用來配置溫度轉換的精確度(最大為I 12位精度);byte5、6、7為保留位,禁止寫入;byte8亦為只讀存儲器,用I 來存儲以上8字節(jié)的CRC校驗碼。II 參考上面的DS18B20通訊指令圖,即為DS18B20芯片中主要寄存器的I 數(shù)據格式和必要的個別標識位說明,只要做到對寄存器

13、數(shù)據精準的控制,就可以I 很容易的完成DS18B20的程序編寫,而對于總線控制器發(fā)出的控制指令, 我們 L 需要知道,DS18B20的指令包括ROM指令和功能指令,其中ROM指令用來I 進行ROM的操作,而功能指令則可以控制DS18B20完成溫度轉換,寄存器操I作等功能性工作。一旦總線控制器檢測到一個存在脈沖,它就會發(fā)出一條ROMI指令,如果總線上掛載多只DS18B20,這些指令將利用器件獨有的64位ROMI 片序列碼選出特定的要進行操作的器件, 同樣,這些指令也可以識別哪些器件符I 合報警條件等。在總線控制器發(fā)給要連接的 DS18B20 一條ROM指令后,就可I 以發(fā)送一條功能指令完成相關的

14、工作了,也就是說,總線控制器在發(fā)起一條IDS18B20功能指令前,需要首先發(fā)出一條 ROM指令。了解了這些功能指令的I 功能和用法,再對DS18B20編程就容易多了! 第五部分:DS18B20芯片的兩點使用心得(1 )對TH (高溫觸發(fā)寄存器)和TL (低溫觸發(fā)寄存器)的操作心得II 針對于DS18B20中TH (高溫觸發(fā)寄存器)和TL (低溫觸發(fā)寄存器),I 可以找到的代碼資料很少,而如果在某一測溫系統(tǒng)中需要用到 TH和TL寄存器 I 時,其實不必覺得無從下手,參見本帖中的“ DS18B20寄存器結構”,總線控I 制器的讀操作將從位0開始逐步向下讀取數(shù)據,直到讀完位 8,而且TH和TLI寄存

15、器的內部結構和數(shù)據格式和片內其他寄存器是相同的,當然,針對TH和I TL寄存器的讀寫和其他片內寄存器的讀寫也是相同的,所以在實際應用中,當IDS18B20初始化完成后,首先通過總線控制器發(fā)出的B8H指令將EEPROMI 中保存的數(shù)據召回到暫存器的 TH和TL中,然后通過總線控制器發(fā)出的“讀時I隙”對器件暫存器進行讀操作,只要將讀到的每 8bit數(shù)據及時獲取,就可以很I 容易地通過總線控制器讀出TH和TL寄存器數(shù)據;總線控制器對器件的寫操作I原理亦然,換句話說,只要掌握了其他寄存器的操作編程,就完全可以很容易地I 對TH和TL這兩個報警值寄存器進行讀寫操作。同時,可以通過 48H指令將 I TH

16、和TL寄存器數(shù)據拷貝到EEPROM中進行保存。II(2)對DS18B20通訊時隙的掌握心得II在由DS18B20芯片構建的溫度檢測系統(tǒng)中,采用達拉斯公司獨特的單總線數(shù)據通訊方式,允許在一條總線上掛載多個 DS18B20,那么,在對DS18B20的操作和控制中,由總線控制器發(fā)出的時隙信號就顯得尤為重要。如下圖所示,分別為DS18B20芯片的上電初始化時隙、總線控制器從DS18B20讀取數(shù)據時 隙、總線控制器向DS18B20寫入數(shù)據時隙的示意圖,在系統(tǒng)編程時,一定要嚴 格參照時隙圖中的時間數(shù)據,做到精確的把握總線電平隨時間(微秒級)的變化,才能夠順利地控制和操作 DS18B20。另外,需要注意到不同單片機的機器周期 是不盡相同的,所以,程序中的延時函數(shù)并不是完全一樣,

溫馨提示

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

評論

0/150

提交評論