電風(fēng)扇模擬控制系統(tǒng)設(shè)計(jì)_第1頁(yè)
電風(fēng)扇模擬控制系統(tǒng)設(shè)計(jì)_第2頁(yè)
電風(fēng)扇模擬控制系統(tǒng)設(shè)計(jì)_第3頁(yè)
電風(fēng)扇模擬控制系統(tǒng)設(shè)計(jì)_第4頁(yè)
電風(fēng)扇模擬控制系統(tǒng)設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩10頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、單片機(jī)原理與應(yīng)用課程設(shè)計(jì)院(系):工業(yè)中心班級(jí):106001姓名:王永安0路體力 4指導(dǎo)老師:王黨利時(shí)間:目錄設(shè)計(jì)題目4總體方案設(shè)計(jì)及分析 4硬件原理圖設(shè)計(jì)4軟件流程圖及程序設(shè)計(jì) 6設(shè)計(jì)總結(jié)和心得體會(huì) 13摘要本次課程設(shè)計(jì)通過(guò) keilC 軟件和 Proteus 軟件設(shè)計(jì)一個(gè)電風(fēng)扇模擬控制系統(tǒng)設(shè)計(jì)?;?AT89C51 芯片實(shí)現(xiàn)了用四位數(shù)碼管實(shí)時(shí)顯示電風(fēng)扇的工作狀態(tài), 最高位顯示風(fēng)類: “自然風(fēng)” 顯示 “ 1” 、 “常風(fēng)”顯示“ 2” 、“睡眠風(fēng)”顯示“ 3”。后 3 位顯示定時(shí)時(shí)間:動(dòng)態(tài)倒計(jì)時(shí)顯示剩余的定 時(shí)時(shí)間,無(wú)定時(shí)顯示“ 000 ”。設(shè)計(jì)一個(gè)“定時(shí)”鍵,用于定時(shí)時(shí)間長(zhǎng)短設(shè)置;設(shè)置一

2、個(gè)“搖頭” 鍵用于控制電機(jī)搖頭。設(shè)計(jì)過(guò)熱檢測(cè)與保護(hù)電路,若風(fēng)扇電機(jī)過(guò)熱,則電機(jī)停止轉(zhuǎn)動(dòng), 電機(jī)冷卻 后電機(jī)又恢復(fù)轉(zhuǎn)動(dòng)。最終完成了設(shè)計(jì)任務(wù)。關(guān)鍵詞: AT89C51 keilC 軟件 Proteus 軟件一、設(shè)計(jì)題目:電風(fēng)扇模擬控制系統(tǒng)設(shè)計(jì)1、 用4個(gè)LED顯示電風(fēng)扇的工作狀態(tài)(1,2,3,4四檔風(fēng)力),顯示風(fēng)類:“自然風(fēng)”、“常風(fēng)” 和“睡眠風(fēng)”。2、設(shè)計(jì) “自然風(fēng)”、 “常風(fēng)”和“睡眠風(fēng)” 三個(gè)風(fēng)類鍵用于設(shè)置風(fēng)類;設(shè)計(jì)一個(gè)“搖頭” 鍵用于控制電機(jī)搖頭。3、設(shè)計(jì)一個(gè)“定時(shí)”鍵,用于定時(shí)時(shí)間長(zhǎng)短設(shè)置;4、設(shè)計(jì)過(guò)熱檢測(cè)與保護(hù)電路,若電風(fēng)扇電機(jī)過(guò)熱,則電機(jī)停止轉(zhuǎn)動(dòng),蜂鳴器報(bào)警,電機(jī)冷卻后 電機(jī)又恢復(fù)

3、轉(zhuǎn)動(dòng)。5、用LCD作為用戶界面顯示風(fēng)扇運(yùn)行模式等信息。6、其他功能。二、總體方案設(shè)計(jì)分析、討論1 、程序說(shuō)明: 為了提高單片機(jī)的工作效率,不讓單片機(jī)的工作消耗在延時(shí)上,所以在考慮單 片幾需要延時(shí)的時(shí)間里,單片機(jī)并不是做的無(wú)用功,僅僅是在執(zhí)行消耗時(shí)間的“空指令”,而根 據(jù)實(shí)際考慮出發(fā),從本程序設(shè)計(jì)的思路來(lái)看,電機(jī)除了數(shù)碼管顯示和 PWM 調(diào)速部分需要一定延時(shí)外,其他指令都是uS級(jí)的,可以忽略不計(jì),所以可以將數(shù)碼管顯示和PWM調(diào)速部分做在一起,即數(shù)碼管每一位顯示需延時(shí)的幾個(gè)毫秒的時(shí)間可以用來(lái)做處理PWM 調(diào)速功能使用,通過(guò)設(shè)定,改變脈寬從而調(diào)速 !經(jīng)過(guò)實(shí)驗(yàn),本方法能夠十分有效的節(jié)約單片機(jī)的資源,并

4、且各項(xiàng)功能能夠很好的工作!2、 程序功能說(shuō)明: 功能總共有三個(gè)按鍵控制“功能鍵 / 加”、“定時(shí)”、“搖頭/減”,其中“功能鍵”“搖頭”為多功能鍵。初始狀態(tài)時(shí):風(fēng)扇不轉(zhuǎn);數(shù)碼管顯示POFF;當(dāng)?shù)谝淮伟础肮δ?/加”時(shí)風(fēng)扇處于“自然風(fēng)”電機(jī)轉(zhuǎn)速最快;當(dāng)?shù)诙伟?“功能 / 加”時(shí)風(fēng)扇處于“常風(fēng)”電機(jī)轉(zhuǎn)速為中速;當(dāng)?shù)谌伟?“功能 /加”時(shí)風(fēng)扇處于“睡眠風(fēng)”電機(jī)轉(zhuǎn)速為低速; 當(dāng)風(fēng)扇處于停止?fàn)顟B(tài)時(shí) 不可進(jìn)入定時(shí)狀態(tài),只有當(dāng)風(fēng)扇運(yùn)轉(zhuǎn)時(shí)才能進(jìn)入定時(shí)狀態(tài),當(dāng)按下“定 時(shí)”鍵進(jìn)入定時(shí)狀態(tài)后(定時(shí)指示燈亮),功能鍵/ 加 鍵 為定時(shí)時(shí)間加,當(dāng)按下“搖頭 /減 鍵時(shí),為定時(shí)時(shí)間減,再次按下定時(shí)鍵時(shí),定時(shí)功能啟動(dòng)

5、,時(shí)間到停止,并 顯示“ POFF”風(fēng)扇運(yùn)轉(zhuǎn)時(shí)按下?lián)u頭,即電機(jī)開(kāi)始搖頭。硬件原理圖:該圖是通過(guò)仿真設(shè)計(jì)和模擬的結(jié)果1918U1R110k34 7 一8碩d6XTAL1XTAL2RSTP0.0/AP0.1/AP0.2/AP0.3/AP0.4/AP0.5/AP0.6/AP0.7/AU2121P0D0Q0D1Q1D2Q2D3Q3D4Q4D5Q5D6Q6D7Q7OFnLE74HC373256912151619293031PSEN ALEEAP20旨P2.1k P2.2/AP2.3/AP2.4/AP2.5/AP2.6/AP2.7/A1duan評(píng)weiP1.0/T2P1.1/T2EXP1.2P1.3P1.

6、4P1.5P1.6P1.71011415R7P3.0/RX戸3匹越P3.2/iNP3.3/INP3.4廠=0P315/:1P3.6/WP3.祈AT89C52U3DOQ(D1Q-D2Q;D3Q3D4Q4D5Q5D6Q6D7Q7OELE174HC373256912141718d13d24d37,weHJ=LU4P0 1 P1 2P2 3P3 45z7COM1B1C2B2C3B3C4B4C5B5C6B6C7B7CA91615121110ULN2003A電風(fēng)扇硬件控制系統(tǒng)*/四、軟件流程圖及程序設(shè)計(jì)*#i nclude#in elude #defi ne uchar un sig ned char#d

7、efi ne uint un sig ned intsbit led=P1A0;sbit duan=卩2人6;sbit wei=P2A7;sbit k1=P3A6; / 功能鍵 / 加鍵(3)sbit k2=P3A4; 定時(shí)功能鍵(1)sbit k3=P3A5;/搖頭鍵/減鍵sbit pwm=P2Al;sbit zz=P2Al;sbit fz=P2A2;uint t=50000,g=1;/g用來(lái)表是選的風(fēng)功能,tt定時(shí)的時(shí)間uchar f,biao1=0,sudd ;int tt=0;uchar kk=1;uint aa=5;*才初始化函數(shù)*void in it ()EA=1;ET0=1;16

8、 位/ TR0=1;TMOD=0X01; / 定時(shí)器 0 工作方式 1TH0=(65536-t)/256;TL0=(65536-t)%256;uchar code sz=0x3F,/*0*/0x06,/*1*/0x5B,/*2*/0x4F,/*3*/0x66,/*4*/0x6D,/*5*/0x7D,/*6*/0x07,/*7*/0x7F,/*8*/0x6F,/*9*/ 0x71,/*F*/ 10 0x5C,/*o*/ /11 0x73/ p 12 ;void delay(uint xms) uint i,j; for(i=xms;i0;i-) for(j=50;j0;j-);pwm調(diào)速兼作延時(shí)

9、*void pwmdelay(uchar qq) pwm=1; delay(1); pwm=0;delay(qq);pwm=1;當(dāng)風(fēng)扇停止時(shí)顯示的函數(shù)*void display2()P0=sz12; duan=1; duan=0;P0=0xfe; wei=1; wei=0; delay(10);/pwmdelay(sudu);P0=sz0; duan=1; duan=0;P0=0xfd;wei=1;wei=0; delay(10);/ pwmdelay(sudu);P0=sz10;duan=1;duan=0;P0=0xfb;wei=1;wei=0;delay(10);/ pwmdelay(su

10、du);P0=sz10;duan=1;duan=0;P0=0xf7;wei=1;wei=0;delay(10);/ pwmdelay(sudu);P0=0xff;wei=1;wei=0;P0=0x00; / 關(guān)閉數(shù)碼管顯示防止閃爍 duan=1;duan=0;顯示 函數(shù) *void display(uint shu)uchar qian,bai,shi,ge; qian=biao1; bai=shu/100; shi=(shu%100)/10;ge=(shu%10);P0=szqian; duan=1; duan=0; P0=0xfe;wei=1;wei=0;/delay(1); pwmdel

11、ay(sudu);P0=szbai;duan=1;duan=0;P0=0xfd;wei=1;wei=0;/delay(1); pwmdelay(sudu);P0=szshi;duan=1;duan=0;P0=0xfb;wei=1;wei=0;/ delay(1); pwmdelay(sudu);P0=szge;duan=1;duan=0;P0=0xf7;wei=1;wei=0;/delay(1); pwmdelay(sudu);P0=0x00; / 關(guān)閉數(shù)碼管顯示防止閃爍 duan=1;duan=0;P0=0xff;wei=1;wei=0;*鍵盤程序 *void kescan()uchar b

12、iao2;/ 一鍵多功能的標(biāo)號(hào)*/if(k1=0)/ 功能鍵 一鍵多功能鍵 自然風(fēng) 常風(fēng) 睡眠風(fēng) 停止 delay(50);if(k1=0)pwm=0; / 關(guān)閉電機(jī) while(!k1);/ 等待釋放按鍵 biao1+;/ 功能選擇 if(biao1=4)/ 只允許四種狀態(tài)biao1=0;*if(biao1!=0) / 功能 0 時(shí) 不可以設(shè)置定時(shí)功能 if(k2=0)/ 定時(shí)功能鍵 按一次設(shè)置 第二次確認(rèn)delay(50);if(k2=0)tt=000; / 如果進(jìn)入定時(shí)功能 則顯示全部清零TRO=O;確認(rèn)按鍵俺下后關(guān)閉定時(shí)器while(!k2);/ 等待釋放按鍵biao2=1;while

13、(biao2)/ 如果不再次按下 K2 則將一直保持設(shè)置狀態(tài)led=0;if(k1=0)delay(50);if(k1=0) while(!k1);tt=tt+10;if(tt990) /tt=0;if(k3=0)delay(50);if(k3=0)while(!k3);tt=tt-10;if(tt0) / 如果進(jìn)入定時(shí)設(shè)置后沒(méi)有設(shè)置時(shí)間則不能退出定時(shí)功biao2=0;TR0=1; / 設(shè)置好定時(shí)功能后開(kāi)啟定時(shí)器 led=1;TR0=1;/ 開(kāi)啟定時(shí)器功能函數(shù) *void gongnen()while(biao1=0)pwm=0;tt=0;kescan(); display2();if(bia

14、o1=1) / 功能 1 自然風(fēng) sudu=0;if(biao1=2)/ 功能 2 常風(fēng) sudu=4;if(biao1=3) / 功能 3 睡眠風(fēng) sudu=10;*/void main()init();while(1)kescan();display(tt);gongnen();*定時(shí)器 0 中斷函數(shù)*void t_0()interrupt 1 TH0=(65536-t)/256;TL0=(65536-t)%256;f+;if(f=20) f=0;tt-;if(tt=0) / 如果定時(shí)到了 顯示為 000,電機(jī)關(guān)閉 tt=000;biao1=0;/ 使電機(jī)不轉(zhuǎn)TR0=0;五、設(shè)計(jì)總結(jié)和心得

15、體會(huì)課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合所學(xué)知識(shí), 發(fā)現(xiàn)、提出、分析和解決實(shí)際問(wèn)題, 鍛煉自身能力的重 要培養(yǎng),是對(duì)我們學(xué)生能力的具體陪練和考察過(guò)程。短短一周的時(shí)間,我們做完了我們小組的單片機(jī)實(shí)驗(yàn),感觸很深, 我們小組做的是 “電風(fēng)扇 模擬控制系統(tǒng)設(shè)計(jì)” 對(duì)我們很有挑戰(zhàn), 雖然在別人眼中我們的實(shí)驗(yàn)很簡(jiǎn)單, 不過(guò)我們還是遇 到了很多困難。隨著科學(xué)發(fā)展的日新月異, 單片機(jī)已成為當(dāng)今計(jì)算機(jī)應(yīng)用中活躍的領(lǐng)域, 在我們的生活中可 以說(shuō)是無(wú)處不在, 因此作為電力系統(tǒng)的學(xué)生不得不掌握它, 這次的實(shí)驗(yàn)設(shè)計(jì), 對(duì)我們是一種 挑戰(zhàn),更是一種考驗(yàn), 怎么才能找到課堂所學(xué)與實(shí)際應(yīng)用的最佳結(jié)合點(diǎn)怎樣才能使自己更專 業(yè)化怎樣才能使自己

16、的設(shè)計(jì)更具有序性,而不會(huì)忙無(wú)一用,這都是我們所要考慮和努力的。 這次的課程設(shè)計(jì)我學(xué)到很多東西, 學(xué)到了怎么去制定設(shè)計(jì), 怎么去實(shí)現(xiàn)設(shè)計(jì), 并掌握了在執(zhí) 行過(guò)程中怎樣克服心理上的不良情緒, 不僅鞏固了所學(xué)的知識(shí), 而且學(xué)習(xí)到了許多書(shū)上所沒(méi) 有的東西,我從中掌握了系統(tǒng)的研究方法,可以進(jìn)行一些簡(jiǎn)易的編程。在這次設(shè)計(jì)任務(wù)中,通過(guò)我們?nèi)说墓餐Γ?老師的精心指導(dǎo),還有和在網(wǎng)上找到的資料, 我們主要掌握了動(dòng)態(tài)發(fā)光顯示數(shù)碼管的編程,掌握了數(shù)據(jù)運(yùn)算的編程方法,這也是編程必須掌握的知識(shí),當(dāng)然仿真與調(diào)試也是一個(gè)很重要的環(huán)節(jié),也讓我們收獲良多,這其中就是硬件和軟件兩部分,雖然我們沒(méi)有做硬件,但軟件的制作與編程我們也做得很認(rèn)真。你必須對(duì)程序的每部分都很熟悉,

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論