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

正文內(nèi)容

畢業(yè)設(shè)計(jì)_基于at89c51單片機(jī)的數(shù)字溫度計(jì)設(shè)計(jì)(編輯修改稿)

2025-01-06 20:49 本頁面
 

【文章內(nèi)容簡介】 11 開始的 8 位是產(chǎn)品類型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有 48 位,最后8 位是前面 56 位的 CRC 檢驗(yàn)碼,這也是多個(gè) DS18B20 可以采用一線進(jìn)行通信的原因。溫度報(bào)警觸發(fā)器 TH 和 TL,可通過軟件寫入戶報(bào)警上下限。 圖 DS18B20 內(nèi)部結(jié)構(gòu)框圖 溫度傳感器 DS18B20的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存 RAM和一個(gè)非易失性的可電擦除的 EERAM。高速暫存 RAM 的結(jié)構(gòu)為 8 字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如圖 所示。 圖 高速暫存 RAM 結(jié)構(gòu)圖 其中,前 2 個(gè)字節(jié)包含測得的溫度信息,第 3 和第 4 字節(jié) TH 和 TL 的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第 5 個(gè)字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值煙臺(tái)汽車工程職業(yè)學(xué)院 數(shù)字溫度計(jì)設(shè)計(jì) 12 的數(shù)字轉(zhuǎn)換分辨率。 DS18B20 工 作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。 暫存存儲(chǔ)器的第 5 個(gè)字節(jié)是配置寄存器,可以通過相應(yīng)的寫命令進(jìn)行配置,其內(nèi)容如下: 0 R1 R0 1 1 1 1 1 1 MSB LSB 其中 R0 和 R1 是溫度值分辨率位,可按表 進(jìn)行配置。 表 溫度值分辨率配置表 R1 R0 分辨率 最大轉(zhuǎn)換時(shí)間(ms) 0 0 9 位 (tconv/8) 0 1 10 位 (tconv /4) 1 0 11 位 375ms(tconv /2) 1 1 12 位 750ms(tconv) 當(dāng) DS18B20 接收到溫度轉(zhuǎn)換命令后,開始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以 16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第 2 字節(jié)。單片機(jī)可通過單線接口讀到該數(shù)據(jù),讀取時(shí)低位在前、高位在后,數(shù)據(jù)格式以 ℃ /LSB 形式表示。溫度值格式如下: 低 23 22 21 20 21 22 23 24 高 S S S S S 26 25 24 MSB LSB 這是 12 位轉(zhuǎn)化后得到的 12 位數(shù)據(jù),存儲(chǔ)在 DS18B20 的兩個(gè) 8 比特的 RAM 中,二進(jìn)制中的前面 5 位是符號(hào)位,如果測得的溫度大于 0,這 5 位為 0,只要將測到的數(shù)值乘于 即可得到實(shí)際溫度;如果溫度小于 0,這 5 位為 1,測到的數(shù)值需要取反加煙臺(tái)汽車工程職業(yè)學(xué)院 數(shù)字溫度計(jì)設(shè)計(jì) 13 1 再乘于 即可得到實(shí)際溫度。格式中, S 表示位。對(duì)應(yīng)的溫度計(jì)算:當(dāng)符號(hào)位 S=0時(shí),表示測得的溫度植為正值,直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng) S=1 時(shí),表示測得的溫度植為負(fù)值,先將補(bǔ)碼變換為原碼,再計(jì)算十進(jìn)制值。例如 +125℃ 的數(shù)字輸出為07D0H, +℃ 的數(shù)字輸出為 0191H, ℃ 的數(shù)字輸出為 FF6FH, 55℃ 的數(shù)字輸出為 FC90H。 DS18B20 溫度傳感器主要用于對(duì)溫度進(jìn)行測量,數(shù)據(jù)可用 16 位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,并以 ℃ /LSB 形式表示。表 是部分溫度值對(duì)應(yīng)的二進(jìn)制溫度表示數(shù)據(jù)。 表 部分溫度的二進(jìn)制表示 溫度 數(shù)字輸出(二進(jìn)制) 數(shù)字輸出( 16 進(jìn)制) +125℃ 00000111 11010000 07D0H +85℃ 00000101 01010000 0550H +℃ 00000001 10010001 0191H +℃ 00000000 10100010 00A2H +℃ 00000000 00001000 0008H 0℃ 00000000 00000000 0000H ℃ 11111111 11111000 FFF8H ℃ 11111111 01011110 FFE5H ℃ 11111110 01101111 FF6FH 55℃ 11111100 10010000 FC90H DS18B20 完成溫 度轉(zhuǎn)換后,就把測得的溫度值與 RAM 中的 TH、 TL字節(jié)內(nèi)容作比較,若 TTH 或 TTL,則將該器件內(nèi)的告警標(biāo)志置位,并對(duì)主機(jī)發(fā)出的告警搜索命令作出響應(yīng)。因此,可用多只 DS18B20 同時(shí)測量溫度并進(jìn)行告警搜索。在 64 位 ROM 的最高有效字節(jié)中存儲(chǔ)有循環(huán)冗余校驗(yàn)碼 (CRC)。主機(jī)根據(jù) ROM 的前 56 位來計(jì)算 CRC值,并和存入 DS18B20 中的 CRC 值做比較,以判斷主機(jī)收到的 ROM 數(shù)據(jù)是否正確。 DS18B20 的測溫原理 DS18B20 的測溫原理如圖 所示,圖中低溫度系數(shù)晶振的振蕩頻率受溫度的影響煙臺(tái)汽車工程職業(yè)學(xué)院 數(shù)字溫度計(jì)設(shè)計(jì) 14 很小用 于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器 1,高溫度系數(shù)晶振隨溫度變化其震蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器 2 的脈沖輸入,圖中還隱含著計(jì)數(shù)門,當(dāng)計(jì)數(shù)門打開時(shí), DS18B20 就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖后進(jìn)行計(jì)數(shù),進(jìn)而完成溫度測量 .計(jì)數(shù)門的開啟時(shí)間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將 55℃所對(duì)應(yīng)的基數(shù)分別置入減法計(jì)數(shù)器 1 和溫度寄存器中,減法計(jì)數(shù)器 1 和溫度寄存器被預(yù)置在 55℃ 所對(duì)應(yīng)的一個(gè)基數(shù)值。 圖 外部封裝形式 圖 傳感器電路圖 圖 DS18B20 測溫原理圖 煙臺(tái)汽車工程職業(yè)學(xué)院 數(shù)字溫度計(jì)設(shè)計(jì) 15 減法計(jì)數(shù)器 1 對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器 1 的預(yù)置值減到 0 時(shí)溫度寄存器的值將加 1,減法計(jì)數(shù)器 1 的預(yù)置將重新被裝入,減法計(jì)數(shù)器 1 重新開始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(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 的測溫原理。 另外,由于 DS18B20 單線通信功能是分時(shí)完成的,它有嚴(yán)格的時(shí)間概念,因此讀寫時(shí)序很重要。系統(tǒng)對(duì) DS18B20 的各種操作必須按協(xié)議進(jìn)行。操作協(xié)議為:初始化DS18B20(發(fā)復(fù)位脈沖) → 發(fā) ROM 功能命令 → 發(fā)存儲(chǔ)器操作命令 → 處理數(shù)據(jù)。 在正常測溫情況下, DS18B20 的測溫分辨力為 ℃ ,可采用下述方法獲得高分辨率的溫度測量結(jié)果:首先用 DS18B20 提供的讀暫存器指令 (BEH)讀出以 ℃ 為分辨率的溫度測量結(jié)果,然后切去測量結(jié)果中的最低有效位 (LSB),得到所測實(shí)際溫度的整數(shù)部分 Tz,然后再 用 BEH 指令取計(jì)數(shù)器 1 的計(jì)數(shù)剩余值 Cs 和每度計(jì)數(shù)值 CD。實(shí)際溫度 Ts可用式 ()計(jì)算: Ts=( ℃ ) +(CDCs)/CD () 設(shè)計(jì)的溫度采集電路如圖 所示。 圖 溫度采集電路圖 煙臺(tái)汽車工程職業(yè)學(xué)院 數(shù)字溫度計(jì)設(shè)計(jì) 16 顯示電路的設(shè)計(jì) LED 數(shù)碼管 LED 數(shù)碼管,也叫 LED 數(shù)碼顯示器,由于它具有很高的性能價(jià)格比、顯示清晰、亮度高、使用方便、電路簡單、壽命長等諸多優(yōu)點(diǎn),長期以來一直在各類電子產(chǎn)品和工程控制中得到非常廣泛的應(yīng)用。在單片機(jī)控制系統(tǒng) 中,因?yàn)閱纹瑱C(jī)的硬件簡單、靈活等特點(diǎn),非常適合使用 LED 數(shù)碼管作為其輸出設(shè)備,這樣既滿足了控制系統(tǒng)硬件簡單,又能如實(shí)地顯示被控系統(tǒng)的溫度、壓力、流量、高度等一些單片機(jī)的處理結(jié)果。 LED 數(shù)碼管的基本組成是半導(dǎo)體發(fā)光二極管,它是將若干個(gè)發(fā)光二極管,按照一定的筆段組合起來構(gòu)成的一個(gè)整體。 LED 數(shù)碼管能顯示 0~ 9 十個(gè)數(shù)字及部份英文字母。常見的八段 LED 數(shù)碼管結(jié)構(gòu)如圖 所示。 圖 數(shù)碼管的內(nèi)部結(jié)構(gòu) 它由 8 個(gè)發(fā)光二極管組成,其中 7 個(gè)長條形的發(fā)光二極管排列成 ”日 ”字形,另一個(gè)發(fā)光二極管在整個(gè)數(shù)碼管的右 下角,用來顯示小數(shù)點(diǎn)。根據(jù) 8 個(gè)發(fā)光二極管的不同連接形式,可以將 LED 數(shù)碼管分成共陽極和共陰極兩種。將 8 個(gè)發(fā)光二極管的陽極都連在一起的,稱之為共陽極 LED 數(shù)碼管;將 8 個(gè)發(fā)光二極管的陰極都連在一起的,稱之為共陰極 LED 數(shù)碼管。共陰極和共陽極結(jié)構(gòu)的 LED 數(shù)碼管各筆段名和安排位置是相同的。 當(dāng)發(fā)光二極管導(dǎo)通時(shí),相應(yīng)的筆段發(fā)亮,由發(fā)亮的筆段組合成 0~ 9 十個(gè)數(shù)字及部分英文字母。這里我們以共陰極 LED 數(shù)碼管為例,當(dāng)讓其顯示數(shù)字 ”3”時(shí),只要 a、 b、c、 d、 g 段的發(fā)光二極管點(diǎn)亮, e、 f、 dp 段的發(fā)光二極管不亮,即 a、 b、 c、 d、 g 段發(fā)光二極管的陽極加上高電平 ”1”, e、 f、 dp 段發(fā)光二極管的陽極加上低電平 ”0”,同時(shí)使 LED 數(shù)碼管的公共陰極接低電平 ”0”,則 LED 數(shù)碼管此時(shí)就能顯示數(shù)字 ”3”。 如果加到各筆段對(duì)應(yīng)發(fā)光二極管陽極上的代碼不同,則就能控制 LED 數(shù)碼管顯示煙臺(tái)汽車工程職業(yè)學(xué)院 數(shù)字溫度計(jì)設(shè)計(jì) 17 不同的字符和數(shù)字,這個(gè)代碼稱為段碼。通常將這個(gè)段碼用單片機(jī)系統(tǒng)中的一個(gè)字節(jié)進(jìn)行存儲(chǔ),正好這個(gè)字節(jié)中的 8 個(gè)二進(jìn)制位 (D D D D D D D D0),依次對(duì)應(yīng) LED 數(shù)碼管的 8 個(gè)筆段 dp、 g、 f、 e、 d、 c、 b、 a。 顯示電路 顯示電路采用 4 個(gè)共陰極 LED 數(shù)碼管,從 P1 口并行輸出溫度段碼,用 ~ 四個(gè)端口輸出選擇脈沖,控制數(shù)碼管的點(diǎn)亮。其具體電路圖如圖 所示。 圖 顯示電路 其工作過程如下: ( 1) 并行數(shù)據(jù)由 P1 口送至 4 個(gè)數(shù)碼管。 ( 2) 這時(shí) 、 、 、 輪流輸出低電平, LED 數(shù)碼管依次被點(diǎn)亮,顯示 P1 傳送來的數(shù)據(jù)。 由于數(shù)碼管余輝效應(yīng)和人眼的視覺延遲,當(dāng)數(shù)碼管每秒點(diǎn)亮 50 次時(shí),就會(huì)出現(xiàn)靜止顯示的溫度值。煙臺(tái)汽車工程職業(yè)學(xué)院 數(shù)字溫度計(jì)設(shè)計(jì) 18 3 系統(tǒng)的軟件設(shè)計(jì) 軟件設(shè)計(jì)關(guān)鍵在于 DS18B20 的使用。 DS18B20 屬于單線式器 件,它在一根數(shù)據(jù)線上實(shí)現(xiàn)數(shù)據(jù)的雙向傳輸,這就需要一定的協(xié)議,來對(duì)讀寫數(shù)據(jù)提出嚴(yán)格的時(shí)序要求,而AT89C51 單片機(jī)并不支持單線傳輸,因此必須采用軟件的方法來模擬單線的協(xié)議時(shí)序。 DS18B20 的單線協(xié)議和命令 DS18B20 有嚴(yán)格的通信協(xié)議來保證各為數(shù)據(jù)傳輸?shù)恼_性和完整性。主機(jī)操作單線器件 DS18B20 必須遵循下面的順序。 初始化 單線總線上的所有操作都是從初始化開始的。過程如下: 請(qǐng)求 主機(jī)通過拉低單線 480us 以上,產(chǎn)生復(fù)位脈沖,然后釋放該線,進(jìn)入 Rx接收模式。主機(jī)釋放總線時(shí),會(huì) 產(chǎn)生一個(gè)上升沿脈沖。 響應(yīng) DS18B20 檢測到該上升沿后,延時(shí) 15~60us,通過拉低總線 60~240us 來產(chǎn)生應(yīng)答脈沖。 接收響應(yīng) 主機(jī)接收到從機(jī)的應(yīng)答脈沖后,說明有單線器件在線。至此,初始化完成。 ROM 操作命令 當(dāng)主機(jī)檢測到應(yīng)答脈沖,便可發(fā)起 ROM 操作命令。共有 5 類 ROM 操作命令,如表 所示。 表 ROM 操作命令 指令類型 命令字節(jié) 功能說明 Read Rom 讀 ROM 33H 讀取激光 ROM 中的 64 位,只能用于總線上單個(gè) DS18B20器件情況,多掛時(shí)會(huì)發(fā)生數(shù)據(jù)沖突; 煙臺(tái)汽車工程職業(yè)學(xué)院 數(shù)字溫度計(jì)設(shè)計(jì) 19 Match Rom 匹配ROM 55H 此命令后跟 64 位 ROM 序列號(hào),尋址多掛總線上的對(duì)應(yīng)DS18B20,只有序列號(hào)完全匹配的 DS18B20 才能響應(yīng)后面的內(nèi)存操作命令,其他不匹配的將等待復(fù)位脈沖,可用于單掛或多掛兩種情況; Skip Rom 跳過ROM CCH 可無須提供 64 位 ROM序列號(hào)即可運(yùn)行內(nèi)存操作命令,只能用于單掛; Search Rom 搜索ROM F0H 通過一個(gè)排除法過程,識(shí)別出總線上所有器件的
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號(hào)-1