1. <rp id="zsypk"></rp>

      2. 單片機(jī)顯示接口實(shí)驗(yàn)報(bào)告

        時(shí)間:2020-10-08 13:10:25 報(bào)告 我要投稿

        單片機(jī)顯示接口實(shí)驗(yàn)報(bào)告范文

          一、實(shí)驗(yàn)?zāi)康?/strong>

        單片機(jī)顯示接口實(shí)驗(yàn)報(bào)告范文

          1.了解溫度傳感器電路的工作原理

          2. 了解溫度控制的基本原理

          3. 掌握一線總線接口的使用

          二、實(shí)驗(yàn)說(shuō)明

          這是一個(gè)綜合硬件實(shí)驗(yàn),分兩大功能:溫度的測(cè)量和溫度的控制。 1.DALLAS最新單線數(shù)字溫度傳感器DS18B20簡(jiǎn)介

          Dallas 半導(dǎo)體公司的數(shù)字化溫度傳感器DS1820是世界上第一片支持 “一線總線”接口的溫度傳感器,F(xiàn)場(chǎng)溫度直接以“一線總線”的數(shù)字方式傳輸,大大提高了系統(tǒng)的抗干擾性。適合于惡劣環(huán)境的現(xiàn)場(chǎng)溫度測(cè)量,如:環(huán)境控制、設(shè)備或過(guò)程控制、測(cè)溫類(lèi)消費(fèi)電子產(chǎn)品等。與前一代產(chǎn)品不同,新的產(chǎn)品支持3V~5.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便。

          DS18B20測(cè)量溫度范圍為 -55°C~+125°C,在-10~+85°C范圍內(nèi),精度為±0.5°C。DS18B20可以程序設(shè)定9~12位的分辨率,及用戶(hù)設(shè)定的報(bào)警溫度存儲(chǔ)在EEPROM中,掉電后依然保存。

          DS18B20內(nèi)部結(jié)構(gòu)

          DS18B20內(nèi)部結(jié)構(gòu)主要由四部分組成:64位光刻ROM、溫度傳感器、非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL、配置寄存器。DS18B20的管腳排列如下:

          DQ為數(shù)字信號(hào)輸入/輸出端;GND為電源地;VDD為外接供電電源輸入端(在寄生電源接線方式時(shí)接地)。

          光刻ROM中的64位序列號(hào)是出廠前被光刻好的,它可以看作是該DS18B20的地址序列碼。64位光刻ROM的排列是:開(kāi)始8位(28H)是產(chǎn)品類(lèi)型標(biāo)號(hào),接著的48位是該DS18B20自身的序列號(hào),最后8位是前面56位的循環(huán)冗余校驗(yàn)碼(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一個(gè)DS18B20都各不相同,這樣就可以實(shí)現(xiàn)一根總線上掛接多個(gè)DS18B20的目的。

          DS18B20中的溫度傳感器可完成對(duì)溫度的測(cè)量,以12位轉(zhuǎn)化為例:用16位符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼讀數(shù)形式提供,以0.0625℃/LSB形式表達(dá),其中S為符號(hào)位。

          這是12位轉(zhuǎn)化后得到的12位數(shù)據(jù),存儲(chǔ)在18B20的兩個(gè)8比特的RAM中,二進(jìn)制中的前面5位是符號(hào)位,如果測(cè)得的溫度大于0,這5位為0,只要將測(cè)到的數(shù)值乘以0.0625

          即可得到實(shí)際溫度;如果溫度小于0,這5位為1,測(cè)到的數(shù)值需要取反加1再乘以0.0625即可得到實(shí)際溫度。

          例如+125℃的數(shù)字輸出為07D0H,+25.0625℃的數(shù)字輸出為0191H,-25.0625℃的數(shù)字輸出為

          DS18B20溫度傳感器的存儲(chǔ)器

          DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器包括一個(gè)高速暫存RAM和一個(gè)非易失性的可電擦除的E2RAM,后者存放高溫度和低溫度觸發(fā)器TH、TL和結(jié)構(gòu)寄存器。

          暫存存儲(chǔ)器包含了8個(gè)連續(xù)字節(jié),前兩個(gè)字節(jié)是測(cè)得的溫度信息,第一個(gè)字節(jié)的內(nèi)容是溫度的低八位,第二個(gè)字節(jié)是溫度的高八位。第三個(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é)。

          低五位一直都是1 ,TM是測(cè)試模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式。在DS18B20出廠時(shí)該位被設(shè)置為0,用戶(hù)不要去改動(dòng)。R1和R0用來(lái)設(shè)置分辨率,如下表所示:(DS18B20出廠時(shí)被設(shè)置為12位)

          根據(jù)DS18B20的通訊協(xié)議,主機(jī)控制DS18B20完成溫度轉(zhuǎn)換必須經(jīng)過(guò)三個(gè)步驟:每一次讀寫(xiě)之前都要對(duì)DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作。復(fù)位要求主CPU將數(shù)據(jù)線下拉500微秒,然后釋放,DS18B20收到信號(hào)后等待16~60微秒左右,后發(fā)出60~240微秒的存在低脈沖,主CPU收到此信號(hào)表示復(fù)位成功。

          2.本實(shí)驗(yàn)在讀取溫度的基礎(chǔ)上,完成類(lèi)似空調(diào)恒溫控制的實(shí)驗(yàn)。用加熱電阻代替加熱電機(jī)。溫度值通過(guò)LED靜態(tài)顯示電路以十進(jìn)制形式顯示出來(lái),制冷采用自然冷卻。

          三、實(shí)驗(yàn)內(nèi)容及步驟

          本實(shí)驗(yàn)需要用到單片機(jī)最小應(yīng)用系統(tǒng)(F1區(qū))、串行靜態(tài)顯示(I3區(qū))和溫度傳感器模塊(C3區(qū))。

          1.DS18B20的'CONTROL接最小應(yīng)用系統(tǒng)P1.4,OUT接最小應(yīng)用系統(tǒng)P2.0,最小系統(tǒng)的P1.0,P1.1接串行靜態(tài)顯示的DIN,CLK端。

          2.用串行數(shù)據(jù)通信線連接計(jì)算機(jī)與仿真器,然后將仿真器插到模塊的鎖緊插座中,請(qǐng)注意仿真器的方向:缺口朝上。

          3.打開(kāi)Keil uVision2仿真軟件,首先建立本實(shí)驗(yàn)的項(xiàng)目文件,接著添加TH44_ DS18B20.ASM源程序,進(jìn)行編譯,直到編譯無(wú)誤。

          4.編譯無(wú)誤后,全速運(yùn)行程序。程序正常運(yùn)行后,按下自鎖開(kāi)關(guān)‘控制’SIC。LED數(shù)顯為 “XX”為十進(jìn)制溫度測(cè)量值, “XX”為十進(jìn)制溫度設(shè)定值,按下自鎖開(kāi)關(guān)“控制”SIC則加熱源開(kāi)始加熱,溫度也隨著變化,當(dāng)加熱到設(shè)定的控制溫度時(shí)如40度時(shí),停止加熱。

          5.也可以把源程序編譯成可執(zhí)行文件,用ISP燒錄器燒錄到89S52/89S51芯片中。(ISP燒錄器的使用查看附錄二) 四、源程序

          ;單片機(jī)內(nèi)存分配申明!

          TEMPER_L EQU 29H  ;用于保存讀出溫度的低8位TEMPER_H EQU 28H  ;用于保存讀出溫度的高8位FLAG1 EQU 38H  ;是否檢測(cè)到DS18B20標(biāo)志位A_BIT EQU 20H  ;數(shù)碼管個(gè)位數(shù)存放內(nèi)存位置B_BIT EQU 21H  ;數(shù)碼管十位數(shù)存放內(nèi)存位置LEDBUF EQU  30HTEMPEQU  55HDIN  BIT  P1.0CLK BIT  P1.1

          ORG 0000HLJMP STARTORG 0100H START: SETBP1.4 MAIN:

          LCALL GET_TEMPER;調(diào)用讀溫度子程序

          ;進(jìn)行溫度顯示,這里我們考慮用網(wǎng)站提供的兩位數(shù)碼管來(lái)顯示溫度 ;顯示范圍00到99度,顯示精度為1度

          ;因?yàn)?2位轉(zhuǎn)化時(shí)每一位的精度為0.0625度,我們不要求顯示小數(shù)所以可以拋棄29H的低4位

          ;將28H中的低4位移入29H中的高4位,這樣獲得一個(gè)新字節(jié),這個(gè)字節(jié)就是實(shí)際測(cè)量獲得的溫度

          ;這個(gè)轉(zhuǎn)化溫度的方法可是我想出來(lái)的哦~~非常簡(jiǎn)潔無(wú)需乘于0.0625系數(shù)

          MOV A,29H

          MOV C,40H;將28H中的最低位移入CRRC AMOV C,41HRRC AMOV C,42HRRC AMOV C,43HRRC AMOV 29H,A

          LCALL DISPLAYRESULT

          LCALL DISPLAYLED;調(diào)用數(shù)碼管顯示子程序LCALL DELAY1 AJMP MAIN

          ; 這是DS18B20復(fù)位初始化子程序 INIT_1820:SETB P2.0NOPCLR P2.0

          ;主機(jī)發(fā)出延時(shí)537微秒的復(fù)位低脈沖MOV R1,#3 TSR1:MOV R0,#107DJNZ R0,$DJNZ R1,TSR1

          SETB P2.0;然后拉高數(shù)據(jù)線NOPNOPNOPMOV R0,#25H TSR2:

          JNB P2.0,TSR3;等待DS18B20回應(yīng)DJNZ R0,TSR2

          LJMP TSR4 ; 延時(shí) TSR3:

          SETB FLAG1; 置標(biāo)志位,表示DS1820存在LJMP TSR5 TSR4:

          CLR FLAG1 ; 清標(biāo)志位,表示DS1820不存在

        【單片機(jī)顯示接口實(shí)驗(yàn)報(bào)告范文】相關(guān)文章:

        實(shí)驗(yàn)報(bào)告范文01-20

        實(shí)驗(yàn)報(bào)告范文(15篇)01-20

        實(shí)驗(yàn)報(bào)告范文15篇01-20

        實(shí)驗(yàn)報(bào)告范文(集錦15篇)01-20

        倉(cāng)儲(chǔ)實(shí)踐實(shí)驗(yàn)報(bào)告01-13

        《血染的實(shí)驗(yàn)報(bào)告》讀后感01-20

        民間文學(xué)課題實(shí)驗(yàn)報(bào)告01-20

        美國(guó)研究顯示幸福主要由精神決定10-04

        《血染的實(shí)驗(yàn)報(bào)告》讀后感3篇01-20

        任務(wù)管理器用戶(hù)名不能顯示解決辦法02-13

        99热这里只有精品国产7_欧美色欲色综合色欲久久_中文字幕无码精品亚洲资源网久久_91热久久免费频精品无码
          1. <rp id="zsypk"></rp>