哈哈哈哈哈操欧洲电影,久草网在线,亚洲久久熟女熟妇视频,麻豆精品色,久久福利在线视频,日韩中文字幕的,淫乱毛视频一区,亚洲成人一二三,中文人妻日韩精品电影

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

DS18B20溫度傳感器的工作原理和硬件設(shè)計(jì)

FPGA技術(shù)實(shí)戰(zhàn) ? 來(lái)源:FPGA技術(shù)實(shí)戰(zhàn) ? 2024-10-24 14:38 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

引言:通過(guò)本文可以了解DS18B20溫度傳感器工作原理、硬件設(shè)計(jì)、DS18B20單總線接口驅(qū)動(dòng)編寫(xiě)。

1. 概述

DS18B20是常用的數(shù)字溫度傳感器,其輸出的是數(shù)字信號(hào),具有體積小,硬件開(kāi)銷(xiāo)低,抗干擾能力強(qiáng),精度高的特點(diǎn)。

圖1:兩種封裝DS18B20實(shí)物圖

DS18B20數(shù)字溫度傳感器接線方便,經(jīng)封裝成后可應(yīng)用于多種場(chǎng)合,如電纜溝測(cè)溫,高爐水循環(huán)測(cè)溫,鍋爐測(cè)溫,機(jī)房測(cè)溫,農(nóng)業(yè)大棚測(cè)溫,潔凈室測(cè)溫,彈藥庫(kù)測(cè)溫等各種非極限溫度場(chǎng)合。具有耐磨耐碰,體積小,使用方便,封裝形式多樣等特點(diǎn),適用于各種狹小空間設(shè)備數(shù)字測(cè)溫和控制領(lǐng)域。

2.原理學(xué)習(xí)

2.1 芯片概述

DS18B20數(shù)字溫度計(jì)提供9到12bit分辨率的溫度測(cè)量,可以通過(guò)可編程非易失性存儲(chǔ)單元實(shí)現(xiàn)溫度的下限和上限報(bào)警。DS18B20采用單總線協(xié)議與上位機(jī)進(jìn)行通信,只需要一根信號(hào)線和一根地線。它的溫度測(cè)量范圍為-55℃~ +125℃(-67°F to +257°F)。在-10℃~70℃范圍內(nèi)的測(cè)試精度可以達(dá)到±0.5℃。此外它還可以工作在寄生模式下,直接通過(guò)信號(hào)線對(duì)芯片供電,從而不需要額外的供電電源。每個(gè)DS18B20都有一個(gè)全球唯一的64位序列號(hào),可以將多個(gè)DS18B20串聯(lián)在同一跟單總線上進(jìn)行組網(wǎng),只需要一個(gè)處理器就可以控制分布在大面積區(qū)域中的多顆DS18B20。這種組網(wǎng)方式特別適合HVAC環(huán)境控制,建筑、設(shè)備、糧情測(cè)溫和工業(yè)測(cè)溫以及過(guò)程監(jiān)測(cè)控制等應(yīng)用領(lǐng)域。

2.2 管腳描述

wKgaoWcZ64uAWpc0AAFK836suuo941.png

圖2:常見(jiàn)封裝管腳定義

DS18B20管腳描述如下表所示。

表1:DS18B20管腳描述

wKgaoWcZ64uAQ9opAAGc5Qy-eWc205.png

2.3 芯片內(nèi)部結(jié)構(gòu)

wKgZoWcZ64uAAplEAAHRgoLKFkw938.png

圖3:DS18B20內(nèi)部結(jié)構(gòu)

2.4 硬件設(shè)計(jì)

DS18B20可以通過(guò)管腳VDD外部電源供電,也可以工作于寄生電源模式。

(1)寄生電源模式硬件設(shè)計(jì)

如圖所示,當(dāng)總線處于高電平狀態(tài),DQ與外部上拉電阻連接通過(guò)單總線對(duì)器件供電。同時(shí)處于高電平狀態(tài)的總線信號(hào)對(duì)內(nèi)部電容(Cpp)充電(如圖3所示),在總線處于低電平狀態(tài)時(shí),該電容提供能量給器件,該提供能量的方式成為“寄生電源”。當(dāng)DS18B20處于寄生電源模式時(shí),VDD管腳必須接地。

寄生電源模式下,單總線和CPP在大部分操作中能夠提供充分的滿(mǎn)足規(guī)定時(shí)序和電壓的電流(見(jiàn)直流電特性和交流電特性節(jié))給DS18B20。然而,當(dāng)DS18B20正在執(zhí)行溫度轉(zhuǎn)換或從寄存器向EEPROM傳送數(shù)據(jù)時(shí),工作電流可高達(dá)1.5mA。這個(gè)電流可能會(huì)引起連接在單總線上的弱上拉電阻不可接受的壓降,這需要更大的電流,而此時(shí)CPP無(wú)法提供。為了保證DS18B20有充足的供電,當(dāng)進(jìn)行溫度轉(zhuǎn)換或復(fù)制數(shù)據(jù)到EEPORM操作時(shí),必須給單總線提供一個(gè)強(qiáng)上拉,采用MOSFET直接把總線上拉到電源上的方式實(shí)現(xiàn),如圖4所示。

wKgZoWcZ64uAN-wDAABWfmnRBKA217.png

圖4:溫度轉(zhuǎn)換器件寄生電源模式硬件設(shè)計(jì)

(2)外部供電模式硬件設(shè)計(jì)

對(duì)DS18B20供電的另外一種方法是傳統(tǒng)的從VDD管腳接入一個(gè)外部電源,如圖5所示。這樣做的好處是單總線上不需要強(qiáng)上拉,而且總線不用在溫度轉(zhuǎn)換期間總保持高電平。

wKgaoWcZ65CAHaJyAACsEG61l0M070.png

圖5:使用外部電源供電硬件設(shè)計(jì)

寄生電源模式在遠(yuǎn)距離測(cè)試或空間受限的應(yīng)用場(chǎng)合是非常有用的。

對(duì)于溫度高于100℃時(shí),不推薦使用寄生電源,因?yàn)镈S18B20在這種溫度下表現(xiàn)出的漏電流比較大,通信可能無(wú)法進(jìn)行。在類(lèi)似這種溫度的情況下,強(qiáng)烈推薦使用DS18B20的VDD管腳供電。

2.5 寄存器詳解

(1) 64bit只讀寄存器

wKgaoWcZ65CAP2fIAAAKZjdjbSg684.png

圖6:64bit ROM編碼

每顆DS18B20都有一個(gè)全球唯一的存儲(chǔ)在ROM中的64位編碼。最低8bit是單線系列編碼:28h。接著的48位是一個(gè)唯一的序列號(hào)。最后高8bit是低56bit編碼的CRC編碼。CRC的詳細(xì)解釋見(jiàn)CRC發(fā)生器節(jié)。64位ROM和ROM操作控制區(qū)允許DS18B20作為單總線器件并按照詳述于單總線系統(tǒng)節(jié)的單總線協(xié)議工作。

(2)存儲(chǔ)器結(jié)構(gòu)

DS18B20的存儲(chǔ)器結(jié)構(gòu)如圖7所示。

wKgZoWcZ65CAfVt9AAQ4fl1_NxU815.png

圖7:DS18B20的存儲(chǔ)器結(jié)構(gòu)

(1)byte0和byte1:分別為溫度寄存器的LSB和MSB,這兩個(gè)字節(jié)的存儲(chǔ)器為只讀存儲(chǔ)器;

這個(gè)兩個(gè)字節(jié)寄存器用來(lái)存儲(chǔ)溫度傳感器輸出的數(shù)據(jù),寄存器格式如圖8所示。

wKgZoWcZ65CAZvWaAABNSG5fRqI189.png

圖8:溫度寄存器格式

溫度與數(shù)據(jù)數(shù)據(jù)格式對(duì)應(yīng)關(guān)系如圖9所示。"S"bit表示溫度符號(hào)位,上電復(fù)位時(shí),溫度寄存器默認(rèn)值為+85℃。

wKgZoWcZ65CAfD6-AAC5SslNrpw385.png

圖9:溫度/數(shù)據(jù)關(guān)系

(2)byte2和byte3:是TH和TL,注意當(dāng)報(bào)警功能不能使用時(shí),TH和TL寄存器可以被當(dāng)作普通寄存器使用。TH,TL和配置寄存器均為非易失性的可擦除寄存器(EEPROM),該存儲(chǔ)的數(shù)據(jù)在器件掉電后不會(huì)消失。

wKgZoWcZ64uAWRx1AAAJSdXAdJs274.png

圖10:TH,TL寄存器格式

(3)byte4:配置寄存器。

配置寄存器允許用戶(hù)將溫度測(cè)量分辨率設(shè)定為9,10,11或12位,對(duì)應(yīng)的溫度分辨率分別為0.5℃、0.25℃、0.125℃和0.0625℃,芯片在上電狀態(tài)下默認(rèn)的精度為12位。

配置寄存器的bit7和bit0到bit4被器件保留,禁止寫(xiě)入;在讀數(shù)據(jù)時(shí),它們?nèi)勘憩F(xiàn)為邏輯1。

wKgaoWcZ65CADMJZAAAJzKpxU7E960.png

圖11:配置寄存器格式

表2:傳感器精度配置表

wKgaoWcZ65CAcoUMAABjRH6I3MI935.png

(4)byte5:被器件保留,禁止寫(xiě)入。

(5)byte6和byte7:用戶(hù)可以使用;

(6)byte8:只讀,包含以上八個(gè)字節(jié)的CRC碼。

2.6 DS18B20操作流程

通過(guò)單總線訪問(wèn)DS18B20的執(zhí)行步驟如下:

步驟1:初始化;

步驟2:ROM操作指令;

步驟3:DS18B20功能指令。

每一次DS18B20的操作都必須滿(mǎn)足以上步驟,若是缺少步驟或是順序混亂,器件將不會(huì)有返回值。搜索ROM命令和報(bào)警搜索命令除外。當(dāng)這兩個(gè)命令執(zhí)行時(shí),主控制器必須返回步驟1。

2.7 單總線協(xié)議詳解

DS18B20采用單總線協(xié)議,通過(guò)一個(gè)單線端口通信。DS18B20需要嚴(yán)格的單總線協(xié)議以確保數(shù)據(jù)的完整性。協(xié)議定義了幾種單總線信號(hào)的類(lèi)型:復(fù)位脈沖、存在脈沖、寫(xiě)0、寫(xiě)1、讀0和讀1。所有這些信號(hào),除存在脈沖外,都是由總線控制器發(fā)出的。

(1)初始化:復(fù)位脈沖和存在脈沖

所有和DS18B20間的通信都以初始化序列開(kāi)始,初始化序列如圖12所示。一個(gè)復(fù)位脈沖跟著一個(gè)存在脈沖表明DS18B20已經(jīng)準(zhǔn)備好發(fā)送和接收數(shù)據(jù)。

wKgaoWcZ65CAGafBAADbBsNOK-0409.png

圖 12:初始化時(shí)序

如圖所示,初始化包括兩個(gè)階段:

①?gòu)?fù)位脈沖階段:總線控制器拉低總線并保持480us以發(fā)出(TX)一個(gè)復(fù)位脈沖信號(hào),然后釋放總線;

②檢測(cè)存在脈沖階段:當(dāng)總線被釋放后,進(jìn)入接收狀態(tài)(RX)。上拉電阻將總線拉到高電平。當(dāng)DS18B20檢測(cè)到IO引腳上的上升沿后,等待1560us,然后發(fā)出一個(gè)由60240us低電平信號(hào)構(gòu)成的存在脈沖。

(2)寫(xiě)時(shí)序

DS18B20有兩種寫(xiě)時(shí)序:寫(xiě)1時(shí)序和寫(xiě)0時(shí)序。總線控制器通過(guò)寫(xiě)1時(shí)序來(lái)寫(xiě)邏輯1;通過(guò)寫(xiě)0時(shí)序來(lái)寫(xiě)邏輯0。寫(xiě)時(shí)序必須最少持續(xù)60us,包括兩個(gè)寫(xiě)周期之間至少1us的恢復(fù)時(shí)間。當(dāng)總線控制器把數(shù)據(jù)線從邏輯高電平拉低到低電平的時(shí)候,寫(xiě)時(shí)序開(kāi)始(見(jiàn)圖13)。

wKgZoWcZ65CADm_2AAEOh7Mjzdw165.png

圖 13:寫(xiě)時(shí)序

總線控制器要寫(xiě)產(chǎn)生一個(gè)寫(xiě)時(shí)序,必須把數(shù)據(jù)線拉到低電平然后釋放,且需在15us內(nèi)釋放總線。當(dāng)總線被釋放后,上拉電阻將總線拉高??偩€控制器要生成寫(xiě)0時(shí)隙,必須把數(shù)據(jù)線拉到低電平且繼續(xù)保持至少60us。

總線控制器初始化寫(xiě)時(shí)序后,DS18B20在一個(gè)15us到60us的窗口內(nèi)對(duì)信號(hào)線DQ進(jìn)行采樣。如果線上是高電平,就是寫(xiě)1。反之,如果線上是低電平,就是寫(xiě)0。

(3)讀時(shí)序

總線控制器發(fā)起讀時(shí)序時(shí),DS18B20僅被用來(lái)傳輸數(shù)據(jù)給控制器。因此,總線控制器在發(fā)出讀寄存器指令[BEh]或讀電源模式指令[B4h]后必須立刻開(kāi)始讀時(shí)序,以便DS18B20提供請(qǐng)求的數(shù)據(jù)。除此之外,總線控制器在發(fā)出發(fā)送溫度轉(zhuǎn)換指令平[44h]或召回EEPROM指令[B8h]之后讀時(shí)序,詳見(jiàn)DS18B20功能指令節(jié)。

wKgZoWcZ65CAKPqoAAIDExzHpDs200.png

圖 14:讀時(shí)序

所有讀時(shí)序必須最少60us,包括兩個(gè)讀周期間至少1us的恢復(fù)時(shí)間。當(dāng)總線控制把數(shù)據(jù)線從高電平拉低到低電平時(shí),讀時(shí)序開(kāi)始,數(shù)據(jù)線必須至少保持1us,然后總線被釋放(見(jiàn)圖14)。在總線控制器發(fā)出讀時(shí)序后,DS18B20過(guò)拉高或拉低總線上來(lái)傳輸1或0。當(dāng)傳輸0結(jié)束后,總線將被釋放,通過(guò)上拉電阻回到高電平空閑狀態(tài)。從DS18B20輸出的數(shù)據(jù)在讀時(shí)序的下降沿出現(xiàn)后15us內(nèi)有效。因此,總線控制器在讀時(shí)序開(kāi)始15us內(nèi)釋放總線然后采樣總線狀態(tài),以讀取數(shù)據(jù)線的狀態(tài)。

3.實(shí)戰(zhàn)操作

3.1 軟件設(shè)計(jì)

本文要利用LCD1602實(shí)現(xiàn)DS18B20溫度及時(shí)間實(shí)時(shí)顯示。具體功能如下:

(1)DS18B20單總線接口驅(qū)動(dòng)功能;

(2)溫度值HEX轉(zhuǎn)BCD碼功能;

(3)時(shí)鐘計(jì)時(shí)器功能;

(4)LCD1602顯示DS18B20實(shí)時(shí)溫度及時(shí)間顯示。

軟件功能模塊劃分如圖15所示。

wKgaoWcZ65CAGm5PAAF5MSkdJn4091.png

圖15:軟件功能模塊框圖

各個(gè)模塊功能:

(1)ds18b20_test.v模塊為頂層模塊,實(shí)現(xiàn)模塊間互聯(lián);

(2)ds18b20_driver.v實(shí)現(xiàn)芯片單總線接口通信功能;

(3)hex_bcd.v實(shí)現(xiàn)溫度值HEX轉(zhuǎn)BCD碼功能;

(4)clock_timer.v實(shí)現(xiàn)時(shí)鐘計(jì)時(shí)器功能;

(5)lcd1602_driver.v實(shí)現(xiàn)DS18B20實(shí)時(shí)溫度及時(shí)間顯示。

DS18B20接口驅(qū)動(dòng)ds18b20_driver.v軟件實(shí)現(xiàn)流程圖如圖16所示。

wKgaoWcZ65CAO07DAACRlx-C9Qc262.png

圖16:DS18B20溫度讀取控制流程圖

3.2 測(cè)試結(jié)果

軟件下載至電路板,顯示在LCD1602上,如圖17所示,可以看到DS18B20溫度及時(shí)間已經(jīng)正確顯示。

wKgZoWcZ65CALs2xAAgEWfGWQ1g520.png

圖17:DS18B20溫度及時(shí)間顯示

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • FPGA
    +關(guān)注

    關(guān)注

    1663

    文章

    22487

    瀏覽量

    638686
  • 溫度傳感器
    +關(guān)注

    關(guān)注

    48

    文章

    3243

    瀏覽量

    163315
  • 總線
    +關(guān)注

    關(guān)注

    10

    文章

    3052

    瀏覽量

    91841
  • DS18B20
    +關(guān)注

    關(guān)注

    10

    文章

    782

    瀏覽量

    83487
  • 驅(qū)動(dòng)設(shè)計(jì)

    關(guān)注

    1

    文章

    114

    瀏覽量

    15780

原文標(biāo)題:基于FPGA的DS18B20溫度傳感器驅(qū)動(dòng)設(shè)計(jì)

文章出處:【微信號(hào):FPGA技術(shù)實(shí)戰(zhàn),微信公眾號(hào):FPGA技術(shù)實(shí)戰(zhàn)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    DS18B20溫度傳感器工作原理及其應(yīng)用電路圖

    本帖最后由 gk320830 于 2015-3-5 08:38 編輯   摘要:本文通過(guò)介紹DS18B20溫度傳感器工作原理并結(jié)合DS18B2
    發(fā)表于 02-21 14:43

    DS18B20溫度傳感器簡(jiǎn)介

    DS18B20溫度傳感器1. DS18B20簡(jiǎn)介2. 硬件設(shè)計(jì)3. 軟件設(shè)計(jì)3.1 STM32CubeMX設(shè)置3.2 MDK-ARM編程4.
    發(fā)表于 08-12 07:32

    DS18B20溫度傳感器實(shí)驗(yàn)

    STM32學(xué)習(xí)記錄:DS18B20溫度傳感器實(shí)驗(yàn)(HAL庫(kù))實(shí)驗(yàn)摘要DS18B20簡(jiǎn)述STMCubeMX引腳配置芯片選型引腳和時(shí)鐘配置生成ARM-MDK工程編寫(xiě)
    發(fā)表于 08-18 07:44

    單總線數(shù)字溫度傳感器DS18B20的特性及工作原理

    介紹了單總線數(shù)字溫度傳感器DS18B20的特性及工作原理,給出了DS18B20與TMS320LF2407A 的接線圖并且非常詳細(xì)介紹了如何用
    發(fā)表于 07-28 09:59 ?114次下載

    數(shù)字溫度傳感器DS18B20的設(shè)計(jì)及應(yīng)用

    數(shù)字溫度傳感器DS18B20的設(shè)計(jì)及應(yīng)用 1引言 DS18B20是DALLAS公司生產(chǎn)的一線式數(shù)字溫度
    發(fā)表于 04-02 18:00 ?3437次閱讀
    數(shù)字<b class='flag-5'>溫度</b><b class='flag-5'>傳感器</b><b class='flag-5'>DS18B20</b>的設(shè)計(jì)及應(yīng)用

    DS18B20完成溫度檢測(cè)的技巧

    介紹了DS18B20 溫度傳感器 的結(jié)構(gòu)和特點(diǎn)以及用DS18B20溫度傳感器進(jìn)行
    發(fā)表于 08-23 10:44 ?191次下載
    <b class='flag-5'>DS18B20</b>完成<b class='flag-5'>溫度</b>檢測(cè)的技巧

    溫度傳感器DS18B20

    溫度傳感器DS18B20 51例程,親測(cè)可用
    發(fā)表于 06-14 15:36 ?21次下載

    智能溫度傳感器DS18B20的原理與應(yīng)用

    DS18B20是DALLAS公司生產(chǎn)的單線數(shù)字溫度傳感器,他具有獨(dú)特的單線總線接口方式。文章詳細(xì)的介紹了單線數(shù)字溫度傳感器
    發(fā)表于 10-11 18:19 ?50次下載

    ds18b20的特性_ds18b20溫度傳感器應(yīng)用

    本文首先介紹了ds18b20的特性,其次介紹了DS18B20工作原理,最后介紹了ds18b20溫度傳感器
    發(fā)表于 04-24 09:10 ?1.2w次閱讀
    <b class='flag-5'>ds18b20</b>的特性_<b class='flag-5'>ds18b20</b><b class='flag-5'>溫度</b><b class='flag-5'>傳感器</b>應(yīng)用

    單片機(jī)外設(shè)介紹:溫度傳感器 DS18B20

    文章目錄溫度傳感器 DS18B20溫度傳感器 DS18B20DS18B20 是美信公司的一款
    發(fā)表于 12-04 15:21 ?48次下載
    單片機(jī)外設(shè)介紹:<b class='flag-5'>溫度</b><b class='flag-5'>傳感器</b> <b class='flag-5'>DS18B20</b>

    DS18B20溫度傳感器工作原理

    ,DS18B20以其獨(dú)特的工作原理、卓越的技術(shù)參數(shù)和廣泛的應(yīng)用場(chǎng)景,成為了市場(chǎng)的明星產(chǎn)品。 深入了解DS18B20工作原理 DS18B20
    的頭像 發(fā)表于 06-19 16:01 ?3043次閱讀

    ds18b20溫度傳感器和dht11的區(qū)別

    DS18B20和DHT11都是常用的溫度和濕度傳感器,它們?cè)谠S多項(xiàng)目和應(yīng)用中都有廣泛的應(yīng)用。 1. 工作原理 DS18B20
    的頭像 發(fā)表于 09-03 16:44 ?7449次閱讀

    ds18b20溫度傳感器如何使用

    Devices的一部分)生產(chǎn)的數(shù)字溫度傳感器。它能夠提供9位至12位的溫度測(cè)量數(shù)據(jù),具有高精度和可編程分辨率。DS18B20溫度測(cè)量范圍
    的頭像 發(fā)表于 09-03 16:51 ?2590次閱讀

    ds18b20溫度傳感器怎么接線

    DS18B20是一種廣泛使用的數(shù)字溫度傳感器,它基于1-Wire(一線)通信協(xié)議工作。這種傳感器因其高精度、易用性和低成本而受到歡迎。
    的頭像 發(fā)表于 10-18 14:50 ?7419次閱讀

    ds18b20傳感器的使用方法

    Integrated開(kāi)發(fā)的一種數(shù)字溫度傳感器,它能夠提供9位到12位的溫度測(cè)量精度,測(cè)量范圍從-55°C到+125°C。這種傳感器非常適合用于需要精確
    的頭像 發(fā)表于 10-18 14:52 ?4617次閱讀
    体育| 通海县| 卫辉市| 洪洞县| 潍坊市| 宝兴县| 环江| 张家港市| 双桥区| 华坪县| 天水市| 丰台区| 交城县| 曲沃县| 承德市| 准格尔旗| 兰考县| 永丰县| 商丘市| 卫辉市| 武义县| 晋城| 乌鲁木齐县| 于都县| 洪洞县| 略阳县| 巩义市| 左权县| 贵州省| 东台市| 保亭| 龙里县| 汝州市| 晋城| 峨山| 蒲江县| 姜堰市| 韩城市| 东乡县| 华池县| 枣庄市|