




免費(fèi)預(yù)覽已結(jié)束,剩余21頁(yè)可下載查看
下載本文檔
版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
26 四川師范大學(xué)成都學(xué)院電子工程系課程設(shè)計(jì)報(bào)告 前言隨著現(xiàn)代信息技術(shù)的飛速發(fā)展,溫度測(cè)量控制系統(tǒng)在工業(yè)、農(nóng)業(yè)及人們的日常生活中扮演著一個(gè)越來(lái)越重要的角色,它對(duì)人們的生活具有很大的影響,所以溫度采集控制系統(tǒng)的設(shè)計(jì)與研究有十分重要的意義。本次設(shè)計(jì)的目的在于學(xué)習(xí)基于51單片機(jī)的多路溫度采集控制系統(tǒng)設(shè)計(jì)的基本流程。本設(shè)計(jì)采用單片機(jī)作為數(shù)據(jù)處理與控制單元,為了進(jìn)行數(shù)據(jù)處理,單片機(jī)控制數(shù)字溫度傳感器,把溫度信號(hào)通過(guò)單總線從數(shù)字溫度傳感器傳遞到單片機(jī)上。單片機(jī)數(shù)據(jù)處理之后,發(fā)出控制信息改變報(bào)警和控制執(zhí)行模塊的狀態(tài),同時(shí)將當(dāng)前溫度信息發(fā)送到LED進(jìn)行顯示。本系統(tǒng)可以實(shí)現(xiàn)多路溫度信號(hào)采集與顯示,可以使用按鍵來(lái)設(shè)置溫度限定值,通過(guò)進(jìn)行溫度數(shù)據(jù)的運(yùn)算處理,發(fā)出控制信號(hào)達(dá)到控制蜂鳴器和繼電器的目的。我所采用的控制芯片為AT89c51,此芯片功能較為強(qiáng)大,能夠滿足設(shè)計(jì)要求。通過(guò)對(duì)電路的設(shè)計(jì),對(duì)芯片的外圍擴(kuò)展,來(lái)達(dá)到對(duì)某一車(chē)間溫度的控制和調(diào)節(jié)功能。1.總體設(shè)計(jì)方案 1.1 溫度控制系統(tǒng)設(shè)計(jì)方案主控制器單片機(jī)復(fù)位報(bào)警點(diǎn)按鍵調(diào)六位數(shù)碼管顯示溫度傳感器 圖1.溫度控制系統(tǒng)的系統(tǒng)款圖 溫度控制系統(tǒng)主要是由四部分組成:其中包括CPU單片機(jī)處理器;外圍輸入設(shè)備按鍵,其功能是設(shè)置溫度報(bào)警的上下限;數(shù)碼管顯示部分,顯示當(dāng)前等我溫度和溫度的上下限;溫度傳感器,也是最重要的部分其功能是采集周?chē)臏囟?;蜂蜜器用于?bào)警使用,但溫度超過(guò)上線溫度和下線溫度時(shí)則發(fā)出報(bào)警聲,直到溫度恢復(fù)正常。 1.2溫度控制系統(tǒng)的方案和原理 該系統(tǒng)的設(shè)計(jì)方案是通過(guò)溫度傳感器DS18B20將周?chē)沫h(huán)境溫度進(jìn)行采集,等待單片機(jī)將其采集,當(dāng)采集的信號(hào)一到就釋放信號(hào)。而單片機(jī)通過(guò)單線總線的方式對(duì)DS18B20采集的信號(hào)進(jìn)行采集并且將其轉(zhuǎn)化成數(shù)字信號(hào)通過(guò)數(shù)碼管進(jìn)行顯示。而獨(dú)立按鍵是用來(lái)設(shè)置溫度的上下限的。其原理是:?jiǎn)纹瑱C(jī)對(duì)采集的溫度進(jìn)行處理并且進(jìn)行采集,將采集到的溫度使用數(shù)碼管進(jìn)行顯示,并且將采集的溫度和存儲(chǔ)的上下限溫度進(jìn)行比較,當(dāng)溫度超過(guò)上下限制的時(shí)候驅(qū)動(dòng)蜂鳴器鳴叫,直到溫度達(dá)到正常溫度是蜂鳴器停止工作;而使用兩個(gè)獨(dú)立按鍵則是用來(lái)設(shè)計(jì)溫度上下限。2.單元模塊設(shè)計(jì) 2.1主控制器 單片機(jī)AT89C51具有低電壓供電和體積小等特點(diǎn),四個(gè)端口只需要兩個(gè)口就能滿足電路系統(tǒng)的設(shè)計(jì)需要,很適合便攜手持式產(chǎn)品的設(shè)計(jì)使用系統(tǒng)可用二節(jié)電池供電。AT89C51單片機(jī)是ATMEL公司生產(chǎn)的高性能8位單片機(jī),主要功能特性如下: 兼容MCS-51指令系統(tǒng); 32個(gè)雙向I/O口,兩個(gè)16位可編程定時(shí)/計(jì)數(shù)器; 1個(gè)串行中斷,兩個(gè)外部中斷源; 可直接驅(qū)動(dòng)LED; 低功耗空閑和掉電模式; 4 kB可反復(fù)擦寫(xiě)(1 000次)FLASI ROM; 全靜態(tài)操作O24 MHz; 1288 b內(nèi)部RAM。該款芯片的超低功耗和良好的性能價(jià)格比使其非常適合嵌入式產(chǎn)品應(yīng)用。 2.2溫度傳感器DS18B20 DS18B20溫度傳感器是美國(guó)DALLAS半導(dǎo)體公司最新推出的一種改進(jìn)型智能溫度傳感器,與傳統(tǒng)的熱敏電阻等測(cè)溫元件相比,它能直接讀出被測(cè)溫度,并且可根據(jù)實(shí)際要求通過(guò)簡(jiǎn)單的編程實(shí)現(xiàn)位的數(shù)字值讀數(shù)方式。 2.2.1 DS18B20特性介紹 DS18B20是DALLAS公司的最新單線數(shù)字溫度傳感器,它的體積更小、適用電壓更寬、更經(jīng)濟(jì),DS18B20是世界上第一片支持“一線總線”接口的溫度傳感器,一線總線獨(dú)特而且經(jīng)濟(jì)的特點(diǎn),使用戶(hù)可輕松地組建傳感器網(wǎng)絡(luò),為測(cè)量系統(tǒng)的構(gòu)建引入全新概念,它的測(cè)量溫度范圍為55125,在1085范圍內(nèi),精度為0.5,現(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)品支持35.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便,而且新一代產(chǎn)品更便宜,體積更小,DS18B20可以程序設(shè)定912位的分辨率,精度為0.5??梢赃x擇更小的封裝方式,更寬的電壓適用范圍,分辨率設(shè)定及用戶(hù)設(shè)定的報(bào)警溫度存儲(chǔ)在E2PROM中,掉電后依然保存,DS18B20的性能是新一代產(chǎn)品中最好的,性能價(jià)格比也非常出色,繼“一線總線”的早期產(chǎn)品后,DS18B20開(kāi)辟了溫度傳感器技術(shù)的新概念,DS18B20和DS18B22使電壓、特性及封裝有更多的選擇,讓我們可以構(gòu)建適合自己的經(jīng)濟(jì)的測(cè)溫系統(tǒng)。 2.2.2 DS18B20的內(nèi)部結(jié)構(gòu)DS18B20采用3腳PR35封裝或腳SOIC封裝,其內(nèi)部結(jié)構(gòu)框圖如圖2所示,主要由4部分組成:64位光刻ROM,溫度傳感器,非揮發(fā)的溫度報(bào)警觸發(fā)器TH和TL,配制寄存器。DS18B20的管腳排列如圖所示。圖3. DS18B20引腳圖2.2.3 DS18B20溫度傳感器的存儲(chǔ)器 64位ROM的結(jié)構(gòu)開(kāi)始8位是產(chǎn)品類(lèi)型的編號(hào),接著是每個(gè)器件的惟一的序號(hào),共有48位,最后8位是前面56位的CRC檢驗(yàn)碼,這也是多個(gè)DS18B20可以采用一線進(jìn)行通信的原因。溫度報(bào)警觸發(fā)器和,可通過(guò)軟件寫(xiě)入戶(hù)報(bào)警上下限。 DS18B20溫度傳感器的內(nèi)部存儲(chǔ)器還包括一個(gè)高速暫存和一個(gè)非易失性的可電擦除的EERAM。高速暫存RAM的結(jié)構(gòu)為8字節(jié)的存儲(chǔ)器,結(jié)構(gòu)如圖3所示。頭2個(gè)字節(jié)包含測(cè)得的溫度信息,第8和第4字節(jié)和的拷貝,是易失的,每次上電復(fù)位時(shí)被刷新。第5個(gè)字節(jié),為配置寄存器,它的內(nèi)容用于確定溫度值的數(shù)字轉(zhuǎn)換分辨率。DS18B20工作時(shí)寄存器中的分辨率轉(zhuǎn)換為相應(yīng)精度的溫度數(shù)值。該字節(jié)各位的定義如圖3所示。低5位一直為1,是工作模式位,用于設(shè)置DS18B20在工作模式還是在測(cè)試模式,DS18B20出廠時(shí)該位被設(shè)置為0,用戶(hù)要去改動(dòng),R1和0決定溫度轉(zhuǎn)換的精度位數(shù),來(lái)設(shè)置分辨率。 由表1可見(jiàn),DS18B20溫度轉(zhuǎn)換的時(shí)間比較長(zhǎng),而且分辨率越高,所需要的溫度數(shù)據(jù)轉(zhuǎn)換時(shí)間越長(zhǎng)。因此,在實(shí)際應(yīng)用中要將分辨率和轉(zhuǎn)換時(shí)間權(quán)衡考慮。高速暫存的第6、7、8字節(jié)保留未用,表現(xiàn)為全邏輯1。第9字節(jié)讀出前面所有8字節(jié)的CRC碼,可用來(lái)檢驗(yàn)數(shù)據(jù),從而保證通信數(shù)據(jù)的正確性。當(dāng)DS18B20接收到溫度轉(zhuǎn)換命令后,開(kāi)始啟動(dòng)轉(zhuǎn)換。轉(zhuǎn)換完成后的溫度值就以16位帶符號(hào)擴(kuò)展的二進(jìn)制補(bǔ)碼形式存儲(chǔ)在高速暫存存儲(chǔ)器的第1、2字節(jié)。單片機(jī)可以通過(guò)單線接口讀出該數(shù)據(jù),讀數(shù)據(jù)時(shí)低位在先,高位在后,數(shù)據(jù)格式以0.0625LSB形式表示。當(dāng)符號(hào)位時(shí),表示測(cè)得的溫度值為正值,可以直接將二進(jìn)制位轉(zhuǎn)換為十進(jìn)制;當(dāng)符號(hào)位時(shí),表示測(cè)得的溫度值為負(fù)值,要先將補(bǔ)碼變成原碼,再計(jì)算十進(jìn)制數(shù)值。表2是一部分溫度值對(duì)應(yīng)的二進(jìn)制溫度數(shù)據(jù)。DS18B20完成溫度轉(zhuǎn)換后,就把測(cè)得的溫度值與RAM中的TH、T字節(jié)內(nèi)容作比較。若TH或TTL,則將該器件內(nèi)的報(bào)警標(biāo)志位置位,并對(duì)主機(jī)發(fā)出的報(bào)警搜索命令作出響應(yīng)。因此,可用多只DS18B20同時(shí)測(cè)量溫度并進(jìn)行報(bào)警搜索。在64位ROM的最高有效字節(jié)中存儲(chǔ)有循環(huán)冗余檢驗(yàn)碼(CRC)。主機(jī)ROM的前56位來(lái)計(jì)算CRC值,并和存入DS18B20的CRC值作比較,以判斷主機(jī)收到的ROM數(shù)據(jù)是否正確。2.2.4 DS18B20控制方法 在硬件上,DS18B20與單片機(jī)的連接有兩種方法,一種是Vcc接外部電源,GND接地,I/O與單片機(jī)的I/O線相連;另一種是用寄生電源供電,此時(shí)UDD、GND接地,I/O接單片機(jī)I/O。無(wú)論是內(nèi)部寄生電源還是外部供電,I/O口線要接5K左右的上拉電阻。 DS18B20有六條控制命令,如表所示: 表2 指令表指 令 約定代碼 操 作 說(shuō) 明 溫度轉(zhuǎn)換 44H 啟動(dòng)DS18B20進(jìn)行溫度轉(zhuǎn)換 讀暫存器 BEH 讀暫存器9個(gè)字節(jié)內(nèi)容 寫(xiě)暫存器 4EH 將數(shù)據(jù)寫(xiě)入暫存器的TH、TL字節(jié) 復(fù)制暫存器 48H 把暫存器的TH、TL字節(jié)寫(xiě)到E2RAM中 重新調(diào)E2RAM B8H 把E2RAM中的TH、TL字節(jié)寫(xiě)到暫存器TH、TL字節(jié) 讀電源供電方式 B4H 啟動(dòng)DS18B20發(fā)送電源供電方式的信號(hào)給主CPU CPU對(duì)DS18B20的訪問(wèn)流程是:先對(duì)DS18B20初始化,再進(jìn)行ROM操作命令,最后才能對(duì)存儲(chǔ)器操作,數(shù)據(jù)操作。DS18B20每一步操作都要遵循嚴(yán)格的工作時(shí)序和通信協(xié)議。如主機(jī)控制DS18B20完成溫度轉(zhuǎn)換這一過(guò)程,根據(jù)DS18B20的通訊協(xié)議,須經(jīng)三個(gè)步驟:每一次讀寫(xiě)之前都要對(duì)DS18B20進(jìn)行復(fù)位,復(fù)位成功后發(fā)送一條ROM指令,最后發(fā)送RAM指令,這樣才能對(duì)DS18B20進(jìn)行預(yù)定的操作。 2.2.5 DS18B20的測(cè)溫原理DS18B20的測(cè)溫原理是這這樣的,器件中低溫度系數(shù)晶振的振蕩頻率受溫度的影響很小,用于產(chǎn)生固定頻率的脈沖信號(hào)送給減法計(jì)數(shù)器;高溫度系數(shù)晶振隨溫度變化其振蕩頻率明顯改變,所產(chǎn)生的信號(hào)作為減法計(jì)數(shù)器的脈沖輸入。器件中還有一個(gè)計(jì)數(shù)門(mén),當(dāng)計(jì)數(shù)門(mén)打開(kāi)時(shí),DS18B20就對(duì)低溫度系數(shù)振蕩器產(chǎn)生的時(shí)鐘脈沖進(jìn)行計(jì)數(shù)進(jìn)而完成溫度測(cè)量。計(jì)數(shù)門(mén)的開(kāi)啟時(shí)間由高溫度系數(shù)振蕩器來(lái)決定,每次測(cè)量前,首先將55所對(duì)應(yīng)的一個(gè)基數(shù)分別置入減法計(jì)數(shù)器、溫度寄存器中,計(jì)數(shù)器和溫度寄存器被預(yù)置在55所對(duì)應(yīng)的一個(gè)基數(shù)值。減法計(jì)數(shù)器對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行減法計(jì)數(shù),當(dāng)減法計(jì)數(shù)器的預(yù)置值減到時(shí),溫度寄存器的值將加,減法計(jì)數(shù)器的預(yù)置將重新被裝入,減法計(jì)數(shù)器重新開(kāi)始對(duì)低溫度系數(shù)晶振產(chǎn)生的脈沖信號(hào)進(jìn)行計(jì)數(shù),如此循環(huán)直到減法計(jì)數(shù)器計(jì)數(shù)到時(shí),停止溫度寄存器的累加,此時(shí)溫度寄存器中的數(shù)值就是所測(cè)溫度值。其輸出用于修正減法計(jì)數(shù)器的預(yù)置值,只要計(jì)數(shù)器門(mén)仍未關(guān)閉就重復(fù)上述過(guò)程,直到溫度寄存器值大致被測(cè)溫度值。 2.2.6 DS18B20溫度傳感器與單片機(jī)的接口電路DS18B20可以采用兩種方式供電,一種是采用電源供電方式,此時(shí)DS18B20的1腳接地,2腳作為信號(hào)線,3腳接電源。另一種是寄生電源供電方式,如圖4 所示單片機(jī)端口接單線總線,為保證在有效的DS18B20時(shí)鐘周期內(nèi)提供足夠的電流,可用一個(gè)MOSFET管來(lái)完成對(duì)總線的上拉。當(dāng)DS18B20處于寫(xiě)存儲(chǔ)器操作和溫度A/D轉(zhuǎn)換操作時(shí),總線上必須有強(qiáng)的上拉,上拉開(kāi)啟時(shí)間最大為10us。采用寄生電源供電方式時(shí)VDD端接地。由于單線制只有一根線,因此發(fā)送接口必須是三態(tài)的。 3.溫度控制系統(tǒng)程序設(shè)計(jì)本軟件系統(tǒng)有1個(gè)主程序,6個(gè)子程序組成。6個(gè)子程序?yàn)槎〞r(shí)/計(jì)數(shù)器0中斷服務(wù)程序、溫度采集及模數(shù)轉(zhuǎn)換子程序ADCON、溫度計(jì)算子程序CALCU、驅(qū)動(dòng)控制子程序DRVCON、十進(jìn)制轉(zhuǎn)換子程序METRICCON及數(shù)碼管顯示子程序DISP。 3.1主程序主程序進(jìn)行系統(tǒng)初始化操作,主要是進(jìn)行定時(shí)/計(jì)數(shù)器的初始化。 3.2 定時(shí)/計(jì)數(shù)器0中斷服務(wù)程序應(yīng)用定時(shí)計(jì)數(shù)器0中斷的目的是進(jìn)行定時(shí)采樣,消除數(shù)碼管溫度顯示的閃爍現(xiàn)象,用戶(hù)可以根據(jù)實(shí)際環(huán)境溫度變化率進(jìn)行采樣時(shí)間調(diào)整。每當(dāng)定時(shí)時(shí)間到,調(diào)用溫度采集機(jī)模數(shù)轉(zhuǎn)換子程序ADCON,得到一個(gè)溫度樣本,并將其轉(zhuǎn)換為數(shù)字量,傳送給89C51單片機(jī),然后在調(diào)用溫度計(jì)算子程序CALCU,驅(qū)動(dòng)控制子程序DRVCON,十進(jìn)制轉(zhuǎn)換子程序MERTRICCON,溫度數(shù)碼顯示子程序DISP。 3.3 溫度采集及模數(shù)轉(zhuǎn)換子程序ADCON該子程序進(jìn)行溫度采樣并將其轉(zhuǎn)換為8位數(shù)字量傳送給89C51的P0口。采樣得到的溫度數(shù)據(jù)存放在片內(nèi)RAM的20H單元中。 3.4 溫度計(jì)算子程序CALCU根據(jù)熱敏電阻的分度值和電路參數(shù)計(jì)算出出一張溫度表,存放在DATATAB數(shù)據(jù)表中,由于篇幅關(guān)系,本程序只給出0-49的溫度數(shù)據(jù)。一個(gè)溫度有兩個(gè)字節(jié)組成,前一字節(jié)為溫度值,后一字節(jié)為該溫度所對(duì)應(yīng)的熱敏電阻上的電壓的數(shù)字量。根據(jù)采樣值,通過(guò)查表及比較的方法計(jì)算出當(dāng)前的溫度值,并將其存入片內(nèi)RAM的21H單元。采用查表法計(jì)算溫度值時(shí)為了克服熱敏電阻的阻值溫度特性曲線的非線性,提高測(cè)量精度。 3.5 驅(qū)動(dòng)控制子程序DRVCON該子程序調(diào)節(jié)溫度,當(dāng)溫度高于上限溫度時(shí)(本程序設(shè)為30), P1.0輸出驅(qū)動(dòng)控制信號(hào),驅(qū)動(dòng)外設(shè)工作降溫;當(dāng)溫度下降到下限溫度時(shí)(本程序設(shè)為25),P1.0停止輸出,溫度上升,周而復(fù)始;工作狀態(tài)有LED1-LED4指示。 3.6十進(jìn)制轉(zhuǎn)換子程序METRICCON將存放于內(nèi)部RAM21H單元的當(dāng)前溫度值得二進(jìn)制數(shù)形式轉(zhuǎn)換為十進(jìn)制數(shù)(BCD碼)形式,以便輸出顯示,轉(zhuǎn)換結(jié)果存放在片內(nèi)RAM的32H單元(百位)、31H(十位)、30H單元(個(gè)位)。 3.7數(shù)碼顯示子程序DISP 該子程序利用89C51串口的方式0串行移位寄存器工作方式,將片內(nèi)RAM的30H、31H、32H單元的BCD碼查表轉(zhuǎn)換為七段碼后由RXD端串行發(fā)出去,然后經(jīng)74LS164串并轉(zhuǎn)換,將七段值傳送給數(shù)碼管,以十進(jìn)制形式顯示出當(dāng)前溫度值。4系統(tǒng)軟件算法分析 系統(tǒng)程序主要包括主程序,讀出溫度子程序,溫度轉(zhuǎn)換命令子程序,計(jì)算溫度子程序,顯示數(shù)據(jù)刷新子程序等。 4.1主程序流程主程序的主要功能是負(fù)責(zé)溫度的實(shí)時(shí)顯示、讀出并處理DS18B20的測(cè)量的當(dāng)前溫度值,溫度測(cè)量每1s進(jìn)行一次。這樣可以在一秒之內(nèi)測(cè)量一次被測(cè)溫度,其程序流程見(jiàn)下圖所示.開(kāi)始RESET(DS18B20復(fù)位)RECONFIG(寫(xiě)DS18B20暫存器設(shè)定)GETTEMPER(讀溫度命令)TEMPERCOV(轉(zhuǎn)化為一字節(jié)溫度值) REDKEY(讀鍵盤(pán)) BD(實(shí)際溫度與上下限比較,亮燈,打鈴) FB(BCD碼轉(zhuǎn)換)DIR(顯示) 圖4 主函數(shù)流程圖4.2 DS18B20復(fù)位子程序 此部分程序在執(zhí)行前先將DAT復(fù)位,然后通過(guò)對(duì)DAT的判斷來(lái)檢測(cè)DS18B20的回應(yīng),并進(jìn)行相應(yīng)的置位,通過(guò)R2計(jì)數(shù)的控制來(lái)將C中的數(shù)據(jù)送入數(shù)據(jù)線,一共寫(xiě)入一字節(jié),本程序當(dāng)R2=8時(shí)共計(jì)數(shù)8次,送入的數(shù)據(jù)正好一字節(jié),其程序流程見(jiàn)下圖所示。SETB DATCLR DAT(復(fù)位)SETB DAT(拉高數(shù)據(jù)線) 等待DS18B20回應(yīng) DAT=0?FLAG1=0 N FLAG1=1(置標(biāo)志位,DS18B20存在) Y SETB DAT 子程序返回 圖5 DS18B20流程圖 4.3 讀溫度值命令 此子程序主要是通過(guò)FLAG1的判斷來(lái)進(jìn)行如何執(zhí)行,若存在,則跳過(guò)ROM,并由DS18B20發(fā)出溫度轉(zhuǎn)換命令,并讀取命令,最終在DS18B20中讀取兩字節(jié)溫度。若不存在,則返回,對(duì)應(yīng)程序流程圖如下。FLAG1=1?(DS18B20是否存在?)返回 N跳過(guò)ROM匹配 YDS18B20中寫(xiě)入44H(發(fā)出溫度轉(zhuǎn)換命令)DS18B20中寫(xiě)入0BEH(讀取溫度指令)RDTEMP(從DS18B20中讀取兩字節(jié)溫度子程序)子程序返回圖6 溫度讀取流程圖 4.4 按鍵設(shè)置 此程序是通過(guò)對(duì)四個(gè)按鍵有無(wú)按下的判斷來(lái)對(duì)其相應(yīng)的TH、TL值進(jìn)行相應(yīng)的設(shè)置,其流程圖如下。子程序返回上限值TH增一JB=0?(鍵按下) K1下限值TL減一上限值TH減一 K4 K2 K3下限值TL減一圖7 按鍵設(shè)計(jì)流程圖 4.5響鈴與亮燈的設(shè)置 此程序是通過(guò)TEMPNUM與TH的比較來(lái)進(jìn)行是否響鈴與亮燈,其流程圖如下圖。TEMPNUMTH?SETB P1.6(響鈴) YTEMPUMTH NSETB P1.7(亮燈) Y N子程序返回 圖8 蜂鳴器程序流程圖5 設(shè)計(jì)總結(jié)經(jīng)過(guò)將近兩周的單片機(jī)課程設(shè)計(jì),終于完成了數(shù)字溫度傳感器測(cè)溫現(xiàn)實(shí)系統(tǒng)的設(shè)計(jì),雖然有些地方可能還存在一些小缺點(diǎn),但從心底里說(shuō),還是高興的,畢竟這次設(shè)計(jì)把實(shí)物都做了出來(lái),高興之余不得不深思呀!在本次設(shè)計(jì)的過(guò)程中,我們發(fā)現(xiàn)很多的問(wèn)題,雖然以前還做過(guò)這樣的設(shè)計(jì)但這次設(shè)計(jì)真的讓我們長(zhǎng)進(jìn)了很多。在調(diào)程序的時(shí)候按鍵一度成為我們的難點(diǎn),但經(jīng)過(guò)反復(fù)調(diào)整修改程序,還是實(shí)現(xiàn)了按鍵功能。單片機(jī)課程設(shè)計(jì)重點(diǎn)就在于軟件算法的設(shè)計(jì),需要有很巧妙的程序算法,雖然以前寫(xiě)過(guò)幾次程序,但我們覺(jué)的寫(xiě)好一個(gè)程序并不是一件簡(jiǎn)單的事,有好多的東西,只有我們?nèi)ピ囍隽?,才能真正的掌握,只學(xué)習(xí)理論有些東西是很難理解的,更談不上掌握。 從這次的課程設(shè)計(jì)中,我們真真正正的意識(shí)到,在以后的學(xué)習(xí)中,要理論聯(lián)系實(shí)際,把我們所學(xué)的理論知識(shí)用到實(shí)際當(dāng)中,學(xué)習(xí)單機(jī)片機(jī)更是如此,程序只有在經(jīng)常的寫(xiě)與讀的過(guò)程中才能提高,這就是我在這次課程設(shè)計(jì)中的最大收獲。6 參考文獻(xiàn)1李朝青.單片機(jī)原理及接口技術(shù):北京航空航天大學(xué)出版社,1998.1-292李廣弟.單片機(jī)基礎(chǔ).北京:北京航空航天大學(xué)出版社,1994.42-913閻石.數(shù)字電子技術(shù)基礎(chǔ)(第三版). 北京:高等教育出版社,1989.28-294廖常初.現(xiàn)場(chǎng)總線概述J.電工技術(shù),1999.111-1234 胡學(xué)海.單片機(jī)原理及應(yīng)用系統(tǒng)設(shè)計(jì):電子工業(yè)出版社,2005.8.101-1346 李勛.單片機(jī)實(shí)用教程:北京航空航天大學(xué)出版社,2006.5.104-107附錄1:系統(tǒng)原理圖附錄2:元件清單序號(hào)名稱(chēng) 廠家 價(jià)格(元)189C51STC 1028155 NEC 8374LS14 美國(guó)德州 247407 IR 3575452 36工陰極數(shù)碼管 LG 0.67 DS18B20 達(dá)來(lái)絲 6.58 排電阻(0.1K*8) 風(fēng)華 0.29 電解電容 三和 0.0510瓷片電容 (國(guó)產(chǎn)) 0.0211 獨(dú)石電容 飛利浦0.0512 三極管 0.213發(fā)光二極管 0.114按鈕開(kāi)關(guān) 0.0615晶振(11.0592) 116蜂鳴器 華宇 0.6附錄3 程序部分#include#include#includeconfing.hvoid main()HC138(5);P0 = 0x00; /關(guān)閉蜂蜜器、繼電器HC138(0); /鎖存P0 = 0XFF;/消隱HC138(4);P0 = 0xff; /關(guān)閉LEDHC138(0); /鎖存while(1)read_ds18b20_temp();display();key();get();alarm();void HC138(unsigned char x)P2 = ( x5 )|( P2&0x1f);void delay(unsigned char i) unsigned char k;while(i-)for(k = 0 ; k 20 ; k +);void read_ds18b20_temp() Init_DS18B20(); /初始化 Write_DS18B20(0xcc); /跳過(guò)ROM區(qū) Write_DS18B20(0x44); /溫度轉(zhuǎn)換 Init_DS18B20(); Write_DS18B20(0xcc); Write_DS18B20(0xbe); /讀取地址 temp_L = Read_DS18B20(); /讀取低字節(jié) temp_H = Read_DS18B20(); /讀取高字節(jié) temp_H = temp_H4; wen_H = temp_H|temp_L; /整數(shù)部分void get()/讀取密碼table0 = read_dat(0x01);delay(10);table1 = read_dat(0x02);delay(10);void set()write_dat(0x01,a0);delay(10);write_d
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 高職院校美育課程建設(shè)中傳統(tǒng)文化融合的可行性研究
- 高校審計(jì)中大數(shù)據(jù)分析的使用與實(shí)踐探索
- 廣西壯族自治區(qū)北海市合浦縣2024年九年級(jí)化學(xué)第一學(xué)期期末質(zhì)量檢測(cè)模擬試題含解析
- 2025至2030短袖襯衫行業(yè)項(xiàng)目調(diào)研及市場(chǎng)前景預(yù)測(cè)評(píng)估報(bào)告
- 草莓采摘園與旅行社定制旅游服務(wù)合同
- 高溫高壓環(huán)境下的化工設(shè)備設(shè)計(jì)
- 2025年公職人員考試時(shí)事政治考試試題(附答案)
- 2025至2030巴基斯坦旋轉(zhuǎn)泵行業(yè)發(fā)展趨勢(shì)分析與未來(lái)投資戰(zhàn)略咨詢(xún)研究報(bào)告
- 2025至2030中國(guó)利瓦斯蒂明行業(yè)項(xiàng)目調(diào)研及市場(chǎng)前景預(yù)測(cè)評(píng)估報(bào)告
- 2025至2030中國(guó)自貿(mào)區(qū)(FTZ)行業(yè)現(xiàn)狀趨勢(shì)與發(fā)展前景戰(zhàn)略研究報(bào)告
- (完整版)曲臂式高空作業(yè)車(chē)安全技術(shù)交底
- 2024年民族宗教政策法規(guī)宣傳月知識(shí)競(jìng)賽考試題庫(kù)(含答案)
- 《3-6歲兒童學(xué)習(xí)與發(fā)展指南》考試參考題庫(kù)120題(含答案)
- 診所中藥飲片清單
- 零信任安全架構(gòu)-第1篇
- 《發(fā)酵飼料的應(yīng)用》課件
- 國(guó)家開(kāi)放大學(xué)2023年7月期末統(tǒng)一試《22417客戶(hù)關(guān)系管理》試題及答案-開(kāi)放專(zhuān)科
- 西式面點(diǎn)師(高級(jí))課件 項(xiàng)目4 甜品制作
- 鼎捷T100-V1.0-銷(xiāo)售管理用戶(hù)手冊(cè)-簡(jiǎn)體
- 抗生素的合理應(yīng)用-專(zhuān)業(yè)知識(shí)講座培訓(xùn)課件
- “三高共管、六病同防”工作實(shí)踐10-40-16
評(píng)論
0/150
提交評(píng)論