版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、課 程 設(shè) 計(jì) 課程名稱:微機(jī)原理與接口技術(shù)課程設(shè)計(jì)題目名稱:溫度采集顯示系統(tǒng)學(xué)生學(xué)院 專業(yè)班級(jí)學(xué) 號(hào) 學(xué)生姓名 指導(dǎo)教師 一、設(shè)計(jì)題目溫度采集系統(tǒng)二、 設(shè)計(jì)任務(wù)和要求 功能要求:(1) 溫度測(cè)量范圍 0 - 99。(2) 溫度分辨率±1。(3) 選擇合適的溫度傳感器。(4) 使用鍵盤輸入溫度的最高點(diǎn)和最低點(diǎn),溫度超出范圍時(shí)候報(bào)警。(報(bào)警溫度不 需要保存)要求完成的內(nèi)容:(1)系統(tǒng)硬件設(shè)計(jì),并用電子CAD軟件繪制出原理圖,(2)給出流程圖,編寫并調(diào)試程序。(3)撰寫設(shè)計(jì)報(bào)告。三、原理電路圖和設(shè)計(jì)程序1、方案比較(1)、 系統(tǒng)總體方案設(shè)計(jì)總體框架圖如圖1示,軟件流程圖如圖示該溫度控制系
2、統(tǒng)的設(shè)計(jì)包括硬件設(shè)計(jì)和軟件設(shè)計(jì)兩大部分,結(jié)合實(shí)際情況,該系統(tǒng)應(yīng)具備如下功能:A、實(shí)時(shí)采集溫度;B、顯示溫度;C、串行傳送數(shù)據(jù);D、控制外設(shè);E、溫度超限報(bào)警; 系統(tǒng)硬件設(shè)計(jì)系統(tǒng)的硬件設(shè)計(jì)部分主要由以下幾部分組成:A、單片機(jī)最小系統(tǒng);B、溫度采集模塊;C、溫度顯示模塊;D、串行通信模塊;E、報(bào)警電路;圖2 軟件流程圖(2)、方案比較方案一 采用8031作為控制核心,以使用最為普遍的器件ADC0809作模數(shù)轉(zhuǎn)換,控制上使用對(duì)電阻絲加電使其升溫和開動(dòng)風(fēng)扇使其降溫。此方案簡(jiǎn)易可行,器件的價(jià)格便宜,但8031內(nèi)部沒有程序存儲(chǔ)器,需要擴(kuò)展,增加了電路的復(fù)雜性,且ADC0809是8位的模數(shù)轉(zhuǎn)換,不能滿足本題
3、目的精度要求。方案二 采用比較流行的AT89S51作為電路的控制核心, AT89S52不但與8051,8052 指令,管腳完全兼容,而且其片內(nèi)的程序存儲(chǔ)器采用FLASH 工藝,用戶可以用電的方式瞬間擦除、改寫。AT89S52 單片機(jī)還支持在線編程,用戶通過簡(jiǎn)單的電路連接就可以將電腦里的程序下載到單片機(jī)中,減少調(diào)試程序時(shí)不斷拆卸和插入給芯片帶來的損壞。此外AT89S52 單片機(jī)有8 KB的程序存儲(chǔ)器和256 B 的數(shù)據(jù)存儲(chǔ)器,不需外部擴(kuò)展存儲(chǔ)芯片,可以降低硬件電路的復(fù)雜度。此方案電路簡(jiǎn)單并且可以滿足題目中的各項(xiàng)要求的精度。綜上分析,我們采用方案二。仿真總體電路圖如圖3示 圖3 圖3(3)、單元電
4、路設(shè)計(jì)、單片機(jī)最小系統(tǒng)設(shè)計(jì)單片機(jī)是整個(gè)系統(tǒng)的核心處理器,其負(fù)責(zé)驅(qū)動(dòng)溫度傳感器DS18B20 工作、溫度顯示、控制外圍設(shè)備的工作以及與上位機(jī)進(jìn)行通信等工作。單片機(jī)最小系統(tǒng)主要由兩塊組成,其一為晶振起振電路,其二為復(fù)位電路,在此,采用按鍵手動(dòng)復(fù)位,相對(duì)來講,這種復(fù)位方式更加方便,更加人性化,不必要切斷電源即可對(duì)系統(tǒng)進(jìn)行復(fù)位。AT89S51簡(jiǎn)介:AT89S52 是89 系列單片機(jī)的一種,它不但與8051,8052 指令,管腳完全兼容,而且其片內(nèi)的程序存儲(chǔ)器采用FLASH 工藝,用戶可以用電的方式瞬間擦除、改寫。AT89S52 單片機(jī)還支持在線編程,用戶通過簡(jiǎn)單的電路連接就可以將電腦里的程序下載到單片
5、機(jī)中,減少調(diào)試程序時(shí)不斷拆卸和插入給芯片帶來的損壞。此外AT89S52 單片機(jī)有8 KB的程序存儲(chǔ)器和256 B 的數(shù)據(jù)存儲(chǔ)器,不需外部擴(kuò)展存儲(chǔ)芯片,可以降低硬件電路的復(fù)雜度。、 溫度采集模塊設(shè)計(jì)溫度傳感器是該系統(tǒng)的關(guān)鍵器件,本系統(tǒng)選用的是美國(guó)Dallas 半導(dǎo)體公司生產(chǎn)的數(shù)字化溫度傳感器 DS18B20。本系統(tǒng)中DS18B20 的DQ 口與單片機(jī)的 P1.0 口連接,GND 接地,VDD 接電源,信號(hào)和5V 電源之間的接上一個(gè)上拉電阻R。DS18B20簡(jiǎn)介:DS18B20 有三個(gè)主要數(shù)字部件組成:64 位激光ROM、溫度傳感器、非易失性的溫度報(bào)警觸發(fā)器TH 和TL 。DS18B20 支持“一
6、線總線”接口,測(cè)量溫度范圍為-55°C+125°C,被測(cè)溫度用符號(hào)擴(kuò)展的16 位數(shù)字量方式串行輸出,在-10+85°C 范圍內(nèi),精度為±0.5°C。DS18B20 采集到的現(xiàn)場(chǎng)溫度直接以先進(jìn)的單總線數(shù)據(jù)通信方式傳輸,大大提高了系統(tǒng)的抗干擾性,適合于惡劣環(huán)境的現(xiàn)場(chǎng)溫度測(cè)量,如:環(huán)境控制、設(shè)備或過程控制、測(cè)溫類消費(fèi)電子產(chǎn)品等。DS18B20 可程序設(shè)定912 位的分辨率,精度可達(dá)±0.5°C。DS18B20具有內(nèi)置的EEPROM,用戶設(shè)定的分辨率和報(bào)警溫度都可存儲(chǔ)在其中,且掉電后依然存在。CPU 只需一根端口線就能與DS18B2
7、0 進(jìn)行通信,占用微處理器的端口較少,可節(jié)省大量的引線和邏輯電路。與前一代產(chǎn)品(DS1820 溫度傳感器)不同,DS18B20 支持3.0V 5.5V的電壓范圍,使系統(tǒng)設(shè)計(jì)更靈活、方便,而且DS18B20 價(jià)格更便宜,體積更小。如圖J1所示,DS18B20 有三個(gè)管腳:3腳 GND 為電源地,2腳DQ 為數(shù)字信號(hào)輸入/輸出端,1腳VDD 為外接供電電源接入端(用寄生電源方式時(shí)接地)。在外部電源供電方式下,DS18B20 工作電源由VDD 引腳接入,此時(shí)I/O 線不需要強(qiáng)上拉,不存在電源電流不足的問題,可以保證轉(zhuǎn)換精度,同時(shí)理論上總線可以掛接任意多個(gè)DS18B20 傳感器,組成多點(diǎn)測(cè)溫系統(tǒng)。在外
8、部供電的方式下,DS18B20 的GND 引腳不能懸空,否則不能轉(zhuǎn)換溫度,讀取的溫度總是85。 溫度顯示模塊設(shè)計(jì)根據(jù)實(shí)際應(yīng)用情況,該溫度顯示模塊采用七段數(shù)碼管顯示電路,數(shù)碼管選用共陽(yáng)極數(shù)碼管,如圖U3示,以動(dòng)態(tài)方式顯示,顯示數(shù)據(jù)由P1口送出,位控信號(hào)由P2口送出,經(jīng)74LS244進(jìn)行信號(hào)放大,以產(chǎn)生足夠大的電流驅(qū)動(dòng)數(shù)碼管顯示。流程圖如圖示: 串行通信模塊設(shè)計(jì)AT89S52 單片機(jī)內(nèi)部含有一個(gè)可編程全雙工串行通信接口,由TXD 引腳來傳送串行數(shù)據(jù),而由RXD 引腳來接收數(shù)據(jù)。該接口具有UART(通用異步接收和發(fā)送器)的全部功能,它不僅能同時(shí)進(jìn)行數(shù)據(jù)的發(fā)送和接收,也可作為一個(gè)同步移位寄存器使用,可
9、構(gòu)成雙機(jī)或者多機(jī)通信系統(tǒng)。 報(bào)警電路設(shè)計(jì)本設(shè)計(jì)采用蜂鳴器報(bào)警電路,它由晶體管和蜂鳴器組成。當(dāng)溫度的測(cè)量值超出給定的上下限時(shí),由單片機(jī)的P3.7 口輸出信號(hào)控制晶體管導(dǎo)通,則蜂鳴器報(bào)警。 系統(tǒng)軟件設(shè)計(jì)本系統(tǒng)采用 AT89S52 作為核心處理器件,把經(jīng)過DS18B20 現(xiàn)場(chǎng)實(shí)時(shí)采集到的溫度數(shù)據(jù),存入AT89S52 的內(nèi)部數(shù)據(jù)存儲(chǔ)器,并送LED 數(shù)碼管顯示,并與溫度的設(shè)定值進(jìn)行比較,然后由單片機(jī)輸出控制信號(hào)去控制外部設(shè)備。進(jìn)行溫度控制程序的設(shè)計(jì)還應(yīng)考慮越限報(bào)警,當(dāng)采集到的溫度值與溫度的設(shè)置值進(jìn)行比較后,若發(fā)現(xiàn)當(dāng)前溫度值越限,則產(chǎn)生報(bào)警信號(hào)。與硬件電路相關(guān)聯(lián),本溫度控制系統(tǒng)的軟件設(shè)計(jì)主要分為以下幾個(gè)部
10、分:主程序,溫度上下限值設(shè)定子程序、溫度讀取子程序、溫度顯示子程序、串口通信子程序、輸出控制子程序和報(bào)警子程序等。其中溫度上下限值設(shè)定子程序完成對(duì)溫度范圍值的設(shè)定及數(shù)據(jù)保存;溫度讀取子程序完成對(duì)溫度傳感器數(shù)據(jù)的讀取,并通過溫度顯示子程序顯示溫度值;串口通信子程序?qū)⒉杉降臏囟葦?shù)據(jù)傳送到PC 機(jī),以實(shí)現(xiàn)遠(yuǎn)程監(jiān)控;輸出控制子程序根據(jù)采集到的溫度數(shù)據(jù)完成對(duì)外部設(shè)備的控制;報(bào)警子程序則當(dāng)采集到的溫度數(shù)據(jù)超過設(shè)定的溫度上下限值時(shí)報(bào)警。整個(gè)運(yùn)行程序,見電子版下面是測(cè)溫程序段:sbit DQ = P33; / 定義DQ引腳為P3.3/* 延時(shí)函數(shù) * 功能:在11.059MHz的晶振條件下調(diào)用本函數(shù)需要24
11、s ,然后每次計(jì)數(shù)需16s */void DS18_delay(int useconds) int s;for (s=0; s<useconds;s+);/* 復(fù)位函數(shù) * 功能:完成單總線的復(fù)位操作。* 復(fù)位時(shí)間為480s,因此延時(shí)時(shí)間為(480-24)/16 = 28.5,取29s。* 經(jīng)過70s之后檢測(cè)存在脈沖,因此延時(shí)時(shí)間為(70-24)/16 = 2.875,取3s。*/unsigned char ow_reset(void) unsigned char presence;DQ = 0; / 將 DQ 線拉低DS18_delay(29); / 保持 480sDQ = 1; /
12、DQ返回高電平DS18_delay(3); / 等待存在脈沖presence = DQ; / 獲得存在信號(hào)DS18_delay(25); / 等待時(shí)間隙結(jié)束return(presence); / 返回存在信號(hào),0 = 器件存在, 1 = 無器件/* 位寫入函數(shù) * 功能:向單總線寫入1位值:bitval*/void write_bit(char bitval) DQ = 0; / 將DQ 拉低開始寫時(shí)間隙if(bitval=1) DQ =1; / 如果寫1,DQ 返回高電平DS18_delay(5); / 在時(shí)間隙內(nèi)保持電平值,DQ = 1; / DS18_delay函數(shù)每次循環(huán)延時(shí)16s,因
13、此DS18_delay(5) = 104s/* 字節(jié)寫入函數(shù) * 功能:向單總線寫入一個(gè)字節(jié)值:val*/void ds18write_byte(char val) unsigned char i;unsigned char temp;for (i=0; i<8; i+) / 寫入字節(jié), 每次寫入一位 temp = val>>i; temp &= 0x01; write_bit(temp); DS18_delay(5);/* 位讀取函數(shù) * 功能:從單總線上讀取一位信號(hào),所需延時(shí)時(shí)間為15s,因此無法調(diào)用前面定義* 的DS18_delay()函數(shù),而采用一個(gè)for()
14、循環(huán)來實(shí)現(xiàn)延時(shí)。* */unsigned char read_bit(void) unsigned char i;DQ = 0; /將DQ 拉低開始讀時(shí)間隙DQ = 1; / then return highfor (i=0; i<3; i+); / 延時(shí)15sreturn(DQ); / 返回 DQ 線上的電平值/* 字節(jié)讀取函數(shù) * 功能:從單總線讀取一個(gè)字節(jié)的值*/unsigned char DSread_byte(void) unsigned char i;unsigned char value = 0;for (i=0;i<8;i+) / 讀取字節(jié),每次讀取一個(gè)字節(jié)if(r
15、ead_bit() value|=0x01<<i; / 然后將其左移DS18_delay(6); return(value);/* 讀取溫度函數(shù) * 功能:如果單總線節(jié)點(diǎn)上只有一個(gè)器件則可以直接掉用本函數(shù)。如果節(jié)點(diǎn)上有多個(gè)器* 件,為了避免數(shù)據(jù)沖突,應(yīng)使用Match ROM函數(shù)來選中特定器件。* 注: 本函數(shù)是根據(jù)DS1820的溫度數(shù)據(jù)格式編寫的,若用于DS18B20,必須根據(jù)* DS18B20的溫度數(shù)據(jù)格式作適當(dāng)修改。*/unsigned int ReadTemperature(void) unsigned char get10;unsigned char temp_lsb,te
16、mp_msb;unsigned int t;unsigned char k;ow_reset();ds18write_byte(0xCC); / 跳過 ROMds18write_byte(0x44); / 啟動(dòng)溫度轉(zhuǎn)換DS18_delay(5);ow_reset();ds18write_byte(0xCC); / 跳過 ROMds18write_byte(0xBE); / 讀暫存器for (k=0;k<2;k+)getk=DSread_byte();temp_msb = get1; / Sign byte + lsbittemp_lsb = get0; / Temp data plus
17、lsbt=temp_msb*256+temp_lsb;t=t&0x0ff0;if(t<0xff&&t>0xf0)t=(-1)*t;return t>>4;/temp_f = (int)temp_c)* 9)/5 + 32; / 輸出華氏溫度值、軟件清單四、 電路仿真使用protel 99se 仿真軟件仿真,優(yōu)點(diǎn)在于此軟件為這學(xué)期剛剛學(xué)的一款電子電路軟件,使用起來比較熟悉和順手,且不用花過多的時(shí)間在軟件學(xué)習(xí),缺點(diǎn)在于,此仿真軟件對(duì)于單片機(jī)類實(shí)例進(jìn)行不了仿真,也就相當(dāng)于沒有仿真數(shù)據(jù),這樣會(huì)容易出錯(cuò),但是AT89S52剛剛好能夠彌補(bǔ)這個(gè)缺陷,所以還是選
18、擇用protel 99se來做仿真實(shí)驗(yàn)。電路原理圖如下圖示:電路版的預(yù)覽圖如下圖示: PCB打印預(yù)覽圖該設(shè)計(jì)的pcb圖見附圖:完整的PCB圖五、 總結(jié)通過此次課程設(shè)計(jì),我學(xué)到了很多很多新的知識(shí),同時(shí),也加深了對(duì)舊知識(shí)的了解和認(rèn)知。不管是從動(dòng)手能力還是理論學(xué)習(xí)上講,這次課程設(shè)計(jì)都讓我有了一定的提高。首先是對(duì)單片機(jī)芯片AT89S52的學(xué)習(xí),之前我們學(xué)的89C51系列的,前者對(duì)于后者來講,比較先進(jìn)和高級(jí),而且更加貼近于我們的生活。鑒于自己對(duì)AT89S52的一點(diǎn)認(rèn)識(shí)也沒有,所以一切只能從頭開始學(xué)起,從到圖書館找資料到網(wǎng)上查找,從一個(gè)人奮戰(zhàn)到找同學(xué)幫助,一點(diǎn)一滴地,從無到有,在不斷的努力之下,我終于也了
19、解到一點(diǎn)點(diǎn)AT89S52單片機(jī)芯片的工作原理和功能了接著便是DS18B20溫度傳感器的學(xué)習(xí),AT89S52單片機(jī)芯片還可以從89C53系列找相似之處,但DS18B20就完全沒有了,不過,還好,現(xiàn)代DS18B20的應(yīng)用技術(shù)也比較普遍和熟練,所以能找得到比較多的資料區(qū)了解和學(xué)習(xí)。一門比較成熟的技術(shù)要掌握起來是比較容易的,只要你有耐心和恒心去學(xué)習(xí)。有了初步的構(gòu)思之后,就要開始著手仿真實(shí)驗(yàn)了,雖然protel 99se軟件進(jìn)行不了單片機(jī)芯片的仿真實(shí)驗(yàn),拿不到確切的仿真數(shù)據(jù),但是使用protel 99se軟件卻也是這次課程設(shè)計(jì)中必不可少的步驟,因?yàn)槭褂胮rotel 99se軟件可以設(shè)計(jì)此次課程設(shè)計(jì)的pcb電路圖,這樣就可以制作pcb感光板。使用感光板來做此次實(shí)驗(yàn),能大大地減少花費(fèi)的時(shí)間和精力。但是制作感光板的過程也是一個(gè)挑戰(zhàn),它講究的是耐心和技術(shù),一不小心,之前所做的功夫就很有可能被白白的浪費(fèi)掉。而且,通過此次制作感光板,我也大大地感受到高新技術(shù)的作用,
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 廣東石油化工學(xué)院《Andoid基礎(chǔ)編程》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東汕頭幼兒師范高等??茖W(xué)校《第一外國(guó)語英》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東農(nóng)工商職業(yè)技術(shù)學(xué)院《生物制藥學(xué)科前沿進(jìn)展》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東茂名幼兒師范??茖W(xué)?!洞黉N策略》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東茂名健康職業(yè)學(xué)院《英國(guó)文學(xué)下》2023-2024學(xué)年第一學(xué)期期末試卷
- 廣東理工職業(yè)學(xué)院《美國(guó)社會(huì)與文化》2023-2024學(xué)年第一學(xué)期期末試卷
- 一年級(jí)數(shù)學(xué)計(jì)算題專項(xiàng)練習(xí)集錦
- 大腦的奧秘:神經(jīng)科學(xué)導(dǎo)論(復(fù)旦大學(xué))學(xué)習(xí)通測(cè)試及答案
- 【2022屆走向高考】高三數(shù)學(xué)一輪(北師大版)基礎(chǔ)鞏固:第8章-第1節(jié)-簡(jiǎn)單幾何體及其三視圖和直觀圖
- 2022韶山市高考英語閱讀理解及書面表達(dá)精煉(8)及答案
- 智慧金融合同施工承諾書
- 術(shù)后甲狀旁腺功能減退癥管理專家共識(shí)
- 【7道期末】安徽省安慶市區(qū)2023-2024學(xué)年七年級(jí)上學(xué)期期末道德與法治試題(含解析)
- 2024年01月22094法理學(xué)期末試題答案
- 2024年1月國(guó)家開放大學(xué)法律事務(wù)??啤睹穹▽W(xué)(1)》期末紙質(zhì)考試試題及答案
- 學(xué)校2024-2025學(xué)年教研工作計(jì)劃
- 安徽省蕪湖市2023-2024學(xué)年高一上學(xué)期期末考試 歷史 含解析
- 煙草執(zhí)法課件教學(xué)課件
- 2024年安全文化建設(shè)實(shí)施方案
- 康復(fù)治療技術(shù)歷年真題單選題100道及答案
- 數(shù)字化交付施工方案
評(píng)論
0/150
提交評(píng)論