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

正文內(nèi)容

20xx屆畢業(yè)設(shè)計(jì)論文數(shù)字溫度計(jì)(編輯修改稿)

2024-11-15 09:43 本頁面
 

【文章內(nèi)容簡介】 方式下可以解決電流供應(yīng)不走的問題 , 因此也適合于多點(diǎn)測溫應(yīng)用,缺點(diǎn)就是要多占用一根 I/O 口線進(jìn)行強(qiáng)上拉切換。 圖 寄生電源工作方式 ( 2) 外接電源工作方式 當(dāng)溫度高于 100℃ 時(shí), 不推薦 使用寄生電源,因?yàn)榇藭r(shí)器件中較大的漏電流會(huì)使總線不能可靠檢測高低電平,從而導(dǎo)致數(shù)據(jù)傳輸誤碼率的增大。 在類似這種溫度的情況下, 推薦 使用 DS18B20 的 VDD 引腳。 圖 外接電源工作方式 2. 2 DS18B20 存儲器 及 設(shè)置寄存器 DS18B20 溫度傳感器的內(nèi)部存儲器包括一個(gè)高速暫存 RAM 和一個(gè)非易失性的可電擦除的 E2RAM, 后者存放高溫度和低溫度觸發(fā)器 TH 、 TL 和結(jié)構(gòu)寄存器。數(shù)據(jù)先寫入 RAM ,經(jīng)校驗(yàn)后再傳給 E2RAM 。 暫存存儲器包含了 8 個(gè)連續(xù)字節(jié),前兩個(gè)字節(jié)是測得的溫度信息,第一個(gè)字節(jié)的內(nèi)容是溫度的低八位 TL ,第二個(gè)字節(jié)是溫度的高八位 TH 。第三個(gè)和第四個(gè)字節(jié)是 TH 、 TL 的易失性拷貝,第五個(gè)字節(jié)是結(jié)構(gòu)寄存器的易失性拷貝,這三個(gè)字節(jié)的內(nèi)容在每一次上電復(fù)位時(shí)被刷新。第六、七、八個(gè)字節(jié)用于內(nèi)部計(jì)算。第九個(gè)字節(jié)是冗余檢驗(yàn)字節(jié),可用來保證通信正確。 DS18B20 的分布如下: 基于單總線溫度傳感器的溫度檢測系統(tǒng)設(shè)計(jì) 12 表 DS18B20 的暫存寄存器分布 寄存器內(nèi)容 地址 溫度的低八位數(shù)據(jù) 0 溫度的高八位數(shù)據(jù) 1 高溫閥值 2 低溫閥值 3 保留 4 保留 5 計(jì)數(shù)剩余值 6 每度計(jì)數(shù)值 7 CRC 校驗(yàn) 8 在 64 b ROM 的最高有效字節(jié)中存儲有循環(huán)冗余校驗(yàn)碼( CRC )。主機(jī)根據(jù) ROM 的前 56 位來計(jì)算 CRC 值,并和存入 DS18B20 中的 CRC 值做比較,以判斷主機(jī)收到的 ROM 數(shù)據(jù)是否正確。 設(shè)置寄存器位于高速閃存的低 5 個(gè)字節(jié),這個(gè)寄存器中的內(nèi)容被用來確定溫度的轉(zhuǎn)換精度。寄存器各位的內(nèi)容如下: 表 DS18B20 的設(shè)置寄存器各位內(nèi)容 BIT7 BIT6 BIT5 BIT4 BIT3 BIT2 BIT1 BIT0 TM R1 R0 1 1 1 1 1 該寄存器的低五位一直都是 1,TM 是測試模式位,用于設(shè)置 DS18B20 在工作模式還是在測試模式。在 DS18B20 出廠時(shí)該位被設(shè)置為 0,用戶不要去改動(dòng)。 R1 和 R0 用來設(shè)置分辨率,如下表所示 :( DS18B20 出廠時(shí)被設(shè)置為 12 位) 表 分辨率設(shè)置 R1 R0 分辨率 溫度最大轉(zhuǎn)換時(shí)間 0 0 9 位 ms 0 1 10 位 ms 1 0 11 位 375 ms 0 0 12 位 750 ms 基于單總線溫度傳感器的溫度檢測系統(tǒng)設(shè)計(jì) 13 由表可知,設(shè)定的分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間就越長。因此,在實(shí)際應(yīng)用中要在分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。 本次設(shè)計(jì)中采用的為 12 位分辨率,即 750MS 轉(zhuǎn)換時(shí)間 2. 3 DS18B20 測溫原理 DS18B20 其內(nèi)部含有兩個(gè)溫度系數(shù)不同的溫敏振蕩器 , 其中低溫度系數(shù)振蕩器相當(dāng)于標(biāo)尺,高溫度系數(shù)振蕩器相當(dāng)于測溫元件,通過不斷比較兩個(gè)溫敏振蕩器的振蕩周期得到兩個(gè)溫敏振蕩器在測量溫度下的振蕩頻率比值。根據(jù)頻率比值和溫度的對應(yīng)曲線得到相應(yīng)的溫度值。這種方式避免了測溫過程中的 A/D 轉(zhuǎn)換,提高了溫度 測量的精度。 低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號送給減法計(jì)數(shù)器 1。高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,很敏感的振蕩器,所產(chǎn)生的信號作為減法計(jì)數(shù)器 2 的脈沖輸入,為計(jì)數(shù)器 2 提供一個(gè)頻率隨溫度變化的計(jì)數(shù)脈沖。圖中還隱含著計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí), DS18B20 就對低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖后進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測量。計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將 55 ℃ 所對應(yīng)的基數(shù)分別置入減法計(jì)數(shù)器 1 和溫度寄存器中,減法計(jì)數(shù)器 1 和溫度寄存器被預(yù)置在 55 ℃ 所對應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器 1 對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器 1 的預(yù)置值減到 0 時(shí)溫度寄存器的值將加 1 ,減法計(jì)數(shù)器 1 的預(yù)置將重新被裝入,減法計(jì)數(shù)器 1 重新開始對低溫度系數(shù)晶振產(chǎn)生的脈沖信號進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器 2 計(jì)數(shù)到 0 時(shí),停止溫度寄存器值的累加,此時(shí)溫度寄存器中的數(shù)值即為所測溫度。斜率累加器用于補(bǔ)償和修正測溫過程中的非線性,其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá) 到被測溫度值 。 圖 DS18B20 的內(nèi)部測溫電路框圖 基于單總線溫度傳感器的溫度檢測系統(tǒng)設(shè)計(jì) 14 DS18B20 內(nèi)部結(jié)構(gòu)主要由四部分組成: 溫度傳感器 、 64 位光刻 ROM、非揮發(fā)的溫度報(bào)警觸發(fā)器 TH 和 TL、配置寄存器。 光刻 ROM 中的 64 位序列號是出廠前被光刻好的,它可以看作是該 DS18B20 的地址序列碼 。 64位光刻 ROM 的排列是:開始 8位(地址 : 28H)是產(chǎn)品類型 的編號 ,接著的 48 位是 每個(gè) DS18B20 自身的序列號,并且每個(gè) DS18B20 的序列號都不相同,因此它可以看作是該 DS18B20的地址序列碼;最后 8位則是前面 56位的 CRC校驗(yàn)碼( CRC=X8+X5+X4+1)。由于每一個(gè) DS18B20 的 ROM 數(shù)據(jù)都各不相同,因此微控制器就可以通過單總線對多個(gè) DS18B20 進(jìn)行尋址,從而實(shí)現(xiàn)一根總線上掛接多個(gè) DS18B20 。 圖 64b 閃速 ROM DS18B20 中的溫度傳感器用于完成對溫度的測量,它的測量精度可以配置成 9 位, 10位, 11 位或 12 位 4種狀態(tài)。溫度傳感器在測量完成后將測量的結(jié)果存儲在 DS18B20 的兩個(gè) 8BIT 的 RAM 中,單片機(jī)可通過單線接口讀到該數(shù)據(jù),讀取時(shí)低位在前,高位在后數(shù)據(jù)的存儲格式如下表 ( 以 12 位轉(zhuǎn)化為例 ): 圖 溫度信號寄存器格式 這是 12 位轉(zhuǎn)化后得到的 12 位數(shù)據(jù),存儲在 18B20 的兩個(gè) 8 比特的 RAM 中,二進(jìn)制中的前面 5 位是符號位,如果測得的溫度大于 0 ,這 5 位為 0 ,只要將測到的數(shù)值乘于 即可得到實(shí)際溫度;如果溫度小于 0 ,這 5 位為 1 ,測到的數(shù)值需要取反加 1 再乘于 即可得到實(shí)際溫度。 例如: + 125 ℃ 的數(shù)字輸出為 07D0H , + ℃ 的數(shù)字輸出為 0191H , ℃ 的數(shù)字輸出為 FF6FH , 55 ℃ 的數(shù)字輸出為 FC90H 。 基于單總線溫度傳感器的溫度檢測系統(tǒng)設(shè)計(jì) 15 DS18B20 完成溫度轉(zhuǎn)換后,就把測得的溫度值與 TH , TL 作比較,若 TTH 或 TTL, 則將該器件內(nèi)的告警標(biāo)志置位,并對主機(jī)發(fā)出的告警搜索命令作出響應(yīng)。因此,可用多只 DS18B20 同時(shí)測量溫度 并進(jìn)行告警搜索。 2. 4 DS18B20 測溫過程 1WIRE 網(wǎng)絡(luò)具有嚴(yán)謹(jǐn)?shù)目刂平Y(jié)構(gòu),其結(jié)構(gòu)如圖 所示,一般通過雙絞線與 1WIRE 元件進(jìn)行數(shù)據(jù)通信,它們通常被定義為漏極開路端點(diǎn),主 / 從式多點(diǎn)結(jié)構(gòu),而且一般都在主機(jī)端接上一個(gè)上拉電阻 +5V 電源。通常為了給 1WIRE 設(shè)備提供足夠的電源,需要一個(gè) MOSFET 管將 1WIRE 總線上拉至 +5V 電源。 圖 DS18B20 組成的 1WIRE 網(wǎng)絡(luò) 1WIRE 網(wǎng)絡(luò)通信協(xié)議是分時(shí)定義的,有嚴(yán)格的時(shí)隙概念,下圖是復(fù)位脈沖的時(shí)隙。 圖 1WIRE 協(xié)議的復(fù)位脈 沖時(shí)隙 基于單總線溫度傳感器的溫度檢測系統(tǒng)設(shè)計(jì) 16 圖 1WIRE 讀寫 “ 0/1” 時(shí)隙 DS18B20 單線通信功能是分時(shí)完成的,他有嚴(yán)格的時(shí)隙概念,如果出現(xiàn)序列混亂,1WIRE 器件將不響應(yīng)主機(jī),因此讀寫時(shí)序很重要。系統(tǒng)對 DS18B20 的各種操作必須按協(xié)議進(jìn)行。根據(jù) DS18B20 的協(xié)議規(guī)定,微控制器控制 DS18B20 完成溫度的轉(zhuǎn)換必須經(jīng)過以下 4 個(gè)步驟 : ( 1) 每次讀寫前對 DS18B20 進(jìn)行復(fù)位初始化。復(fù)位要求主 CPU 將數(shù)據(jù)線下拉 500us ,然后釋放, DS18B20 收到信號后等待 16us~ 60us 左右,然后發(fā)出 60us~ 240us 的存在低脈沖 ,主 CPU 收到此信號后表示復(fù)位成功。 ( 2) 發(fā)送一條 ROM 功能 指令,如表 所示: 表 DS18B20 的 ROM 指令集 指令名稱 指令代碼 指令功能 讀 ROM 33H 讀 DS18B20ROM 中的 序列號 (即讀 64 位地址) ROM 匹配(符合 ROM ) 55H 發(fā)出此命令之后,接著發(fā)出 64 位 ROM 編碼,訪問單總線上與編碼相對應(yīng) DS18B20 使之作出響應(yīng), 用于多個(gè)基于單總線溫度傳感器的溫度檢測系統(tǒng)設(shè)計(jì) 17 DS18B20 時(shí)定位 搜索 ROM 0F0H 用于確定掛接在同一總線上 DS18B20 的 個(gè)數(shù)和識別 64 位 ROM 地址,為操作各器件作好準(zhǔn)備 跳過 ROM 0CCH 忽略 64 位 ROM 地址,直接向 DS18B20 發(fā)溫度變換命令, 該命令將針對所有在線的 DS18B20 警報(bào)搜索 0ECH 該指令執(zhí)行后,只有溫度超過設(shè)定值上限或下限的片子才做出響應(yīng) ( 3) 發(fā)送存儲器指令,如表 所示 : 表 DS18B20 的存儲器指令集 指令名稱 指令代碼 指令功能 溫度變換 44H 啟動(dòng) DS18B20 進(jìn)行溫度轉(zhuǎn)換,轉(zhuǎn)換時(shí)間最長為 500ms (典型為 200ms ) ,結(jié)果存入內(nèi)部 9 字節(jié) RAM 中 讀暫存器 0BEH 讀內(nèi)部 RAM 中 9 位溫度值和 CRC 值 寫暫存器 4EH 發(fā)出向內(nèi)部 RAM 的第 3 , 4 字節(jié)寫上,下限溫度數(shù)據(jù)命令,緊跟該命令之后,是傳送兩字節(jié)的數(shù)據(jù) 復(fù)制暫存器 48H 將 RAM 中第 3 , 4 字節(jié)的內(nèi)容復(fù)制到 EEPROM 中 重調(diào) EEPROM 0B8H EEPROM 中的內(nèi)容恢復(fù)到 RAM 中的第 3 , 4 字節(jié) 讀供電方式 0B4H 讀 DS18B20 的供電模式,寄生供電時(shí) DS18B20 發(fā)送 “ 0 ” ,外接電源供電 DS18B20 發(fā)送 “ 1 ” ( 4) 進(jìn)行數(shù)據(jù)通信。 2. 5 DS18B20 使用注意事項(xiàng) DS1820 在實(shí)際應(yīng)用中 應(yīng)注意以下幾方面的問題: ( 1) 每一次讀寫之前都要對 DS18B20 進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條 ROM 指令,最后發(fā)送 RAM 指令,這樣才能對 DS18B20 進(jìn)行預(yù)定的操作。復(fù)位要求主 CPU 將數(shù)據(jù)線下拉 500 微 秒,然后釋放, DS18B20 收到信號后等待 16 ~ 60 微 秒左右,后發(fā)出 60 ~ 240 微 秒的存在低脈沖,主 CPU 收到 此信號表示復(fù)位成功。 ( 所有的讀寫時(shí)序至少需要 基于單總線溫度傳感器的溫度檢測系統(tǒng)設(shè)計(jì) 18 60us ,且每個(gè)獨(dú)立的時(shí)序之間至少需要 1us 的恢復(fù)時(shí)間。在寫時(shí)序時(shí),主機(jī)將在下拉低總線 15us 之內(nèi)釋放總線,并向單總線器件寫 1 ;若主機(jī)拉低總線后能保持至少 60us 的低電平,則向單總線器件寫 0 。單總線僅在主機(jī)發(fā)出讀寫時(shí)序時(shí)才向主機(jī)傳送數(shù)據(jù),所以,當(dāng)主機(jī)向單總線器件發(fā)出讀數(shù)據(jù)指令后,必須馬上產(chǎn)生讀時(shí)序,以便單總線器件能傳輸數(shù)據(jù) 。) ( 2) 在寫數(shù)據(jù)時(shí),寫 0 時(shí)單總線至少被拉低 60us, 寫 1 時(shí) , 15us 內(nèi)就得釋放總線。 ( 3) 轉(zhuǎn)化后得 到的 12 位數(shù)據(jù),存儲在 18B20 的兩個(gè) 8 比特的 RAM 中,二進(jìn)制中的前面 5 位是符號位,如果測得的溫度大于 0 ,這 5 位為 0 ,只要將測到的數(shù)值乘于 即可得到實(shí)際溫度;如果溫度小于 0 ,這 5 位為 1 ,測到的數(shù)值需要取反加 1 再乘于 即可得到實(shí)際溫度。 ( 4) 較小的硬件開銷需要相對復(fù)雜的軟件進(jìn)行補(bǔ)償,由于 DS1820 與微處理器間采用串行數(shù)據(jù)傳送,因此,在對 DS1820 進(jìn)行讀寫編程時(shí),必須嚴(yán)格的保證讀寫時(shí)序,否則將無法讀取測溫結(jié)果。在使用 PL/M 、 C 等高級語言進(jìn)行系統(tǒng)程序設(shè)計(jì)時(shí),對 DS1820 操作部分最好采用匯編語言實(shí)現(xiàn)。 ( 5) 在 DS1820 的有關(guān)資料中均未提及單總線上所掛 DS1820 數(shù)量問題,容易使人誤認(rèn)為可以掛任意多個(gè) DS1820 ,在實(shí)際應(yīng)用中并非如此。當(dāng)單總線上所掛 DS1820 超過 8 個(gè)時(shí),就需要解決微處理器的總線驅(qū)動(dòng)問題,這一點(diǎn)在進(jìn)行多點(diǎn)測溫系統(tǒng)設(shè)計(jì)時(shí)要
點(diǎn)擊復(fù)制文檔內(nèi)容
畢業(yè)設(shè)計(jì)相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1