單片機顯示接口實驗報告范文_第1頁
單片機顯示接口實驗報告范文_第2頁
單片機顯示接口實驗報告范文_第3頁
免費預覽已結束,剩余1頁可下載查看

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、單片機顯示接口實驗報告范文一、實驗目的1. 了解溫度傳感器電路的工作原理2. 了解溫度控制的基本原理3. 掌握一線總線接口的使用二、實驗說明這是一個綜合硬件實驗,分兩大功能:溫度的測量和溫度 的控制。1.DALLAS最新單線數字溫度傳感器 DS18B20簡介Dallas半導體公司的數字化溫度傳感器DS1820是世界上第一片支持“一線總線”接口的溫度傳感器?,F場溫度直接以“一線總線”的數字方式傳輸,大大提高了系統(tǒng)的抗干擾性。 適合于惡劣環(huán)境的現場溫度測量,如:環(huán)境控制、設備或過程控 制、測溫類消費電子產品等。與前一代產品不同,新的產品支持 3V5.5V的電壓范圍,使系統(tǒng)設計更靈活、方便。DS18

2、B20測量溫度范圍為 -55 C+5 C,在-10+85C 范圍內,精度為土 0.5 Co DS18B20可以程序設定9位的分辨 率,及用戶設定的報警溫度存儲在 EEPRO中,掉電后依然保存。DS18B20內部結構DS18B20內部結構主要由四部分組成:64位光刻ROM溫度傳感器、非揮發(fā)的溫度報警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列如下:DQ為數字信號輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時接地)。光刻ROM中的64位序列號是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是:開 始8位(28H)是產品類

3、型標號,接著的 48位是該DS18B20自身 的序列號,最后8位是前面56位的循環(huán)冗余校驗碼(CRC=X8+X5+X4+1光刻ROM勺作用是使每一個 DS18B20都各不相同,這樣就可以實現一根總線上掛接多個DS18B20的目的。DS18B20中的溫度傳感器可完成對溫度的測量,以位轉化為例:用16位符號擴展的二進制補碼讀數形式提供,以0.0625 C/LSB形式表達,其中 S為符號位。這是位轉化后得到的位數據,存儲在18B20的兩個8比特的RAM中,二進制中的前面5位是符號位,如果測得的溫度大于 0,這5位為0,只要將測到的數值乘以 0.0625即可得到實際溫度;如果溫度小于0,這5位為1,測

4、到的數值需要取反加1再乘以0.0625即可得到實際溫度。例如+5C的數字輸出為 07D0H +25.0 625C的數字輸出為0191H, - 25.0625 C的數字輸出為DS18B20溫度傳感器的存儲器DS18B20溫度傳感器的內部存儲器包括一個高速暫存RAM和一個非易失性的可電擦除的 E2RAM后者存放高溫度和低溫度 觸發(fā)器TH TL和結構寄存器。暫存存儲器包含了 8個連續(xù)字節(jié),前兩個字節(jié)是測得的溫 度信息,第一個字節(jié)的內容是溫度的低八位,第二個字節(jié)是溫度的高八位。第三個和第四個字節(jié)是 TH TL的易失性拷貝,第五 個字節(jié)是結構寄存器的易失性拷貝,這三個字節(jié)的內容在每一次上電復位時被刷新。

5、第六、七、八個字節(jié)用于內部計算。第九個 字節(jié)是冗余檢驗字節(jié)。低五位一直都是1,TM是測試模式位,用于設置DS18B20 在工作模式還是在測試模式。在DS18B20出廠時該位被設置為0, 用戶不要去改動。R1和R0用來設置分辨率,如下表所示:(DS18B20出廠時被設置為位)根據DS18B20的通訊協(xié)議,主機控制DS18B20完成溫度轉 換必須經過三個步驟:每一次讀寫之前都要對DS18B20進行復位,復位成功后發(fā)送一條 ROM旨令,最后發(fā)送RAM指令,這樣才 能對DS18B20進行預定的操作。復位要求主 CPU各數據線下拉 500微秒,然后釋放,DS18B20攵到信號后等待1660微秒左右, 后

6、發(fā)出60240微秒的存在低脈沖,主CPU攵到此信號表示復位 成功。2.本實驗在讀取溫度的基礎上, 完成類似空調恒溫控制的 實驗。用加熱電阻代替加熱電機。 溫度值通過LED靜態(tài)顯示電路 以十進制形式顯示出來,制冷采用自然冷卻。三、實驗內容及步驟本實驗需要用到單片機最小應用系統(tǒng)(F1區(qū))、串行靜態(tài)顯示(13區(qū))和溫度傳感器模塊(C3區(qū))1. DS18B20的CONTROL最小應用系統(tǒng) P1.4 , OUT接最小 應用系統(tǒng)P2.0 ,最小系統(tǒng)的P1.0 , P1.1接串行靜態(tài)顯示的DIN, CLK端。2. 用串行數據通信線連接計算機與仿真器,然后將仿真器插到模塊的鎖緊插座中,請注意仿真器的方向:缺口

7、朝上。3. 打開Keil uVision2仿真軟件,首先建立本實驗的項目 文件,接著添加TH44_DS18B20.ASM源程序,進行編譯,直到編 譯無誤。4. 編譯無誤后,全速運行程序。程序正常運行后,按下自 鎖開關控制SIC。LED數顯為 “雙 為十進制溫度測量值,“雙 為十進制溫度設定值,按下自鎖開關“控制”SIC則加熱源開始加熱,溫度也隨著變化,當加熱到設定的控制溫度時如 40度時,停止加熱。5. 也可以把源程序編譯成可執(zhí)行文件,用ISP燒錄器燒錄 到89S52/89S51芯片中。(ISP燒錄器的使用查看附錄二) 四、 源程序;單片機內存分配申明!TEMPER_L EQU 29H用于保存

8、讀出溫度的低 8位TEMPER_H EQU 28H用于保存讀出溫度的高 8位FLAG1 EQU 38H ;是否檢測到DS18B20標志位A_BIT EQU 20H ;數碼管個 位數存放內存位置 B_BIT EQU 21H ;數碼管十位數存放內存位置 LEDBUfEQU 30HTEMPEQU 55HDIN BIT P1.0CLK BIT P1.1ORG 0000HLJMP STARTORG 0100H START: SETBP1.4 MAIN:LCALL GET_TEMPE調用讀溫度子程序;進行溫度顯示,這里我們考慮用網站提供的兩位數碼管來顯示溫度;顯示范圍00到99度,顯示精度為1度;因為位轉

9、化時每一位的精度為 0.0625度,我們不要求顯 示小數所以可以拋棄29H的低4位;將28H中的低4位移入29H中的高4位,這樣獲得一個新 字節(jié),這個字節(jié)就是實際測量獲得的溫度;這個轉化溫度的方法可是我想出來的哦 非常簡潔無需乘于0.0625系數MOV A,29HMOV C,40H;將 28H 中的最低位移入 CRRC AMOV C,41HRRCAMOV C,42HRRC AMOV C,43HRRC AMOV 29H,ALCALL DISPLA YRESULTLCALL DISPLA YLED調用數碼管顯示子程序 LCALL DELA Y1 AJMP MAIN;這是DS18B20復位初始化子程序INIT_1820:SETB P2.0NOPCLR P2.0;主機發(fā)出延時537微秒的復位低脈沖 MOV R1,#3TSR1:MOV R0,#107DJNZ R0,$DJNZ R1,TSR1SETBP2.0;然后拉高數據

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論