硬件課程設(shè)計(jì)模擬溫度控制_第1頁(yè)
硬件課程設(shè)計(jì)模擬溫度控制_第2頁(yè)
硬件課程設(shè)計(jì)模擬溫度控制_第3頁(yè)
硬件課程設(shè)計(jì)模擬溫度控制_第4頁(yè)
硬件課程設(shè)計(jì)模擬溫度控制_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、硬 件 課 程 設(shè) 計(jì)(C語(yǔ)言)姓 名: 趙 都 督 學(xué) 號(hào):_08143086_班 級(jí):計(jì)算機(jī)科學(xué)與技術(shù)14-02班題 目:室內(nèi)環(huán)境監(jiān)控 指導(dǎo)老師: 張 莉中國(guó)礦業(yè)大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院摘 要溫度是生產(chǎn)生活中最基本的物理量之一,它反映出了物體的冷熱程度,在自然界中有很多的物理、化學(xué)過(guò)程都與溫度有著緊密的聯(lián)系。目前隨著信息技術(shù)的發(fā)展,傳感器技術(shù)的廣泛應(yīng)用,溫度的測(cè)量與控制已向自動(dòng)化、智能化的方向發(fā)展。數(shù)字溫度計(jì)相對(duì)于傳統(tǒng)的溫度計(jì)有讀書(shū)更為方便且準(zhǔn)確的優(yōu)點(diǎn)。目前,在很多生產(chǎn)過(guò)程中,溫度的測(cè)量和控制都直接和安全生產(chǎn)、提高生產(chǎn)效率、節(jié)約能源等重大技術(shù)指標(biāo)密切聯(lián)系。所以,溫度的測(cè)量與控制在生產(chǎn)生活的

2、各個(gè)領(lǐng)域中都受到了高度的重視。在許多情況下,在實(shí)際生活生產(chǎn)活動(dòng)要考慮溫度的影響 和對(duì)溫度的精確控制,如食物的存儲(chǔ)、自動(dòng)控制的空調(diào)和房屋防火裝置等。因?yàn)榧呻娐分圃旒夹g(shù)的不斷提高,出現(xiàn)了高性能、高可靠的集成芯片。溫度控制系統(tǒng)在工業(yè)領(lǐng)域得到了廣泛的應(yīng)用。溫度控制系統(tǒng)在性能方面具有精度高,實(shí)時(shí)性好,易于測(cè)量環(huán)境溫度并控制。而且,溫度控制系統(tǒng)在很大程度上節(jié)約了人力資源,改善了傳統(tǒng)溫度測(cè)量的繁瑣和效率低。這些使得溫度控制系統(tǒng)的研究和開(kāi)發(fā)得到的各方面的廣泛關(guān)注和支持。關(guān)鍵詞:溫度控制;8255芯片;AD0809;DA0832;模數(shù)轉(zhuǎn)換;紅外線傳感器;LCD液晶顯示器 目 錄1設(shè)計(jì)任務(wù)與要求11.1 選題報(bào)

3、告11.2 提出問(wèn)題12需求分析12.1 設(shè)計(jì)思想22.1.1模擬溫度要求23硬件方案23.1 設(shè)備器材23.2 硬件的選擇以及芯片說(shuō)明23.2.1系統(tǒng)所需硬件23.2.2 8255A芯片介紹33.2.3 AD0809芯片介紹43.2.4 DA0832芯片介紹7 3.3 硬件電路9 3.4 實(shí)驗(yàn)連線圖103.4.1硬件連接圖描述:114軟件方案124.1 功能模塊124.2 系統(tǒng)各模塊程序流程圖124.2.1 8255初始化模塊:124.2.2啟動(dòng)直流電機(jī):144.2.3顯示程序程序模塊:155源程序清單和注釋176運(yùn)行結(jié)果237結(jié)論258設(shè)計(jì)體會(huì):25參考文獻(xiàn)261設(shè)計(jì)任務(wù)與要求1.1 選題

4、報(bào)告這次所選擇的實(shí)驗(yàn)是溫度控制實(shí)驗(yàn),要求利用可編程并行接口元件8255A,模數(shù)轉(zhuǎn)換器AD0809,數(shù)模轉(zhuǎn)換器DA0832,直流電機(jī),紅外線傳感器模擬環(huán)境溫度和人數(shù)統(tǒng)計(jì)。1.2 提出問(wèn)題1) 如何實(shí)時(shí)反映外部溫度的變化?2) 如何將模擬量轉(zhuǎn)變成數(shù)字量?3) 如何將采集到的數(shù)據(jù)顯示在液晶顯示器上?2需求分析 目前在很多領(lǐng)域的一些特殊地方,對(duì)環(huán)境的要求非??量蹋袊?yán)格的控制,例如,在一個(gè)大企業(yè)的計(jì)算機(jī)數(shù)據(jù)中心,它們的溫度有嚴(yán)格限制范圍,這就需要一個(gè)可靠地溫度控制系統(tǒng)時(shí)刻監(jiān)管著環(huán)境的溫度,因此各種各樣的溫度控制系統(tǒng)孕育而生。利用微機(jī)接口技術(shù)實(shí)驗(yàn)系統(tǒng)設(shè)計(jì)制作一個(gè)溫度控制系統(tǒng)。由于硬件條件有限,所以只能

5、實(shí)現(xiàn)上下限溫度的控制,要求是能夠利用實(shí)驗(yàn)箱中的LCD液晶屏顯示實(shí)時(shí)溫度,同時(shí)當(dāng)溫度高于上限溫度時(shí),啟動(dòng)直流電機(jī)模擬散熱系。當(dāng)溫度低于下限溫度時(shí),啟動(dòng)繼電器模擬加熱系統(tǒng)。實(shí)現(xiàn)的功能與流程如下所述:2.1 設(shè)計(jì)思想 該溫度控制系統(tǒng)設(shè)計(jì)的思想是通過(guò)一個(gè)模擬溫度變化的感應(yīng)設(shè)備,將檢測(cè)到的模擬溫度轉(zhuǎn)換成數(shù)據(jù)保存起來(lái),并用相應(yīng)傳感器對(duì)室內(nèi)人數(shù)進(jìn)行統(tǒng)計(jì),執(zhí)行相應(yīng)的控制設(shè)備,同時(shí)還將檢測(cè)到的溫度數(shù)據(jù)和人數(shù)數(shù)據(jù)顯示在LCD液晶屏上。2.1.1模擬溫度要求(1)實(shí)時(shí)反映外部溫度的變化;(2)將采集到的溫度數(shù)據(jù)顯示在LCD液晶顯示屏上;(3)將采集到的人數(shù)顯示在LCD液晶顯示屏上;當(dāng)人數(shù)高于設(shè)置的人數(shù)上限時(shí), 自動(dòng)

6、啟動(dòng)直流電機(jī)模擬散熱;3硬件方案3.1 設(shè)備器材硬件課程設(shè)計(jì)實(shí)踐TPC-ZK實(shí)驗(yàn)箱一個(gè)PC電腦一臺(tái),紅外線傳感器一臺(tái)3.2 硬件的選擇以及芯片說(shuō)明3.2.1系統(tǒng)所需硬件設(shè)計(jì)所需芯片:8255A、AD0809、DA0832所需設(shè)備:LCD液晶顯示器、直流電機(jī)、紅外線傳感器。將8255A的A口與LCD液晶屏的八為數(shù)據(jù)口相連,對(duì)8255A進(jìn)行初始化編程,控制LCD液晶屏顯示,8255A的B口的PB0口作為輸入接受傳感器的輸入。將AD0809的IN0、IN1與電位器相連,編程啟動(dòng)AD0809實(shí)時(shí)采集外部溫度變化的數(shù)據(jù)。將DA0832的Ua口與直流電機(jī)相連,編程啟動(dòng)AD0832,對(duì)直流電機(jī)的控制。 3.

7、2.2 8255A芯片介紹 圖3-1 8255A引腳圖 圖3-2 8255A內(nèi)部電路圖圖3-3 方式選擇控制字格式圖引腳功能:(只記述用到的引腳)CS:芯片選擇信號(hào)線,當(dāng)這個(gè)輸入引腳為低電平時(shí),即/CS=0時(shí),表示芯片被選中,允許8255與CPU進(jìn)行通訊;/CS=1時(shí),8255無(wú)法與CPU做數(shù)據(jù)傳輸. PA0PA7:端口A輸入輸出線,一個(gè)8位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個(gè)8位的數(shù)據(jù)輸入鎖存器。 PB0PB7:端口B輸入輸出線,一個(gè)8位的I/O鎖存器, 一個(gè)8位的輸入輸出緩沖器。 PC0PC7:端口C輸入輸出線,一個(gè)8位的數(shù)據(jù)輸出鎖存器/緩沖器, 一個(gè)8位的數(shù)據(jù)輸入緩沖器。端口C可以通過(guò)工作方

8、式設(shè)定而分成2個(gè)4位的端口, 每個(gè)4位的端口包含一個(gè)4位的鎖存器,分別與端口A和端口B配合使用,可作為控制信號(hào)輸出或狀態(tài)信號(hào)輸入端口。3.2.3 AD0809芯片介紹圖3-4 AD0809引腳信號(hào)圖(1)主要特性1)8路輸入通道,8位A/D轉(zhuǎn)換器,即分辨率為8位。 2) 具有轉(zhuǎn)換起停控制端。 3) 轉(zhuǎn)換時(shí)間為100s(時(shí)鐘為640kHz時(shí)),130s(時(shí)鐘為500kHz時(shí)) 4)單個(gè)+5V電源供電  5)模擬輸入電壓范圍0+5V,不需零點(diǎn)和滿(mǎn)刻度校準(zhǔn)。   6)工作溫度范圍為-40+85攝氏度 7)低功耗,約15mW。(2)內(nèi)部結(jié)構(gòu)ADC080

9、9是CMOS單片型逐次逼近式A/D轉(zhuǎn)換器,內(nèi)部結(jié)構(gòu)如圖所示,它由8路模擬開(kāi)關(guān)、地址鎖存與譯碼器、比較器、8位開(kāi)關(guān)樹(shù)型A/D轉(zhuǎn)換器、逐次逼近寄存器、邏輯控制和定時(shí)電路組成。外部特性(引腳功能)ADC0809芯片有28條引腳,采用雙列直插式封裝,如圖所示。下面說(shuō)明各引腳功能。 IN0IN7:8路模擬量輸入端。 2-12-8:8位數(shù)字量輸出端。 ADDA、ADDB、ADDC:3位地址輸入線,用于選通8路模擬輸入中的一路 ALE:地址鎖存允許信號(hào),輸入,高電平有效。  START: A/D轉(zhuǎn)換啟動(dòng)脈沖輸入端,輸入一個(gè)正脈沖(至少100ns寬)使其啟動(dòng)(脈沖上升沿

10、使0809復(fù)位,下降沿啟動(dòng)A/D轉(zhuǎn)換)。  EOC: A/D轉(zhuǎn)換結(jié)束信號(hào),輸出,當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸出一個(gè)高電平(轉(zhuǎn)換期間一直為低電平)。  OE:數(shù)據(jù)輸出允許信號(hào),輸入,高電平有效。當(dāng)A/D轉(zhuǎn)換結(jié)束時(shí),此端輸入一個(gè)高電平,才能打開(kāi)輸出三態(tài)門(mén),輸出數(shù)字量。 CLK:時(shí)鐘脈沖輸入端。要求時(shí)鐘頻率不高于640KHZ。 REF(+)、REF(-):基準(zhǔn)電壓。 Vcc:電源,單一+5V。 GND:地。實(shí)驗(yàn)連線圖 圖3-5 AD0809引腳及連線圖(3)工作過(guò)程首先輸入3位地址,并使ALE=1,將地址存入地址鎖存器中。此地址經(jīng)譯碼選通8路

11、模擬輸入之一到比較器。START上升沿將逐次逼近寄存器復(fù)位。下降沿啟動(dòng) A/D轉(zhuǎn)換,之后EOC輸出信號(hào)變低,指示轉(zhuǎn)換正在進(jìn)行。直到A/D轉(zhuǎn)換完成,EOC變?yōu)楦唠娖?,指示A/D轉(zhuǎn)換結(jié)束,結(jié)果數(shù)據(jù)已存入鎖存器,這個(gè)信號(hào)可用作中斷申請(qǐng)。當(dāng)OE輸入高電平 時(shí),輸出三態(tài)門(mén)打開(kāi),轉(zhuǎn)換結(jié)果的數(shù)字量輸出到數(shù)據(jù)總線上。 (EOC)作為中斷請(qǐng)求信號(hào),以中斷方式進(jìn)行數(shù)據(jù)傳送。       不管使用上述哪種方式,只要一旦確定轉(zhuǎn)換完成,即可通過(guò)指令進(jìn)行數(shù)據(jù)傳送。首先送出口地址并以信號(hào)有效時(shí),OE信號(hào)即有效,把轉(zhuǎn)換數(shù)據(jù)送上數(shù)據(jù)總線,供單片機(jī)接受3.2.

12、3 AD0832芯片介紹 圖3-6 DA0832引腳信號(hào)圖(1)主要特性: DAC0832是采用CMOS工藝制成的單片直流輸出型8位數(shù)/模轉(zhuǎn)換器。如圖4-82所示,它由倒T型R-2R電阻網(wǎng)絡(luò)、模擬開(kāi)關(guān)、運(yùn)算放大器和參考電壓VREF四大部分組成。運(yùn)算放大器輸出的模擬量V0為: 圖3-7 DA0832內(nèi)部運(yùn)算放大器電路 1)特點(diǎn): 一個(gè)8位D/A轉(zhuǎn)換器有8個(gè)輸入端(其中每個(gè)輸入端是8位二進(jìn)制數(shù)的一位),有一個(gè)模擬輸出端。輸入可有28=256個(gè)不同的二進(jìn)制組態(tài),輸出為256個(gè)電壓之一,即輸出電壓不是整個(gè)電壓范圍內(nèi)任意值,而只能是256個(gè)可能值。 D0D7:數(shù)字信號(hào)輸入端。 ILE:輸入寄存器允許,高

13、電平有效。 CS:片選信號(hào),低電平有效。 WR1:寫(xiě)信號(hào)1,低電平有效。 XFER:傳送控制信號(hào),低電平有效。 WR2:寫(xiě)信號(hào)2,低電平有效。 IOUT1、IOUT2:DAC電流輸出端。 Rfb:是集成在片內(nèi)的外接運(yùn)放的反饋電阻。 Vref:基準(zhǔn)電壓(-1010V)。 Vcc:是源電壓(+5+15V)。 AGND:模擬地 NGND:數(shù)字地,可與AGND接在一起使用。 DAC0832輸出的是電流,一般要求輸出是電壓,所以還必須經(jīng)過(guò)一個(gè)外接的運(yùn)算放大器轉(zhuǎn)換成電壓。實(shí)驗(yàn)線路如圖 圖3-8 DA0832內(nèi)部電路 IN0IN7:8路模擬信號(hào)輸入端。 A1、A2、A0 :地址輸入端。ALE地址鎖存允許輸入

14、信號(hào),在此腳施加正脈沖,上升沿有效,此時(shí)鎖存地址碼,從而選通相應(yīng)的模擬信號(hào)通道,以便進(jìn)行A/D轉(zhuǎn)換。 START:?jiǎn)?dòng)信號(hào)輸入端,應(yīng)在此腳施加正脈沖,當(dāng)上升沿到達(dá)時(shí),內(nèi)部逐次逼近寄存器復(fù)位,在下降沿到達(dá)后,開(kāi)始A/D轉(zhuǎn)換過(guò)程。 EOC:轉(zhuǎn)換結(jié)束輸出信號(hào)(轉(zhuǎn)換接受標(biāo)志),高電平有效。 OE:輸入允許信號(hào),高電平有效。 CLOCK(CP):時(shí)鐘信號(hào)輸入端,外接時(shí)鐘頻率一般為640kHz。 Vcc:+5V單電源供電。 、 Vref(+),Vref(-):基準(zhǔn)電壓的正極、負(fù)極。一般Vref(+)接+5V電源,Vref(-)接地。 D7D0:數(shù)字信號(hào)輸出端。 由A2、A1、A0三地址輸入端選通8路模擬信

15、號(hào)中的任何一路進(jìn)行A/D轉(zhuǎn)換。3.3 硬件電路 圖3-9 實(shí)驗(yàn)硬件電路連接圖3.4 實(shí)驗(yàn)連線圖 圖3-10 溫度控制實(shí)驗(yàn)連線圖3.4.1硬件連接圖描述:8255A引腳接線: CS -288H-28BHA口:PA0-PA7 -LCD液晶屏八位數(shù)據(jù)口B口:PB0 紅外線傳感器C口:PC0 -液晶屏的D/I口 PC1-液晶屏的RW口PC2- -液晶屏的E口 AD0809引腳接線CS -298H IN0 -電位器 DA0832引腳接線 CS-280H Ua-直流電機(jī) 4軟件方案4.1 功能模塊圖4-1 軟件功能模塊圖4.2 系統(tǒng)各模塊程序流程圖4.2.1 8255初始化模塊: 8255A的初始化: 圖

16、4-2 8255初始化流程圖4.2.2人數(shù)過(guò)多啟動(dòng)直流電機(jī)模塊:?jiǎn)?dòng)直流電機(jī) 4.2.5顯示程序模塊:液晶屏顯示5源程序清單和注釋 #include <stdio.h>#include <conio.h>#include "ApiExusb.h"#pragma comment(lib,"ApiExusb.lib")char num10=0x30, 0x31, 0x32, 0x33, 0x34, 0x35, 0x36, 0x37, 0x38, 0x39;/GBK 溫CEC2 度B6C8 :A3BA 數(shù)字0-9的GBK編碼void c

17、lear();void cmdsetup();void datasetup();void main() int b; int x=0; int p=0;byte data;/溫度數(shù)據(jù)byte data1;/人數(shù)數(shù)據(jù)float temperature;/溫度char out16;/存放溫度信息的字符串char pout16;/存放人數(shù)信息的字符串int temp ; printf("Press any key to begin!nn");getch();if(!Startup()/*打開(kāi)設(shè)備*/printf("ERROR: Open Device Error!n&q

18、uot;);return; PortWriteByte(0x28b,0x82);/55為方式0,C口輸出,A口輸出,B口輸入 clear(); PortWriteByte(0x288,0x90); cmdsetup(); Sleep(10);while(!kbhit()PortWriteByte(0x298, 0x00);/ 初始化AD0809Sleep(10);PortWriteByte(0x288,0x90);/重定位LCD顯示 cmdsetup();PortReadByte(0x298, &data);/AD0809 轉(zhuǎn)化為數(shù)字量存入data中temperature = 20.0

19、 + 5.0 * data / 255.0;temp=(int)(temperature * 100);/類(lèi)型轉(zhuǎn)換 int w1, w2, w3, w4;w1 = temp / 1000;/分位操作w2 = temp %1000 / 100;/分位操作w3 = temp% 100 / 10;/分位操作w4 = temp % 10;/分位操作out0 = 0xce, out1 = 0xc2;/溫out2 = 0xb6, out3 = 0xc8;/度out4 = 0xa3, out5 = 0xba;/:out6 = numw1+1, out7 =numw2+1;out8 = 0x2e, out9

20、= numw3+1, out10 = numw4+1; for (int j=0;j<11; j+) PortWriteByte(0x288,outj);/LED屏顯示當(dāng)前溫度 datasetup(); PortWriteByte(0x288,0x88); cmdsetup(); Sleep(10);PortWriteByte(0x289,0x00);/8255清零PortReadByte(0x289,&data1);/紅外線傳感器將采集到的信號(hào)輸入給 8255B口b=data1;if(b!=0)x=1;if(b=0&&x=1)p+;x=0;/傳感采集過(guò)程中的停頓

21、標(biāo)志int v1,v2,v3;v1 = p / 100;/分位操作v2 = p% 100 / 10;/分位操作v3 = p% 10;/分位操作pout0 = 0xB5, pout1 = 0xB1;/當(dāng)pout2 = 0xC7, pout3 = 0xB0;/前pout4 = 0xC8, pout5 = 0xCB;/人 pout6 = 0xCA, pout7 = 0xFD;/數(shù)pout8 = 0xA3, pout9 = 0xBA;/:pout10 = numv1;pout11 = numv2;pout12 = numv3; for (int i=0;i<13; i+) PortWriteBy

22、te(0x288,pouti);/將人數(shù)信息顯示到LED屏幕 datasetup(); if(p> 30) PortWriteByte(0x280, 0xff); /0832置為0xff 控制電機(jī)轉(zhuǎn)動(dòng),人數(shù)大于上限30時(shí)轉(zhuǎn)動(dòng) Cleanup();/*關(guān)閉設(shè)備*/void clear() PortWriteByte(0x288,0x0c); cmdsetup();void cmdsetup() PortWriteByte(0x28a,0x00); Sleep(1); PortWriteByte(0x28a,0x04); Sleep(1); PortWriteByte(0x28a,0x00); Sleep(1); void datasetup() PortWriteByte(0x28a,0x01); Sleep(1); PortWriteByte(0x28a,0x05); Sleep(1); PortWrit

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論