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

正文內(nèi)容

多功能數(shù)字溫度計(jì)-文庫吧

2025-01-02 23:38 本頁面


【正文】 、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開始啟動轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲在高速暫存存儲器的第2字節(jié)。單片機(jī)可以通過單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時低位在先,高位在后,℃/LSB式表示。當(dāng)符號位S=0時,表示測得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號位S=1時,表示測得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。表2是一部分溫度值對應(yīng)的二進(jìn)制溫度數(shù)據(jù)。DS18B20完成溫度轉(zhuǎn)換后,就把測得的溫度值與RAM中的TH、TL字節(jié)內(nèi)容作比較。若T>TH或T<TL,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對主機(jī)發(fā)出的報(bào)警搜索命令做出響應(yīng)。因此,可用多只DS18B20同時測量溫度并進(jìn)行報(bào)警搜索。在64位ROM的最高有效字節(jié)中存儲有循環(huán)冗余檢驗(yàn)碼(CRC)。主機(jī)ROM的前56位來計(jì)算CRC值,并和存入DS18B20的CRC值作比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。另外,由于DS18B20單線通信功能是分時完成的,它有嚴(yán)格的時隙概念,因此讀寫時序很重要。系統(tǒng)對DS18B20的各種操作按協(xié)議進(jìn)行。操作協(xié)議為:初使化DS18B20(發(fā)復(fù)位脈沖)→發(fā)ROM功能命令→發(fā)存儲器操作命令→處理數(shù)據(jù)。分別說明如下:初始化 單總線的所有處理均從初始化開始。初始化過程是主機(jī)通過向作為從機(jī)的DS18B20芯片發(fā)一個有時間寬度要求的初始化脈沖實(shí)現(xiàn)的。初始化后,才可進(jìn)行讀寫操作。2 、ROM操作命令 總線主機(jī)檢測到DS18B20的存在 便可以發(fā)出ROM操作命令之一 這些命令表3。表3 ROM操作指令指令代碼Read ROM(讀ROM)[33H]Match ROM(匹配ROM)[55H]Skip ROM(跳過ROM)[CCH]Search ROM(搜索ROM)[F0H]Alarm search(告警搜索)[ECH]存儲器操作命令如表4。 表4 存儲器操作指令指令代碼Write Scratchpad(寫暫存存儲器)[4EH]Read Scratchpad(讀暫存存儲器)[BEH]Copy Scratchpad(復(fù)制暫存存儲器)[48H]Convert Temperature(溫度變換)[44H]Recall EPROM(重新調(diào)出)[B8H]Read Power supply(讀電源)[B4H]六、硬件系統(tǒng)框圖溫度計(jì)電路設(shè)計(jì)總體硬件設(shè)計(jì)框圖如圖5所示。圖5 硬件系統(tǒng)框圖七、系統(tǒng)軟件設(shè)計(jì)框圖本次課程設(shè)計(jì)采用的是protel軟件仿真。軟件部分由主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計(jì)算溫度子程序,顯示數(shù)據(jù)刷新子程序等。主程序主程序的主要功能是負(fù)責(zé)溫度的實(shí)時顯示、讀出并處理DS18B20的測量的當(dāng)前溫度值,溫度測量每1s進(jìn)行一次。這樣可以在一秒之內(nèi)測量一次被測溫度,其程序流程見圖6所示。返回 開始 初始化 調(diào)顯示子程序 得出溫度總子程序圖6 主程序流程讀出溫度子程序讀出溫度子程序的主要功能是讀出RAM中的9字節(jié),在讀出時需進(jìn)行CRC校驗(yàn),校驗(yàn)有錯時不進(jìn)行溫度數(shù)據(jù)的改寫。其程序流程圖如圖7所示。發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)讀取溫度命令讀取操作,CRC校驗(yàn)9字節(jié)完?CRC校驗(yàn)正?確?移入溫度暫存器結(jié)束 NNYY圖7 讀出溫度子程序流程二進(jìn)制轉(zhuǎn)換BCD碼命令子程序 二進(jìn)制轉(zhuǎn)換BCD碼命令子程序主要是發(fā)溫度轉(zhuǎn)換開始命令,當(dāng)采用12位分辨率時轉(zhuǎn)換時間約為750ms,在本程序設(shè)計(jì)中采用1s顯示程序延時法等待轉(zhuǎn)換的完成。二進(jìn)制轉(zhuǎn)換BCD碼命令子程序流程圖,如圖8所示。發(fā)DS18B20復(fù)位命令發(fā)跳過ROM命令發(fā)溫度轉(zhuǎn)換開始命令結(jié)束圖8 二進(jìn)制轉(zhuǎn)換BCD碼流程圖計(jì)算溫度子程序?qū)AM中讀取值進(jìn)行BCD碼的轉(zhuǎn)換運(yùn)算,并進(jìn)行溫度值正負(fù)的判定,其程序流程圖如圖9所示。開始溫度零下?N Y置“+”標(biāo)志溫度值取補(bǔ)碼置“”標(biāo)志計(jì)算小數(shù)位溫度BCD值 計(jì)算整數(shù)位溫度BCD值 結(jié)束圖9 測量溫度流程圖八、心得體會 本次的課程設(shè)計(jì)使我們進(jìn)一步鞏固了書本上的知識,做到了學(xué)以致用。這是我們第二次自己動手設(shè)計(jì)的電路,通過系統(tǒng)仿真軟件protel,使我們進(jìn)一步了解了單片機(jī)的設(shè)計(jì)制作過程,其中最為困難的是軟件部分,即編程部分。由于protel并不是很熟練,在使用的過程中有很多原件的名稱不知道,從而花費(fèi)了大量的時間在網(wǎng)上查找,今后應(yīng)該在這方面多多努力??偨Y(jié)經(jīng)驗(yàn)的時候我們得出這樣的結(jié)論,學(xué)習(xí)應(yīng)該學(xué)以致用,有目的的去學(xué)習(xí),如果學(xué)了不用等于沒學(xué)。其次,要學(xué)以致用,理論聯(lián)系實(shí)際,這樣才會取得事半功倍的效果。九、各部分程序的詳細(xì)設(shè)計(jì)步驟。*************************************************。DS18B20的讀寫程序, *。顯示數(shù)據(jù)通過P1口傳輸, *。, *。, *。顯示溫度55到+125度, *。顯示采用4位LED共陰顯示測溫值 *。*************************************************TEMPER_L EQU 40H 。用于保存讀出溫度的低8位TEMPER_H EQU 41H 。用于保存讀出溫度的高8位FLAG1 EQU 38H 。是否檢測到DS18B20標(biāo)志位TEMPL EQU 30H 。用于保存讀出正確溫度值的低8位TEMPH EQU 31H 。用于保存讀出正確溫度值的高8位TEMPHC EQU 32H 。溫度轉(zhuǎn)換寄存器低8位TEMPLC EQU 33H 。溫度轉(zhuǎn)換寄存器高8位BUF1 EQU 34H 。顯示緩沖寄存器小數(shù)位BUF2 EQU 35H 。顯示緩沖寄存器個數(shù)位BUF3 EQU 36H 。顯示緩沖寄存器十?dāng)?shù)位BUF4 EQU 37H 。顯示緩沖寄存器百數(shù)位TEMPDIN BIT 。數(shù)據(jù)腳定義DIN BIT 。小數(shù)點(diǎn)控制。********************************************** ORG 0000H 。主程序入口地址 AJMP MAIN 。轉(zhuǎn)主程序 ORG 0003H 。外中斷0中斷入口 DB 00H,00H,00H,00H,00H,00H,00H。 RETI 。跳至INTEX0執(zhí)行中斷服務(wù)程序 ORG 000BH 。定時器T0中斷入口地址 DB 00H,00H,00H,00H,00H,00H,00H 。 RETI 。跳至定時器T0執(zhí)行中斷服務(wù)程序 ORG 0013H 。外中斷1中斷入口 DB 00H,00H,00H,00H,00H,00H,00H 。 RETI 。跳至INTEX1執(zhí)行中斷服務(wù)程序 ORG 001BH 。定時器T1中斷入口地址 DB 00H,00H,00H,00H,00H,00H,00H 。 RETI 。中斷返回(不開中斷) ORG 0023H 。串行口中斷入口地址 DB 00H,00H,00H,00H,00H,00H,00H 。 RETI 。中斷返回(不開中斷)。**********************************************。兩位數(shù)碼管來顯示溫度,顯示范圍00到99度,顯示精度為1度。,我們不要求顯示小數(shù)所以可以拋棄29H的低4位。將28H中的低4位移入29H中的高4位,這樣獲得一個新字節(jié),這
點(diǎn)擊復(fù)制文檔內(nèi)容
公司管理相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1