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

正文內(nèi)容

基于18b20溫度報警系統(tǒng)畢業(yè)設(shè)計(參考版)

2025-07-01 00:46本頁面
  

【正文】 這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見圖 7 所示。具體軟件流程圖如圖 所示: 南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 31圖 軟件流程圖南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 32 程序設(shè)計系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計算溫度子程序,顯示數(shù)據(jù)刷新子程序等。在正常執(zhí)行溫度轉(zhuǎn)換時,同樣需要調(diào)用一段延時,而本系統(tǒng)利用 CPU 執(zhí)行顯示子程序占有的時間代替這段延時。第四章軟件設(shè)計 設(shè)計思路在子程序設(shè)計中,要求系統(tǒng)結(jié)構(gòu)清晰,盡可能地保證單入口單出口,減少與其他程序之間的耦合,但為了提高這類滯后對象的實時性指標(biāo),可以在個程序適當(dāng)?shù)牟糠诌M(jìn)行揉合。這一點在進(jìn)行 DS18B20 硬件連接和軟件設(shè)計時要注意。(8)單總線上所掛的 DS18B20 超過 8 個時,要注意微處理器的總線驅(qū)動問題。(6)當(dāng)不進(jìn)行復(fù)位時,數(shù)據(jù)線保持為低電平時間不超過 60us,否則將產(chǎn)生復(fù)位讀操作。(4)當(dāng)主機發(fā)溫度轉(zhuǎn)換命令使 DS18B20 進(jìn)行溫度轉(zhuǎn)換時,數(shù)據(jù)線要保持高電平的時間為 750ms。若電源電壓過低,會使所測得的溫度與實際溫度出現(xiàn)偏高現(xiàn)象,經(jīng)過實驗發(fā)現(xiàn),一般在 5V 左右。 注意事項DS18B20 具有測溫系統(tǒng)簡單,測溫精度高,連接方便,站用口線少等優(yōu)點,但是在實際使用中也應(yīng)注意以下幾方面的問題:(1)DS18B20 從測溫結(jié)束到將溫度值轉(zhuǎn)換成數(shù)字量需要一定的轉(zhuǎn)換時間,這是必須保證的,不然會出現(xiàn)轉(zhuǎn)換錯誤的現(xiàn)象,使溫度輸出總是顯示 85。一般測溫電纜采用屏蔽 4 芯雙絞線,其中一對接地線與信號線,另一對 Vdd 和地線,屏蔽層在源端單點接地。在使用了校驗與糾錯方法后,線路在 50 米時仍然十分穩(wěn)定。總結(jié):由于使用了校驗與糾錯方法,增加了數(shù)據(jù)的傳輸距離與可信度。該方法是首先計算出一位錯誤代碼的樣圖,如表 27 所示。(3)糾錯:如果結(jié)果不為 0,則意味著數(shù)據(jù)錯誤。南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 28在將 AY 的最低移入 CRC 的最高位。這里首先將 CRC 單元賦 0,取一個字節(jié)數(shù)據(jù)做異或并將結(jié)果存入暫存單元 AY,然后字節(jié)數(shù)據(jù)左環(huán)移。改進(jìn)算法;直接算法由于循環(huán)次數(shù)較多而且需要的時間很長。得到的余數(shù)若為 0,則表示數(shù)據(jù)正確,余數(shù)不為0,則表示數(shù)據(jù)有錯,通過余數(shù)便可知道結(jié)果是否正確。直接算法:用于生成多項式直接進(jìn)行校驗的方法是將低字節(jié)位放在前(左) 。(2) CRC 校驗的算法與編碼的算法是相同的,校驗時要將 CRC 作為數(shù)據(jù)一同進(jìn)行計算。實際應(yīng)用中就是通過這種除法邏輯電路對一組數(shù)據(jù)進(jìn)行校驗和糾錯。CRC 發(fā)生器產(chǎn)生的邏輯電路是由移位寄存器或異或門組成,也稱除法邏輯電路。例如 16 進(jìn)制溫度值 018CH 對應(yīng)的二進(jìn)制數(shù)為0000000110001100,溫度值是 ℃;FF5EH 對應(yīng)的二進(jìn)制為1111111101011110,℃。圖 210 9 字節(jié)數(shù)據(jù)存儲結(jié)構(gòu)圖CRC保留保留保留配置寄存器低溫限值 TL高溫限值 TL溫度高字節(jié)溫度低字節(jié)由溫度存儲器的低字節(jié)、高字節(jié),低溫報警器 TL,高字節(jié)報警觸發(fā)器 TH,配置寄存器,和 CRC 字節(jié)組成了 DS18B20 的數(shù)據(jù)存儲器,共九個字節(jié),結(jié)構(gòu)如圖 29。下邊將就用軟件對 DS18B20 中數(shù)據(jù)的校驗與糾錯進(jìn)行詳細(xì)的討論,并給出了用查表法進(jìn)行校驗及糾錯的算法以及實現(xiàn)這一算法的過程。如果在數(shù)據(jù)的傳輸過程中系統(tǒng)具有一定的容錯能力,在糾錯范圍內(nèi),就可以對錯誤的數(shù)據(jù)進(jìn)行糾正,提高抗干擾能力和加大傳輸距離,當(dāng)錯誤超出糾錯范圍時,也可以識別出錯誤的數(shù)據(jù)進(jìn)行從新采集,從而提高了采集數(shù)據(jù)的可信度。減法計數(shù)器斜坡累加器減到 0減法計數(shù)器預(yù) 置低溫度系數(shù)振 蕩 器高溫度系數(shù)振 蕩 器計數(shù)比較器預(yù) 置溫度寄存器減到 0圖 測溫原理內(nèi)部裝置 DS18B20 的測溫流程初始化DS18B20跳過 ROM匹配溫度變換 延時 1S跳過 ROM匹配讀暫存器轉(zhuǎn)換成顯示碼數(shù)碼管顯示圖 DS18B20 測溫流程 DS18B20 數(shù)據(jù)校驗與糾錯(1)在進(jìn)行多點測溫時,敏感元件與數(shù)據(jù)采集系統(tǒng)一般有一定的距離,不南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 27可避免的要遇到電磁干擾。系統(tǒng)對 DS18B20 的各種操作必須按協(xié)議進(jìn)行。圖 中的斜率累加器用于補償和修正測溫過程中的非線性,其輸出用于修正減法計數(shù)器的預(yù)置值,只要計數(shù)門仍未關(guān)閉就重復(fù)上述過程,直至溫度寄存器值達(dá)到被測溫度值,這就是 DS18B20 的測溫原理。計數(shù)門的開啟時間由高溫度系數(shù)振蕩器來決定,每次測量前,首先將55 ℃所對應(yīng)的基數(shù)分別置入減法計數(shù)器 1 和溫度寄存器中,減法計數(shù)器 1 和溫度寄存器被預(yù)置在55 ℃所對應(yīng)的一個基數(shù)值。程序可以先跳過 ROM,啟動所有 DSl8B20 進(jìn)行溫度變換,之后通過匹配ROM,再逐一地讀回每個 DSl8B20 的溫度數(shù)據(jù)。 DS18B20 的測溫原理每一片 DSl8B20 在其 ROM 中都存有其唯一的 48 位序列號,在出廠前已寫入片內(nèi) ROM 中。(2)手工建立傳感器地址與其序列號的關(guān)系表,并將其固化在程序中。其中 6 字節(jié)共 48 位的器件序列號可看成是每個傳感器固有的地址編碼而在多點測溫中作為識別標(biāo)志。表 25 二進(jìn)制數(shù)據(jù)與溫度的對應(yīng)關(guān)系溫度 溫度數(shù)據(jù)輸出(二進(jìn)制) 溫度數(shù)據(jù)輸出(16 進(jìn)制)+125℃ 0000 0111 1101 0000 07D0h+85℃ 0000 0101 0101 0000 0550h+℃ 0000 0001 1001 0001 0191h+℃ 0000 0000 1010 0010 00A2h+℃ 0000 0000 0000 1000 0008h0℃ 0000 0000 0000 0000 000h℃ 1111 1111 1111 1000 FFF8h℃ 1111 1111 0101 1110 FF5Eh℃ 1111 1110 0110 1111 FF6Fh55℃ 1111 1100 1001 0000 FC90h南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 25 DS18B20 序列號編碼DS18B20 內(nèi)部具有出廠前固化的 8 字節(jié)代碼,如表所示。讀取溫度數(shù)據(jù),設(shè)定溫度報警限。這時,信號線上所有相連 DS18B20 都進(jìn)行編碼匹配,只有編碼一致的 DS18B20 才被激活,可以接受下面的內(nèi)存訪問命令。準(zhǔn)備接受用戶的序列號命令。每個讀周期最短的持續(xù)時間為 60us,各個讀周期之間必須有 1us 以上的高電平恢復(fù)期。讀時間片:主機將數(shù)據(jù)線從高電平拉至低電平 1us 以上,再使數(shù)據(jù)線升為高電平,從而產(chǎn)生讀起始信號。在 15us 之內(nèi)將所需寫的位送到數(shù)據(jù)線上,在 15us 到 60us 之間對數(shù)據(jù)線進(jìn)行采樣,如果采樣為高電平,就寫 1,如果是低電平,寫 0 就發(fā)生。初始化:主機發(fā)一位復(fù)位脈沖(對短為 480us 的低電平) ,接著主機釋放總線進(jìn)入接收狀態(tài),DS18B20 在檢測到 I/O 引腳上的上升沿之后,等待 15~60us南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 24然后發(fā)出存在脈沖(60~240us 的低電平) 。讀供電方 式0B4H讀 DS18B20 的供電模式,寄生供電是 DS18B20 發(fā)送“0” ,外接電源供電 DS18B20 發(fā)送“1” 。復(fù)制暫存 器48H 將 RAM 中的第 4 字內(nèi)容復(fù)制到 EEPROM 中。讀暫存器 0BEH讀內(nèi)部 RAM 中的內(nèi)容。告警搜索命令0ECH 執(zhí)行后,只有溫度超過設(shè)定上限或是下限的片子做出響應(yīng)。搜 索 ROM 0F0H用于確定掛在同一總線上 DS18B20 的個數(shù)和識別 64 位 ROM 地址,為操作各個器件做好準(zhǔn)備。系統(tǒng)對 DS18B20 的操作以ROM 命令(5 個)和存儲器命令(6)形式表現(xiàn),各種指令功能如表 23,24 所示。單線信號包括復(fù)位脈沖,響應(yīng)脈沖,寫“0” ,寫“1” ,讀“1” 。主機輸出低電平延時 2us,然后主機轉(zhuǎn)入輸入模式延時 12us,然后讀取總線當(dāng)前電平,然后延時 50us[4]。每個讀時序都由主機發(fā)起,至少拉低總線 1us。(3) 讀時序南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 22主 機 采 樣主 機 采 樣 45451主 機 寫 時 序主 機 寫 0時 序 圖 讀時序總線器件僅在主機發(fā)出讀時序是,才向主機傳輸數(shù)據(jù),所以,在主機發(fā)出讀數(shù)據(jù)命令后,必須馬上產(chǎn)生讀時序,以便從機能夠傳輸數(shù)據(jù)。寫 1 時序,主機輸出低電平,延時 2us,然后釋放總線,延時 60us。(2) 寫時序 采樣 15~4采樣 15~41主 機 寫 1時 序主 機 寫 0時 序圖 寫時序?qū)憰r序包括寫 0 時序和寫 1 時序。主機輸出低電平,保持低電平時間至少 480us,以產(chǎn)生復(fù)位脈沖。(1) 初始化時南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 21響 應(yīng) 脈沖 60~24等 待 15主 機 最 小 8主 機 復(fù) 位 脈 沖最 小 480US圖 初始化時序總線上的所有傳輸過程都是以初始化開始的,主機響應(yīng)應(yīng)答脈沖。復(fù)位要求主 CPU 將數(shù)據(jù)線下拉 500 微秒,然后釋放,DS18B20 收到信號后等待 15~60 微秒左右后發(fā)出 60~240 微秒的存在低脈沖,主 CPU 收到此信號表示復(fù)位成功。一旦某溫度點越限,主機利用報警搜索命令,即可識別正在報警的器件,并讀出其序號,而不必考慮非報警器件。外部電源供電南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 20寄生電源供電6)溫度報警信號DS18B20 完成溫度轉(zhuǎn)化后,就把測的的溫度值與 Th、Tl 做比較,若 TTh或 TTl,則將器件內(nèi)的報警標(biāo)志位,將對主機發(fā)出的告警搜索命令作出響應(yīng)。在 I/O 線呈低電平時,改由電容 C 上的典雅繼續(xù)向器件供電。若采用外部電源給器件供電,外部電源接 VCC 引腳通過 VD2 向器件供電,如圖所示。電源檢測電路用于判定供電方式。操作協(xié)議為:初使化 DS18B20(發(fā)復(fù)位脈沖)→發(fā) ROM 功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。另外,由于 DS18B20 單線通信功能是分時完成的,它有嚴(yán)格的時隙概念,因此讀寫時序很重要。表 DS18B20 溫度轉(zhuǎn)換時間表:R1R0分辨率/位溫度最大轉(zhuǎn)向時間/ms0 0 9 0 1 10 1 0 11 3751 1 12 750表  一部分溫度對應(yīng)值表溫度/℃ 二進(jìn)制表示 十六進(jìn)制表示+125 0000 0111 1101 000007D0H+85 0000 0101 0101 00000550H+ 0000 0001 1001 00000191H+ 0000 0000 1010 000100A2H+ 0000 0000 0000 00100008H0 0000 0000 0000 10000000H 1111 1111 1111 0000FFF8H 1111 1111 0101 1110FF5EH 1111 1110 0110 1111FE6FH55 1111 1100 1001 FC90H南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 1900004) CRC 的產(chǎn)生 在 64 b ROM 的最高有效字節(jié)中存儲有循環(huán)冗余校驗碼(CRC) 。當(dāng)符號位 S=0 時,表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號位 S=1 時,表示測得的溫度值為負(fù)值,要先將補碼變成原碼,再計算十進(jìn)制數(shù)值。轉(zhuǎn)換完成后的溫度值南京工業(yè)大學(xué)本科生畢業(yè)設(shè)計(論文) 18就以 16 位帶符號擴展的二進(jìn)制補碼形式存儲在高速暫存存儲器的第 2 字節(jié)。第 9 字節(jié)讀
點擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1