freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

基于ds18b20的數(shù)字溫度計的設(shè)計與實現(xiàn)(編輯修改稿)

2025-01-09 01:00 本頁面
 

【文章內(nèi)容簡介】 ⑩ 負(fù)電壓特性,電源極性接反時,溫度計不會因為發(fā)熱而燒毀,只是不能正常工作。 的內(nèi)部結(jié)構(gòu) ( 1) DS18B20 內(nèi)部結(jié)構(gòu)及功能 DS18B20 采用 3 腳 PR— 35 封裝或 8腳 SOIC 封裝,其內(nèi)部結(jié)構(gòu)如 圖所示,主要包括:寄生電源,溫度傳感器, 64 位 ROM 和單總線接口,存放中間數(shù)據(jù)的高速暫存器 RAM,用于存儲用戶設(shè)定溫度上下限值的 TH 和 TL 觸發(fā)器,存儲與控制邏輯, 8 位循環(huán)冗余校驗碼( CRC)發(fā)生器等 7部分。 如圖 所示: 12 圖 DS18B20內(nèi)部結(jié)構(gòu) ( 2) 64 位激光 ROM 每一個 DS18B20 包括一個唯一個 64 位長的 ROM 編碼。 64 位 ROM 的位結(jié)構(gòu)如下圖 所示。開始的 8 位是單線產(chǎn)品系列編碼( DS1820 編碼是 10h);接著的48位 是每個器件唯一的系列號;最后的 8 位是開始 56 位 CRC 檢驗碼。 64 位 ROM和 ROM操作控制部分允許 DS18B20作為一個單線器件工作并遵循“單線總線系統(tǒng)”一節(jié)中所詳述的單線協(xié)議。知道 ROM 操作協(xié)議被滿足, DS18B20 控制部分的功能是不可訪問的。單線總線主機(jī)必須首先操作五種 ROM 操作命令之一: Read ROM(讀 ROM), Match ROM(匹配( ROM), Search ROM(搜索 ROM), Skip ROM(跳過 ROM),或 Alarm Search(告警搜索)。在成功地執(zhí)行了 ROM 操作序 列之后 DS18B20 特定的功能便可訪問,然后總線上主機(jī)可提供六個存儲器和控制功能命令之一。 MSB LSB MSB LSB MSB LSB 圖 64位 ROM結(jié)構(gòu)框圖 ( 3) 運(yùn)用 — 報警信號 在 DS18B20完成溫度變換之后,溫度值與貯存在 TH和 TL內(nèi)的觸發(fā)值相比較。因為這些寄存器僅僅是 8 位,所以 ℃位在比較時被忽略。 TH 或 TL 的最高比較位直接對應(yīng)于 16 位溫度寄存器的符號位。如果溫度測量的結(jié)果高于 TH 或低于TL,那么器件內(nèi)告警標(biāo)志將置位。每次溫度測量更新此標(biāo)志。只要告警標(biāo)志置位,8 位檢驗 CRC 48 位序列號 8 位工廠代碼( 10H) 13 DS18B20 將對告警搜索命令做出響應(yīng)。這允許并聯(lián)接許多 DS18B20,同時進(jìn)行溫度測量。如果某處溫度超過極限,那么可以識別出正在告警的器件并立即將其讀出而不必讀出非告警的器件。 ( 4) CRC 產(chǎn)生 DS18B20 有一存貯在 64 位 ROM 的最高有效字節(jié)內(nèi)的 8位 CRC。總線上的主機(jī)可以根據(jù) 64位 ROM的前 56位計算 機(jī) CRC的值并把它與存貯在 DS18B20內(nèi)的值進(jìn)行比較以決定 ROM 的數(shù)據(jù)是否已被主機(jī)正確地接收。 CRC 的等效多項式函數(shù)為: CRC=X8+X5+X4+1 ( 公式 ) DS18B20也利用與上述相同的多項式函數(shù)產(chǎn)生一個 8 位 CRC值并把此值提供給總線的主機(jī)以確認(rèn)數(shù)據(jù)字節(jié)的傳送。在使用 CRC 來確認(rèn)數(shù)據(jù)傳送的每一種情況中,總線主機(jī)必須使用上面給出的多項式函數(shù)計算 CRC 的值并把計算所得的值或者與存貯在 DS18B20的 64位 ROM部分中的 8位 CRC值( ROM讀數(shù)),或者與 DS18B20中計算得到的 8 位 CRC 值(在讀暫存存貯器中時,它作為第九個字節(jié)被讀出),進(jìn)行比較。 CRC 值的比較和是否繼續(xù)操作都由總線主機(jī)來決定。當(dāng)存貯在 DS18B20內(nèi)或由 DS18B20 計算得到的 CRC 值與總線主機(jī)產(chǎn)生的值不相符合時,在 DS18B20內(nèi)沒有電路來阻住命令序列的繼續(xù)執(zhí)行。 ( 5) 存貯器 DS18B20 的存貯器由一個高速暫存(便箋式) RAM 和一個非易失性、電可擦除 EEPROM 組成,后者存貯高溫度和低溫度觸發(fā)器 TH 和 TL。暫存存貯器有助于在單線通信時確保數(shù)據(jù)的完整性。 數(shù)據(jù)首先寫入暫存存貯器,在那里它可以被讀回。當(dāng)數(shù)據(jù)被校驗之后,復(fù)制暫存存貯器的命令把數(shù)據(jù)傳送到非易失性 EEPROM。這一過程確保了更改存貯器時數(shù)據(jù)的完整性。 高速暫存 RAM 的結(jié)構(gòu)為 9字節(jié)的存儲器,結(jié)構(gòu)如 圖所示。前 2 字節(jié)包含測得的溫度信息。第 3 和第 4 字節(jié)是 TH 和 TL 的拷貝,是易失的,每次上電復(fù)位時刷新。第 5 字節(jié)為配置寄存器,其內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率,DS18B20 工作時按此寄存器中的分辨率將溫度轉(zhuǎn)換為相應(yīng)精度的數(shù)值。該字節(jié)個位的定義如 圖所示,其中,低 5 位一直為 1; TM 是測試模式位,用于 設(shè)置DS18B20 在工作模式還是在測試模式,在 DS18B20 出廠時,該位被設(shè)置為 0,用戶不要去改動; R1 和 R0 決定溫度轉(zhuǎn)換的精度位數(shù),即用來設(shè)置分辨率,其定義 14 方法見表 : 表 DS18B20分辨率 表 DS18B20分辨率的定義和規(guī)定 由表 可見, DS18B20 溫度轉(zhuǎn)換的時間較長,而且設(shè)定的分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時間就越長。因此,在實際應(yīng)用中要將分辨率和轉(zhuǎn)換時間權(quán)衡考慮。 圖 高速暫存 RAM結(jié)構(gòu)圖 高速暫存的第 8 字節(jié)保留未用,表現(xiàn)為全邏輯 1。第 9 字節(jié)是前面所有 8 字節(jié)的 CRC 碼,可用來檢驗數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。 如 表 R1 R0 分辨率 /位 溫度最大轉(zhuǎn)換時間 /ms 0 0 9 0 1 10 1 0 11 375 1 1 12 750 15 所示: 表 配置寄存器位定義 當(dāng) DS18B20 接受到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以 16 位帶符號擴(kuò)張的二進(jìn)制補(bǔ)碼形式存儲在暫存 RAM 的第 2字節(jié)中。 單片機(jī)可以通過 單線接口讀出數(shù)據(jù)。讀數(shù)據(jù)是,低位在先,高位在后,數(shù)據(jù)格式以 ℃ /LSB 形式表示。溫度值格式如圖 所示: 低字節(jié) 高字節(jié) 圖 溫度數(shù)據(jù)值格式 圖中, S 表示符號位。當(dāng) S=0 時,表示測得的溫度值為正值,可以直接將二進(jìn)制轉(zhuǎn)換為十進(jìn)制;當(dāng) S=1 時,表示測得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計算十進(jìn)制值。表 是部分溫度值對應(yīng)的二進(jìn)制溫度表示數(shù)據(jù)。 表 DS18B20溫度與表示值對應(yīng)表 DS18B20 完成溫度轉(zhuǎn)換后,就把測得的溫度值與 RAM 中的 TH、 TL 字節(jié)內(nèi)容作比較,若 T> TH 或 T< TL,則將該器件內(nèi)的報警標(biāo)志位置位,并對主機(jī)發(fā)出的 16 報警搜索命令做出響應(yīng)。因此,可用多個 DS18B20 同時測得溫度并進(jìn)行報警搜索。 在 64位 ROM 的最高有效字節(jié)中存儲有循環(huán)冗余檢驗碼( CRC)。主機(jī)根據(jù) ROM的前 56 位來計算 CRC 值,并與存入 DS18B20 的 CRC 值作比較,以判斷主機(jī)收到的 ROM 數(shù)據(jù)是否正確。 的測溫原理 如圖 所示,圖中低溫度系數(shù)振蕩器的振蕩 頻率受溫度影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計數(shù)器 1;高溫度系數(shù)振蕩器隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號作為減法計數(shù)器 2 的脈沖輸入。 圖 DS18B20測溫原理圖 圖中還隱含著計數(shù)門,當(dāng)計數(shù)門打開時, DS18B20 就對低溫度系數(shù)振蕩器產(chǎn)生的時鐘脈沖進(jìn)行計數(shù),進(jìn)而完成溫度測量。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將 55℃所對應(yīng)的一個基數(shù)分別置入減法計數(shù)器1 和溫度寄存器中,減法計數(shù)器和溫度寄存器被預(yù)置在 55℃所對應(yīng)的一個基數(shù)值。 減法計數(shù)器 1對低溫度系數(shù)振蕩器產(chǎn)生的脈沖信號進(jìn)行減法計數(shù),當(dāng)減法計數(shù)器 1 的預(yù)置減到 0時,溫度寄存器的值將加 1,減法計數(shù)器 1 的預(yù)置值將重新被裝入,并重新開始對低溫度系數(shù)振蕩器產(chǎn)生的脈沖信號進(jìn)行計數(shù)。如此循環(huán),知道減法計數(shù)器 2計數(shù)到 0時,停止溫度計數(shù)器值的累加,此時溫度寄存器中的數(shù)值就是所測溫度值。圖 中的斜率累加器用于補(bǔ)償和修正測溫過程的非線形 17 性,直到溫度寄存器達(dá)到被測溫度值。 另外, DS18B20 單線通信功能是分時完成的,有嚴(yán)格的時隙概念,因此讀 /寫時序很重要。系統(tǒng)對 DS18B20 的各種操作必須按協(xié)議進(jìn)行。操作協(xié) 議為:初始化 DS18B20(發(fā)復(fù)位脈沖→發(fā) ROM 功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。 DS18B20 使用的注意事項 DS1820 雖然具有測溫系統(tǒng)簡單、測溫精度高、連接方便、占用口線少等優(yōu)點(diǎn),但在實際應(yīng)用中也應(yīng)注意以下幾方面的問題: (1)較小的硬件開銷需要相對復(fù)雜的軟件進(jìn)行補(bǔ)償,由于 DS1820 與微處理器間采用串行數(shù)據(jù)傳送,因此,在對 DS1820 進(jìn)行讀寫編程時,必須嚴(yán)格的保證讀寫時序,否則將無法讀取測溫結(jié)果。在使用 PL/M、 C 等高級語言進(jìn)行系統(tǒng)程序設(shè)計時,對 DS1820 操作部分最好采用匯編 語言實現(xiàn)。 (2)在 DS1820 的有關(guān)資料中均未提及單總線上所掛 DS1820 數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個 DS1820,在實際應(yīng)用中并非如此。當(dāng)單總線上所掛 DS1820 超過 8 個時,就需要解決微處理器的總線驅(qū)動問題,這一點(diǎn)在進(jìn)行多點(diǎn)測溫系統(tǒng)設(shè)計時要加以注意。 (3)連接 DS1820 的總線電纜是有長度限制的。試驗中,當(dāng)采用普通信號電纜傳輸長度超過 50m 時,讀取的測溫數(shù)據(jù)將發(fā)生錯誤。當(dāng)將總線電纜改為雙絞線帶屏蔽電纜時,正常通訊距離可達(dá) 150m,當(dāng)采用每米絞合次數(shù)更多的雙絞線帶屏蔽電纜時,正常通訊距離進(jìn) 一步加長。這種情況主要是由總線分布電容使信號波形產(chǎn)生畸變造成的。因此,在用 DS1820 進(jìn)行長距離測溫系統(tǒng)設(shè)計時要充分考慮總線分布電容和阻抗匹配問題。 (4)在 DS1820 測溫程序設(shè)計中,向 DS1820 發(fā)出溫度轉(zhuǎn)換命令后,程序總要等待 DS1820 的返回信號,一旦某個 DS1820 接觸不好或斷線,當(dāng)程序讀該 DS1820時,將沒有返回信號,程序進(jìn)入死循環(huán)。這一點(diǎn)在進(jìn)行 DS1820 硬件連接和軟件設(shè)計時也要給予一定的重視。 DS18B20 與單片機(jī)接口電路的設(shè)計 DS18B20 可以采用兩種供電方式:一種是采用電源供電方式,此時 DS18B20的第 1 引腳接地,第 2 引腳作為信號線,第 3 引腳接電源;另外一種是寄生電源供電方式,如圖 所示。單片機(jī)端口接單線總線,為保證在有效的 DS18B20 18 時鐘周期內(nèi)提供足夠的電流,可用一個 MOSFET 管來完成對總線的上位。 圖 DS18B20采用寄生電源的電路圖 當(dāng) DS18B20 處于寫存儲器操作和溫度 A/D 轉(zhuǎn)換操作時,總線上必須有強(qiáng)的上拉,上拉開啟時間最長為 500ms。采用寄生電源供電方式時, VDD和 GND 端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。 顯示電路的設(shè)計 方案一:數(shù)碼管顯示 數(shù)碼管是一種半導(dǎo)體發(fā)光器件,其基本單元是發(fā)光二極管。 數(shù)碼管按段數(shù)分為七段數(shù)碼管和八段數(shù)碼管,八段數(shù)碼管比七段數(shù)碼管多一個發(fā)光二極管單元(多一個小數(shù)點(diǎn)顯示);按能顯示多少個“ 8”可分為 1 位、 2 位、 4位等等數(shù)碼管。按發(fā)光二極管單元連接方式分為共陽極數(shù)碼管和共陰極數(shù)碼管。共陽數(shù)碼管是指將所有發(fā)光二極管的陽極接到一起形成公共陽極(COM)的數(shù)碼管,共陽數(shù)碼管在應(yīng)用時應(yīng)將公共極 COM 接到 +5V,當(dāng)某一字段發(fā)光二極管的陰極為低電平時,相應(yīng)字段就點(diǎn)亮,當(dāng)某一字段的陰極為高電平時,相應(yīng)字段就不亮。共陰數(shù)碼管是指將所有發(fā)光二極管的陰極接到一起形成公共陰極 (COM)的數(shù)碼管,共陰數(shù)碼管在應(yīng)用時應(yīng)將公共極 COM接到
點(diǎn)擊復(fù)制文檔內(nèi)容
研究報告相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1