版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、<p> 課題名稱 智能電風(fēng)煽 </p><p> 專 業(yè) 電子信息工程 </p><p> 班 級(jí) </p><p> 學(xué)生姓名 </p><p&g
2、t; 學(xué) 號(hào) </p><p> 指導(dǎo)老師 ___________ ____ </p><p><b> 摘 要</b></p><p> 本設(shè)計(jì)以80C52單片機(jī)作為智能電風(fēng)扇控制系統(tǒng)的測(cè)量和控制核心。采用霍爾集成芯片測(cè)量電風(fēng)扇的轉(zhuǎn)速,P
3、WM脈寬調(diào)制技術(shù)控制電機(jī)的轉(zhuǎn)速,用DS18B20溫度傳感器來完成溫度的采集,單片機(jī)通過串行通信來完成電風(fēng)扇轉(zhuǎn)速數(shù)據(jù)處理及轉(zhuǎn)速控制,用液晶12864LCD顯示來實(shí)現(xiàn)人機(jī)交互,采用紅外遙控與接收裝置來完成遙控功能。該系統(tǒng)風(fēng)速調(diào)節(jié)范圍寬、精度高且風(fēng)的舒適度良好、使用起來非常方便。</p><p> 關(guān)鍵字:電風(fēng)扇、單片機(jī)、LCD、無線遙控、DS18B20</p><p><b>
4、目 錄</b></p><p> 一、題目的意義及功能要求………………………………….</p><p> 二、系統(tǒng)框架設(shè)計(jì)………………………………………….</p><p> 三、硬件電路設(shè)計(jì)及描述……………………………………</p><p> 四、軟件流程及描述……………………………………….</p>
5、<p> 五、源代碼…………………………………………………</p><p> 六、測(cè)試與分析…………………………………………….</p><p> 七、設(shè)計(jì)體會(huì)與總結(jié)……………………………………….</p><p><b> 題目意義及功能要求</b></p><p> 作為一種老式家電,電風(fēng)扇具
6、有價(jià)格便宜、擺放方便、體積輕巧等特點(diǎn)。由于大部分家庭消費(fèi)水平的限制,電風(fēng)扇作為一個(gè)成熟的家電行業(yè)的一員,尤其在中小城市,以及鄉(xiāng)村將來一段時(shí)間內(nèi)仍然會(huì)占有市場(chǎng)的大部分份額。 面臨龐大的市場(chǎng)需要的同時(shí),也要提高電風(fēng)扇的市場(chǎng)競(jìng)爭力。使之在技術(shù)含量上有所提高,應(yīng)使風(fēng)扇不僅功能多樣,操作簡便,而且更加安全可靠。 </p><p> 本設(shè)計(jì)主要目標(biāo)是使普通的電風(fēng)扇的功能更加強(qiáng)大,使操作簡單化、智能化,主要實(shí)現(xiàn)以下幾個(gè)部分的
7、功能:</p><p> 1> 溫度智控功能:風(fēng)扇可以感知環(huán)境的溫度,以調(diào)節(jié)風(fēng)扇的轉(zhuǎn)速,達(dá)到更好的工作效果。用戶可以選擇這種智能調(diào)速方式,也可以選擇手動(dòng)設(shè)定方式來控制轉(zhuǎn)速。當(dāng)選擇手動(dòng)設(shè)定方式時(shí),該功能不發(fā)揮作用。</p><p> 2>多級(jí)調(diào)速功能:提供更多的風(fēng)力級(jí)別和風(fēng)型,提高用戶的舒適度。</p><p> 3>液晶顯示功能:使用液晶屏顯
8、示當(dāng)前室溫,風(fēng)扇的轉(zhuǎn)速,風(fēng)扇的工作模式,當(dāng)前時(shí)間,風(fēng)扇工作時(shí)間等參數(shù),美觀大方。</p><p> 4>紅外遙控功能:提供遠(yuǎn)距離非接觸式的風(fēng)扇控制操作。</p><p><b> 系統(tǒng)框架設(shè)計(jì)</b></p><p><b> 1、方案比較</b></p><p><b>
9、a、風(fēng)速轉(zhuǎn)速測(cè)量</b></p><p> 方案一:采用脈沖調(diào)制的紅外發(fā)射——接收器。通過在電風(fēng)扇一邊用紅外管發(fā)射脈沖信號(hào),另一邊接收信號(hào),在脈沖被擋和通過的情況下,接收端分別對(duì)應(yīng)低電平和脈沖串,可檢出此信號(hào)的包絡(luò),其頻率的三分之一即相當(dāng)于單位時(shí)間內(nèi)接收到信號(hào)的次數(shù),也即電風(fēng)扇的轉(zhuǎn)速。但此方法接收到的脈沖會(huì)產(chǎn)生抖動(dòng),容易引起誤判,從而導(dǎo)致處理接受信號(hào)次數(shù)出現(xiàn)較大誤差,是電風(fēng)扇轉(zhuǎn)速計(jì)算不準(zhǔn)確,故不采用
10、此方案。</p><p> 方案二:采用霍爾集成傳感器?;魻柤蓚鞲衅魇菍⒒魻栐?、放大器、施密特觸發(fā)器以及輸出電路集成在一塊芯片上,為用戶提供了一種簡化和較完善功能的磁敏傳感器。將磁片貼在電風(fēng)扇葉上,將霍爾集成傳感器固定在扇葉前的保護(hù)架上,由于霍爾效應(yīng),每當(dāng)磁片通過傳感器時(shí),在輸出端就會(huì)產(chǎn)生一個(gè)脈沖,對(duì)該輸出脈沖計(jì)數(shù),即可測(cè)出電風(fēng)扇轉(zhuǎn)速。此輸出信號(hào)明快,傳送過程中無抖動(dòng)現(xiàn)象,且功耗低,對(duì)溫度的變化穩(wěn)定,靈敏度
11、于磁場(chǎng)移動(dòng)速度無關(guān),用此方法測(cè)出的電風(fēng)扇轉(zhuǎn)速較準(zhǔn)確,故采用此方案。</p><p><b> b、轉(zhuǎn)速控制</b></p><p> 轉(zhuǎn)速控制既是通過控制功率來實(shí)現(xiàn)的。輸入功率大轉(zhuǎn)速快,輸入功率小轉(zhuǎn)速慢。通常調(diào)節(jié)功率的途徑有兩條:一是改變電壓波形的導(dǎo)通角,稱之為調(diào)相:另一個(gè)是波形不變改變其電壓波出現(xiàn)的次數(shù),常稱為脈沖調(diào)功。</p><p>
12、 方案一:采用調(diào)相方式。此方法的優(yōu)點(diǎn)是輸出相對(duì)的連續(xù)、均勻而且調(diào)節(jié)精細(xì)。但有一個(gè)很大的缺點(diǎn)就是不規(guī)則的脈沖電流會(huì)引起輸出畸變及對(duì)負(fù)載產(chǎn)生干擾。</p><p> 方案二:采用脈沖調(diào)功方式。此方法的優(yōu)點(diǎn)是線性度好、抗噪性能強(qiáng)、輸出穩(wěn)定便于微控制器控制。</p><p> 通過比較分析以及綜合考慮系統(tǒng)的要求我們選擇第二種方案。</p><p><b>
13、 c、顯示界面方案</b></p><p> 本系統(tǒng)要能夠切換顯示電風(fēng)扇的轉(zhuǎn)速、當(dāng)前溫度、當(dāng)前擋位、工作模式等,要顯示的內(nèi)容較多。</p><p> 方案一:采用LED顯示。LED只能顯示非常有限的符號(hào)和數(shù)字,對(duì)于本系統(tǒng)如此復(fù)雜的功能是難以實(shí)現(xiàn)的。</p><p> 方案二:采用液晶12864LCD顯示器??梢杂弥形娘@示較為清晰的內(nèi)容,界面良好、直
14、觀。采用此方案來實(shí)現(xiàn)。</p><p><b> d、無線控制</b></p><p> 方案一: 315無線模塊采用平衡傳輸方式,可以實(shí)現(xiàn)多點(diǎn)通信,遙控距離遠(yuǎn),但價(jià)格昂貴。</p><p> 方案二: RS-232是低速率串行單端標(biāo)準(zhǔn),采取不平衡傳輸方式(即所謂單端通信),收、發(fā)端的數(shù)據(jù)信號(hào)是相對(duì)于信號(hào)地的電平而言,其共模抑制能力差,傳
15、送距離短,其為點(diǎn)對(duì)點(diǎn)的通信方式。</p><p> 方案三: 紅外遙控體積小,靈敏度高,外接元件少,抗干擾能力強(qiáng),使用十分方便.且價(jià)格便宜,缺點(diǎn)是遙控距離短,經(jīng)綜合考慮用在本系統(tǒng)上完全能夠滿足要求,所以我們選擇此方案。</p><p> 2、系統(tǒng)總體框圖設(shè)計(jì)</p><p><b> 圖1、系統(tǒng)總體框圖</b></p>&l
16、t;p> 三、硬件電路設(shè)計(jì)及描述:</p><p> 硬件電路主要分為主控電路及顯示電路、紅外接收電路、電機(jī)驅(qū)動(dòng)電路、溫度檢測(cè)電路等四個(gè)部分。</p><p> 相關(guān)電路可以分為如下幾個(gè)部分:</p><p> 3.1主控電路及顯示電路</p><p> 采用STC89s52單片機(jī)作為本系統(tǒng)的核心控制部分,既充分的利用了單片機(jī)
17、的各引腳資源基礎(chǔ),又控制了成本。外加振蕩電路采用12MHz高精度的晶振,以獲得較穩(wěn)定時(shí)鐘頻率,減小測(cè)量誤差。復(fù)位電路采用按鍵電平復(fù)位電路。P0口作為液晶顯示的數(shù)據(jù)口。具體電路如下圖所示:</p><p> 圖2、主控電路及顯示電路</p><p><b> 3.2紅外接收電路</b></p><p> 紅外接收電路采取紅外接收器件HS00
18、38,一體化紅外接收頭HS0038價(jià)格便宜,外圍電路簡單,只有三個(gè)引腳,分別為電源、地、數(shù)據(jù)腳,其中數(shù)據(jù)腳與P3.2口相接,通過外部中斷接收紅外遙控信號(hào)。電路圖如下:</p><p><b> 3.3電機(jī)驅(qū)動(dòng)電路</b></p><p> L298是SGS公司的產(chǎn)品,可驅(qū)動(dòng)2個(gè)電動(dòng)機(jī),OUT1,OUT2和OUT3,OUT4之間可分別接電動(dòng)機(jī),本實(shí)驗(yàn)裝置我們選用驅(qū)動(dòng)
19、一臺(tái)電動(dòng)機(jī)。5,7腳分別接單片機(jī)的P1.1和P1.2口,控制電機(jī)的正反轉(zhuǎn)。EnA,EnB接控制使能端,由于我們只用來驅(qū)動(dòng)一個(gè)電風(fēng)扇的停轉(zhuǎn)。所以用ENA接單片機(jī)的P1.0口。電路圖如下所示:</p><p><b> 圖4、電機(jī)驅(qū)動(dòng)電路</b></p><p><b> 3.4溫度檢測(cè)電路</b></p><p> 單
20、線數(shù)字溫度傳感器DS18B20 采用一線總線接口,大大節(jié)省了系統(tǒng)的I/O 資源。</p><p><b> 圖5、溫度檢測(cè)電路</b></p><p><b> 軟件流程及描述</b></p><p> 智能電風(fēng)煽支持手動(dòng)和自動(dòng)兩種工作模式,開機(jī)時(shí)默認(rèn)的工作模式為自動(dòng)但總開關(guān)為關(guān),我們可以通過紅外遙控進(jìn)行控制,當(dāng)按下
21、遙控器開關(guān)鍵把總開關(guān)打開時(shí),電風(fēng)扇進(jìn)入自動(dòng)工作模式,通過感知環(huán)境的溫度,以調(diào)節(jié)風(fēng)扇的轉(zhuǎn)速,達(dá)到更好的工作效果。用戶可以選擇這種智能調(diào)速方式,也可以選擇手動(dòng)設(shè)定方式來控制轉(zhuǎn)速。當(dāng)選擇手動(dòng)設(shè)定方式時(shí),該功能不發(fā)揮作用。系統(tǒng)在開機(jī)的同時(shí)LCD能顯示出當(dāng)前溫度、工作模式、當(dāng)前擋位等,讓使用者及時(shí)了解系統(tǒng)運(yùn)行前況。</p><p><b> 4.1系統(tǒng)軟件框圖</b></p><
22、p><b> 圖6、系統(tǒng)軟件框圖</b></p><p> 4.2、DS18B20測(cè)溫程序</p><p> DS18B20采用單線制數(shù)據(jù)傳輸,其內(nèi)部數(shù)據(jù)采用兩字節(jié)存儲(chǔ),其中高字節(jié)的低三位和低字節(jié)為溫度數(shù)值大小,高字節(jié)的高五位為符號(hào)位。單片機(jī)溫度采集程序流程圖如下圖。單片機(jī)不斷通過ds18b20獲取外界的溫度值。</p><p>&
23、lt;b> 源代碼</b></p><p> #include<reg52.h></p><p> #include <intrins.h></p><p> #define uchar unsigned char</p><p> #define uint unsigned int<
24、/p><p> #define LCD_data P0 // 液晶引腳定義</p><p> sbit LCD_RS = P2^7; </p><p> sbit LCD_RW = P2^6; </p><p> sbit LCD_EN = P2^5; </p><p>
25、; sbit LCD_PSB = P2^4; </p><p> sbit DQ=P1^6; // ds18b20引腳定義</p><p> bitTflag;</p><p> sbit en=P1^0; // 電機(jī)引腳定義</p><p> sbit c=P1^1;</p><p&
26、gt; sbit d=P1^2;</p><p> sbit jia_key=P3^0;//加速鍵</p><p> sbit jian_key=P3^1;//減速鍵</p><p> sbit zongza=P3^4; //總控制開關(guān)</p><p> sbit xuan=P3^6; //模式選擇按鈕</p>&
27、lt;p> uint aa=0;</p><p> uchar ms=0,temp,num=0,show_num=0,gao_num=1,di_num=3;</p><p> ucharcodetable[]={0x30,0x31,0x32,0x33,0x34,0x35,0x36,0x37,0x38,0x39} ;</p><p> uchar cod
28、e hang1[]={"歡迎您使用"};</p><p> uchar code hang2[]={"智能電風(fēng)扇"};</p><p> uchar code hang3[]={"當(dāng)前溫度:"};</p><p> uchar code hang4[]={"度"};<
29、/p><p> uchar code hang5[]={"當(dāng)前檔位:"};</p><p> uchar code hang6[]={"檔"};</p><p> uchar code hang7[]={"開關(guān)狀態(tài):"};</p><p> uchar code hang8
30、[]={"開"};</p><p> uchar code hang9[]={"關(guān)"};</p><p> uchar code hang10[]={"工作模式:"};</p><p> uchar code hang11[]={"自動(dòng)"};</p><p&
31、gt; uchar code hang12[]={"手動(dòng)"};</p><p> void delay_ms(unsigned int ms)//延時(shí)函數(shù) 1ms</p><p><b> {</b></p><p> unsigned int i,j;</p><p> f
32、or(j=0;j<=ms;j++)</p><p> for(i=0;i<=120;i++);</p><p><b> }</b></p><p> void delayus(uint t) </p><p><b> {</b></p><p> w
33、hile(t--);</p><p><b> }</b></p><p> /**********************************************************</p><p><b> 歡迎界面</b></p><p> ****************
34、*******************************************</p><p> void welcom(void)</p><p><b> {</b></p><p><b> uchar i;</b></p><p> lcd_wcmd(0x91);</p
35、><p> for(i=0;i<10;i++)</p><p><b> { </b></p><p> lcd_wdat(hang1[i]);</p><p> delay_ms(100);}</p><p> delay_ms(100);</p><p>
36、 lcd_wcmd(0x89);</p><p> for(i=0;i<10;i++)</p><p><b> { </b></p><p> lcd_wdat(hang2[i]);</p><p> delay_ms(100);</p><p><b> }<
37、/b></p><p> delay_ms(100);</p><p> delay_ms(1000);</p><p> for(i=0;i<2;i++)</p><p><b> {</b></p><p> lcd_wcmd(0x08); //關(guān)顯
38、示</p><p> delay_ms(700);</p><p> lcd_wcmd(0x0c); //開顯示</p><p> delay_ms(700);</p><p><b> } </b></p><p><b> }</b></p&
39、gt;<p> /**********************************************************</p><p><b> ds18b20函數(shù)</b></p><p> ***********************************************************</p>
40、<p> void init_ds18b20(void) // 初始化ds18b20</p><p><b> {</b></p><p><b> uchar n;</b></p><p><b> DQ=1;</b></p><p> delayu
41、s(8);</p><p><b> DQ=0;</b></p><p> delayus(80);</p><p><b> DQ=1;</b></p><p> delayus(8);</p><p><b> n=DQ;</b></
42、p><p> delayus(4);</p><p><b> }</b></p><p> void write_byte(uchar dat) /*寫入一個(gè)字節(jié) */</p><p><b> {</b></p><p><b> uchar i;&l
43、t;/b></p><p> for(i=0;i<8;i++)</p><p><b> {</b></p><p><b> DQ=0;</b></p><p> //delayus(4);</p><p> DQ=dat&0x01;<
44、;/p><p> delayus(4);</p><p><b> DQ=1;</b></p><p><b> dat>>=1;</b></p><p><b> }</b></p><p> delayus(4);</p>
45、;<p><b> } </b></p><p> uchar read_byte(void) //讀一個(gè)字節(jié)</p><p><b> {</b></p><p> uchar i,value;</p><p> for(i=0;i<8;i++)</p&g
46、t;<p><b> {</b></p><p><b> DQ=0;</b></p><p> value>>=1;</p><p><b> DQ=1;</b></p><p> if(DQ) value|=0x80;</p>
47、<p> delayus(4);}</p><p> return value;</p><p><b> } </b></p><p> uchar readtemperature(void)</p><p><b> {</b></p><p>
48、; uchar a,b;</p><p> uchar y1,y2,y3;</p><p> init_ds18b20(); </p><p> write_byte(0xcc);//跳過ROM</p><p> write_byte(0x44);//啟動(dòng)溫度測(cè)量</p><p> delayus(300)
49、;</p><p> init_ds18b20();</p><p> write_byte(0xcc);//跳過ROM</p><p> write_byte(0xbe); //讀溫度命令</p><p> delayus(300);</p><p> a=read_byte();//讀低8位</p
50、><p> b=read_byte();//讀高8位</p><p> if((b&0x80)==0x80) //判斷溫度正負(fù)</p><p><b> {</b></p><p> b=~b; //負(fù)溫度處理(DS18B20的負(fù)溫度是正的</p><p><
51、;b> a=~a+1;</b></p><p> y1=a>>4;//降低精度(去掉小數(shù)點(diǎn))</p><p> y2=b<<4; //減小測(cè)量范圍(-55°C---99°C)</p><p><b> y3=y2|y1;</b></p><
52、;p><b> Tflag=0;</b></p><p><b> }</b></p><p><b> else</b></p><p><b> {</b></p><p> y1=a>>4;//降低精度(去掉小數(shù)點(diǎn)
53、)</p><p> y2=b<<4; //減小測(cè)量范圍(-55°C---99°C)</p><p><b> y3=y2|y1;</b></p><p><b> Tflag=1;</b></p><p><b> } </b&
54、gt;</p><p> return y3;</p><p><b> }</b></p><p> /**********************************************************</p><p><b> 電機(jī)控制模塊</b></p>
55、<p> ***********************************************************</p><p> void su_du_zhuan_huan() //根據(jù)速度標(biāo)志進(jìn)行數(shù)據(jù)處理</p><p><b> {</b></p><p> switch(num)</p&g
56、t;<p><b> {</b></p><p> case 0: show_num=1;//數(shù)碼管第一位顯示的數(shù)據(jù)</p><p> gao_num=2;//PWM信號(hào)中高電平持續(xù)時(shí)間標(biāo)志為1</p><p> di_num=6;//PWM信號(hào)中低電平持續(xù)時(shí)間標(biāo)志為3,</p><p><
57、b> break;</b></p><p> case 1: show_num=2;//數(shù)碼管第一位顯示的數(shù)據(jù)</p><p> gao_num=4;//PWM信號(hào)中高電平持續(xù)時(shí)間標(biāo)志為2</p><p> di_num=4;//PWM信號(hào)中低電平持續(xù)時(shí)間標(biāo)志為2</p><p><b> break;
58、</b></p><p> case 2: show_num=3;//數(shù)碼管第一位顯示的數(shù)據(jù)</p><p> gao_num=6;//PWM信號(hào)中高電平持續(xù)時(shí)間標(biāo)志為3</p><p> di_num=2;//PWM信號(hào)中低電平持續(xù)時(shí)間標(biāo)志為1</p><p><b> break;</b><
59、;/p><p> case 3: show_num=4;//數(shù)碼管第一位顯示的數(shù)據(jù)</p><p> gao_num=8;//PWM信號(hào)中高電平持續(xù)時(shí)間標(biāo)志為4</p><p> di_num=0;//PWM信號(hào)中低電平持續(xù)時(shí)間標(biāo)志為0</p><p><b> break;</b></p><
60、p><b> }</b></p><p><b> }</b></p><p> void qudong() //控制電機(jī)程序</p><p><b> {</b></p><p><b> uchar i;</b></p&g
61、t;<p> if(di_num!=0)</p><p><b> {</b></p><p> for(i=0;i<di_num;i++)</p><p><b> {</b></p><p> c=0; //實(shí)現(xiàn)PWM信號(hào)低電平輸出</p><
62、p> display(); //利用顯示函數(shù)起延時(shí)作用,這樣也不影響數(shù)</p><p><b> }</b></p><p><b> }</b></p><p> for(i=0;i<gao_num;i++)</p><p><b> {</b><
63、/p><p> c=1;//實(shí)現(xiàn)PWM信號(hào)高電平輸出</p><p> display();</p><p><b> }</b></p><p><b> }</b></p><p> void key() //按鍵檢測(cè)處理函數(shù)</p><p&g
64、t;<b> {</b></p><p> if(jia_key==0)</p><p><b> {</b></p><p> delay_ms(5); //消抖</p><p> if(jia_key==0)</p><p><b> {</
65、b></p><p> num++; //加速鍵按下,速度標(biāo)志加1</p><p> if(num==4)</p><p> num=3; //已經(jīng)達(dá)到3,就保持</p><p> while(jia_key==0) ; //等待按鍵松開</p><p><b> }</b>
66、;</p><p><b> }</b></p><p> if(jian_key==0)</p><p><b> {</b></p><p> delay_ms(5);</p><p> if(jian_key==0)</p><p>&
67、lt;b> {</b></p><p> if(num!=0) //減速鍵按下,速度標(biāo)志減1</p><p><b> num--;</b></p><p><b> else</b></p><p> num=0; //已經(jīng)達(dá)到最小則保持</p>
68、<p> while(jian_key==0);</p><p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> /**********************************
69、************************</p><p><b> 溫度控制</b></p><p> ***********************************************************</p><p> void wendu(void)</p><p><b>
70、; {</b></p><p> if(temp>38) num=3;</p><p> else if(temp>32) num=2;</p><p> else if(temp>26) num=1;</p><p> else if(temp>20) num=0;</p><
71、;p> else en=0;</p><p><b> }</b></p><p> /**********************************************************</p><p><b> 總開關(guān)控制</b></p><p> *******
72、****************************************************</p><p> void SW(void)</p><p><b> {</b></p><p><b> uchar i;</b></p><p> if(zongza==0)<
73、;/p><p><b> {</b></p><p> delay_ms(5); //消抖</p><p> if(zongza==0)</p><p><b> {</b></p><p><b> aa++; </b></p>
74、<p> while(zongza==0) ; //等待按鍵松開</p><p><b> }</b></p><p><b> }</b></p><p> if(aa%2!=0) </p><p><b> {</b></p>&
75、lt;p><b> en=1;</b></p><p> lcd_wcmd(0x8f);</p><p> for(i=0;i<2;i++)</p><p><b> { </b></p><p> lcd_wdat(hang8[i]);</p><p>
76、; delay4us();</p><p><b> }</b></p><p><b> }</b></p><p> if(aa%2==0)</p><p><b> {</b></p><p><b> en=0;</b
77、></p><p> lcd_wcmd(0x8f);</p><p> for(i=0;i<2;i++)</p><p><b> { </b></p><p> lcd_wdat(hang9[i]);</p><p> delay4us();</p><
78、p><b> }</b></p><p><b> }</b></p><p><b> }</b></p><p> /**********************************************************</p><p><
79、;b> 模式選擇</b></p><p> ***********************************************************</p><p> void chose(void)</p><p><b> {</b></p><p> if(xuan==0)
80、</p><p><b> {</b></p><p> delay_ms(5); //消抖</p><p> if(xuan==0)</p><p><b> {</b></p><p><b> ms++;</b></p>
81、<p><b> if(ms==2)</b></p><p><b> ms=0; </b></p><p> while(zongza==0) ; //等待按鍵松開</p><p><b> }</b></p><p><b> }&
82、lt;/b></p><p><b> }</b></p><p> void main()// 主函數(shù)</p><p><b> {</b></p><p><b> uchar i;</b></p><p><b>
83、en=0;</b></p><p><b> d=0;</b></p><p> LCD_PSB=1; // 選擇顯示模式為串行通信模式</p><p> lcd_init(); //初始化液晶,清屏DDRAM</p><p> welcom();//歡迎界面</p>&l
84、t;p> lcd_wcmd(0x01);//清屏</p><p><b> while(1)</b></p><p><b> {</b></p><p> lcd_wcmd(0x01);//清屏</p><p> temp=readtemperature(); //讀取溫度&l
85、t;/p><p> delay_ms(5);</p><p><b> SW();</b></p><p><b> chose();</b></p><p><b> if(ms==0)</b></p><p><b> {</b
86、></p><p><b> wendu();</b></p><p> lcd_wcmd(0x9e);</p><p> for(i=0;i<4;i++)</p><p><b> { </b></p><p> lcd_wdat(hang11[i])
87、;</p><p> delay4us();</p><p><b> }</b></p><p><b> }</b></p><p><b> if(ms==1)</b></p><p><b> {</b><
88、;/p><p><b> key();</b></p><p> lcd_wcmd(0x9e);</p><p> for(i=0;i<4;i++)</p><p><b> { </b></p><p> lcd_wdat(hang12[i]);</p&g
89、t;<p> delay4us();</p><p><b> }</b></p><p><b> }</b></p><p> su_du_zhuan_huan();</p><p><b> qudong();</b></p>&l
90、t;p> display(); //送12864顯示</p><p> delay_ms(5);</p><p> Clear_GDRAM();</p><p><b> }</b></p><p><b> }</b></p><p><b>
91、 測(cè)試與分析</b></p><p><b> 測(cè)試儀器</b></p><p> 示波器:Tektronix TDS1002</p><p> 萬用表:Fluke 17B</p><p><b> 指標(biāo)測(cè)試</b></p><p><b>
92、轉(zhuǎn)速測(cè)量</b></p><p> 以900轉(zhuǎn)/分鐘為起始轉(zhuǎn)速,以800轉(zhuǎn)/分鐘為變化步長,經(jīng)反復(fù)測(cè)量取平均值并記錄9組數(shù)據(jù),從表中數(shù)據(jù)我們可以發(fā)現(xiàn),誤差隨著轉(zhuǎn)速的增大而變大。經(jīng)本組成員的反復(fù)分析計(jì)算,最后發(fā)現(xiàn)引起誤差的原因可能是因?yàn)榛魻杺鞲衅鞯牟粚?duì)秤以及磁場(chǎng)變化等,并且誤差比較小完全處于可接受范圍之內(nèi),不會(huì)引響本系統(tǒng)的正常工作,沒必要再加以改進(jìn)。</p><p><b
93、> 設(shè)計(jì)體會(huì)與總結(jié)</b></p><p> 課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識(shí),發(fā)現(xiàn),提出,分析和解決實(shí)際問題,鍛煉實(shí)踐能力的重要環(huán)節(jié),是對(duì)學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程。</p><p> 回顧起此次單片機(jī)課程設(shè)計(jì),我們感慨頗多,從選題到定稿,從理論到實(shí)踐,可以說得是苦多于甜,但是可以學(xué)到很多很多的的東西,同時(shí)不僅可以鞏固了以前所學(xué)過的知識(shí),而且學(xué)到了很多
94、在書本上所沒有學(xué)到過的知識(shí)。通過這次課程設(shè)計(jì)使我懂得了理論與實(shí)際相結(jié)合是很重要的,只有理論知識(shí)是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知識(shí)與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正提高自己的實(shí)際動(dòng)手能力和獨(dú)立思考的能力。在設(shè)計(jì)的過程中遇到問題,可以說得是困難重重,遇到過各種各樣的問題,同時(shí)在設(shè)計(jì)的過程中發(fā)現(xiàn)了自己的不足之處,對(duì)以前所學(xué)過的知識(shí)理解得不夠深刻,掌握得不夠牢固,比如說不懂一些元器件的使用方法,對(duì)紅外發(fā)射與接收的不熟悉……雖然遇到的困
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 《單片機(jī)課程設(shè)計(jì)》報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)課程設(shè)計(jì)報(bào)告---單片機(jī)數(shù)字時(shí)鐘
- 單片機(jī)課程設(shè)計(jì)報(bào)告---單片機(jī)秒表系統(tǒng)設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)---智能路燈控制
- 單片機(jī)課程設(shè)計(jì)---智能路燈控制
- 單片機(jī)課程設(shè)計(jì)---電動(dòng)智能小車
- 單片機(jī)課程設(shè)計(jì)報(bào)告——單片機(jī)控制步進(jìn)電機(jī)
- 單片機(jī)課程設(shè)計(jì)報(bào)告---單片機(jī)控制秒表系統(tǒng)
- 單片機(jī)課程設(shè)計(jì)--智能小車—硬件設(shè)計(jì)
- 單片機(jī)課程設(shè)計(jì)報(bào)告doc
- 單片機(jī)課程設(shè)計(jì)課題報(bào)告
- btec單片機(jī)課程設(shè)計(jì)報(bào)告
- 單片機(jī)應(yīng)用課程設(shè)計(jì)報(bào)告
評(píng)論
0/150
提交評(píng)論