在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>電子元器件>傳感器>

測溫芯片DS18B20溫度傳感器詳細解讀 - 全文

2016年05月12日 16:04 快易購 作者:佚名 用戶評論(0

  大家好,首先感謝大家對我前幾天發布的“Remind BOX”DIY實例帖的支持和捧場,在此謝過了。我今天要發一篇技術帖,是關于DS18B20這款強大的測溫芯片的技術帖。本帖將從不同角度幫助廣大不熟 悉DS18B20測溫芯片的壇友更加了解這款芯片,也希望已經或者將要用到這款芯片的壇友可以更加順利地完成自己的DIY作品。(聲明:本帖中所涉及的圖 片資源均為本人一筆一筆畫出來的,未經允許,請勿轉載)言歸正傳,下面開始技術部分。

  第一部分:DS18B20的封裝和管腳定義

  首先,我們來認識一下DS18B20這款芯片的外觀和針腳定義,DS18B20芯片的常見封裝為TO-92,也就是普通直插三極管的樣子,當然也可以找 到以SO(DS18B20Z)和μSOP(DS18B20U)形式封裝的產品,下面為DS18B20各種封裝的圖示及引腳圖。

  了解了這些該芯片的封裝形式,下面就要說到各個管腳的定義了,如下表即為該芯片的管腳定義:

  上面的表中提到了一個“奇怪”的詞——“寄生電源”,那我有必要說明一下了,DS18B20芯片可以工作在“寄生電源模式”下,該模式允許 DS18B20工作在無外部電源狀態,當總線為高電平時,寄生電源由單總線通過VDD 引腳,此時DS18B20可以從總線“竊取”能量,并將“偷來”的能量儲存到寄生電源儲能電容(Cpp)中,當總線為低電平時釋放能量供給器件工作使用。 所以,當DS18B20工作在寄生電源模式時,VDD引腳必須接地。

  第二部分:DS18B20的多種電路連接方式

  如下面的兩張圖片所示,分別為外部供電模式下單只和多只DS18B20測溫系統的典型電路連接圖。

  (1)外部供電模式下的單只DS18B20芯片的連接圖

  這里需要說明的是,DS18B20芯片通過達拉斯公司的單總線協議依靠一個單線端口通訊,當全部器件經由一個三態端口或者漏極開路端口與總線連接時,控 制線需要連接一個弱上拉電阻。在多只DS18B20連接時,每個DS18B20都擁有一個全球唯一的64位序列號,在這個總線系統中,微處理器依靠每個器 件獨有的64位片序列號辨認總線上的器件和記錄總線上的器件地址,從而允許多只DS18B20同時連接在一條單線總線上,因此,可以很輕松地利用一個微處 理器去控制很多分布在不同區域的DS18B20,這一特性在環境控制、探測建筑物、儀器等溫度以及過程監測和控制等方面都非常有用。

  對 于DS18B20的電路連接,除了上面所說的傳統的外部電源供電時的電路連接圖,DS18B20也可以工作在“寄生電源模式”,而下圖則表示了 DS18B20工作在“寄生電源模式”下的電路連接圖。沒錯,這樣就可以使DS18B20工作在寄生電源模式下了,不用額外的電源就可以實時采集到位于多 個地點的溫度信息了。

  第三部分:DS18B20內部寄存器解析及工作原理

  介紹完DS18B20的封裝、針腳定義和連接方式后,我們有必要了解DS18B20芯片的各個控制器、存儲器的相關知識,如下圖所示,為DS18B20內部主要寄存器的結果框圖。

  結合圖中的內部寄存器框圖,我們先簡單說一下DS18B20芯片的主要寄存器工作流程,而在對DS18B20工作原理進行詳細說明前,有必要先上幾張相關圖片:

  (1)DS18B20內部寄存器結構圖

?  (2)DS18B20主要寄存器數據格式圖示

  (3)DS18B20通訊指令圖

  了解了這些內部結構和細節,下面說一下DS18B20芯片的工作原理。

  DS18B20啟動后將進入低功耗等待狀態,當需要執行溫度測量和AD轉換時,總線控制器(多為單片機)發出[44H]指令完成溫度測量和AD轉換(其 他功能指令見上面的指令表),DS18B20將產生的溫度數據以兩個字節的形式存儲到高速暫存器的溫度寄存器中,然后,DS18B20繼續保持等待狀態。 當DS18B20芯片由外部電源供電時,總線控制器在溫度轉換指令之后發起“讀時隙”(詳見本帖的“DS18B20時隙圖”),從而讀出測量到的溫度數據 通過總線完成與單片機的數據通訊(DS18B20正在溫度轉換中由DQ引腳返回0,轉換結束則返回1。如果DS18B20由寄生電源供電,除非在進入溫度 轉換時總線被一個強上拉拉高,否則將不會有返回值)。另外,DS18B20在完成一次溫度轉換后,會將溫度值與存儲在TH(高溫觸發器)和TL(低溫觸發 器)中各一個字節的用戶自定義的報警預置值進行比較,寄存器中的S標志位(詳見寄存器格式圖示中的“TH和TL寄存器格式”圖示)指出溫度值的正負 (S=0時為正,S=1時為負),如果測得的溫度高于TH或者低于TL數值,報警條件成立,DS18B20內部將對一個報警標識置位,此時,總線控制器通 過發出報警搜索命令[ECH]檢測總線上所有的DS18B20報警標識,然后,對報警標識置位的DS18B20將響應這條搜索命令。

  第四部分:針對DS18B20的單片機編程

  針對DS18B20的編程,可以理解為總線控制器通過相關指令操作器件或者器件中的相應寄存器,從而完成器件也總線控制器的數據通信,所以要真正搞定 DS18B20的通訊編程,還需要詳細的了解該芯片的各種寄存器結構、寄存器數據格式和相關的指令系統,下面我們就結合上面圖示,說說DS18B20的內 部存儲器結構。

  DS18B20的每個暫存器都有8bit存儲空間,用來存儲相應數據,其中byte0和byte1分別為溫度數據的低位 和高位,用來儲存測量到的溫度值,且這兩個字節都是只讀的;byte2和byte3為TH、TL告警觸發值的拷貝,可以在從片內的電可擦可編程只讀存儲器 EEPROM中讀出,也可以通過總線控制器發出的[48H]指令將暫存器中TH、TL的值寫入到EEPROM,掉電后EEPROM中的數據不會丟 失;byte4的配置寄存器用來配置溫度轉換的精確度(最大為12位精度);byte5、6、7為保留位,禁止寫入;byte8亦為只讀存儲器,用來存儲 以上8字節的CRC校驗碼。

  參考上面的DS18B20通訊指令圖,即為DS18B20芯片中主要寄存器的數據格式和必要的個別標識位說 明,只要做到對寄存器數據精準的控制,就可以很容易的完成DS18B20的程序編寫,而對于總線控制器發出的控制指令,我們需要知道,DS18B20的指 令包括ROM指令和功能指令,其中ROM指令用來進行ROM的操作,而功能指令則可以控制DS18B20完成溫度轉換,寄存器操作等功能性工作。一旦總線 控制器檢測到一個存在脈沖,它就會發出一條 ROM指令,如果總線上掛載多只DS18B20,這些指令將利用器件獨有的64位ROM片序列碼選出特定的要進行操作的器件,同樣,這些指令也可以識別哪 些器件符合報警條件等。在總線控制器發給要連接的DS18B20一條ROM指令后,就可以發送一條功能指令完成相關的工作了,也就是說,總線控制器在發起 一條DS18B20功能指令前,需要首先發出一條ROM指令。了解了這些功能指令的功能和用法,再對DS18B20編程就容易多了!~

  第五部分:DS18B20芯片的兩點使用心得

  (1)對TH(高溫觸發寄存器)和TL(低溫觸發寄存器)的操作心得

  針對于DS18B20中TH(高溫觸發寄存器)和TL(低溫觸發寄存器),可以找到的代碼資料很少,而如果在某一測溫系統中需要用到TH和TL寄存器 時,其實不必覺得無從下手,參見本帖中的“DS18B20寄存器結構”,總線控制器的讀操作將從位0開始逐步向下讀取數據,直到讀完位8,而且TH和TL 寄存器的內部結構和數據格式和片內其他寄存器是相同的,當然,針對TH和TL寄存器的讀寫和其他片內寄存器的讀寫也是相同的,所以在實際應用中,當 DS18B20初始化完成后,首先通過總線控制器發出的[B8H]指令將EEPROM中保存的數據召回到暫存器的TH和TL中,然后通過總線控制器發出的 “讀時隙”對器件暫存器進行讀操作,只要將讀到的每8bit數據及時獲取,就可以很容易地通過總線控制器讀出TH和TL寄存器數據;總線控制器對器件的寫 操作原理亦然,換句話說,只要掌握了其他寄存器的操作編程,就完全可以很容易地對TH和TL這兩個報警值寄存器進行讀寫操作。同時,可以通過[48H]指 令將TH和TL寄存器數據拷貝到EEPROM中進行保存。

  (2)對DS18B20通訊時隙的掌握心得

  在由 DS18B20芯片構建的溫度檢測系統中,采用達拉斯公司獨特的單總線數據通訊方式,允許在一條總線上掛載多個DS18B20,那么,在對DS18B20 的操作和控制中,由總線控制器發出的時隙信號就顯得尤為重要。如下圖所示,分別為DS18B20芯片的上電初始化時隙、總線控制器從DS18B20讀取數 據時隙、總線控制器向DS18B20寫入數據時隙的示意圖,在系統編程時,一定要嚴格參照時隙圖中的時間數據,做到精確的把握總線電平隨時間(微秒級)的 變化,才能夠順利地控制和操作DS18B20。另外,需要注意到不同單片機的機器周期是不盡相同的,所以,程序中的延時函數并不是完全一樣,要根據單片機 不同的機器周期有所改動。在平常的DS18B20程序調試中,若發現諸如溫度顯示錯誤等故障,基本上都是由于時隙的誤差較大甚至時隙錯誤導致的,在對 DS18B20編程時需要格外注意。

  上電初始化時隙圖

  數據讀取時通訊總線的時隙圖

  數據寫入時通訊總線的時隙圖

  好了,帖子寫到這里,基本上算是告一段落了,我們描述了DS18B20測溫芯片的封裝、管腳定義、電路連接方式、內部寄存器的結構和數據格式、通信時隙和功能/控制指令,最后希望這篇帖子可以幫助到正在或者將要使用到DS18B20測溫芯片的壇友,謝謝大家!

上一頁123全文

非常好我支持^.^

(172) 78.5%

不好我反對

(47) 21.5%

( 發表人:林錦翔 )

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      主站蜘蛛池模板: 久久精品系列 | 国产高清在线播放免费观看 | 四虎影院网址大全 | 午夜影院免费观看 | 亚洲三级理论 | a亚洲| 国产一级一片免费播放视频 | ts人妖系列在线专区 | 欧美一级免费 | 老师叫我下面含着精子去上课 | 福利视频免费看 | 国产精品资源在线观看网站 | 国产农村妇女毛片精品久久久 | 中文字幕一区在线播放 | 四虎在线观看免费永久 | 欧美人成一本免费观看视频 | 日日操操干干 | 国产日日夜夜 | 亚洲午夜精品在线 | 国产日本在线观看 | 精品卡一卡二 卡四卡视频 精品噜噜噜噜久久久久久久久 | 五月天激激婷婷大综合丁香 | 夜夜爽影院 | 最近的中文字幕免费动漫视频 | 免费高清在线视频色yeye | 伊人久久综合成人亚洲 | 毛片在线不卡 | 日本免费人成在线网站 | 无人码一区二区三区视频 | 午夜男人的天堂 | 男女在线免费视频 | 国产亚洲情侣久久精品 | 国产一级大片在线观看 | 91男人| 扛着高跟鞋丝袜腿呻吟视频 | 亚洲福利视频一区二区 | 色综合天天综合网国产成人 | 色网站综合 | 国模最新私拍视频在线观看 | 亚洲人免费视频 | 美女喷白浆视频 |