版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領
文檔簡介
1、沈陽工程學院課程設計設計題目:直流電機控制器程序設計系 別 班級學生姓名 學號指導教師 職稱 起止日期:2010年12月27日起至2011年1月7日止沈陽工程禽院課程設計任務書課程設計題目:直流電機控制器程序設計系 別班級學生姓名 學號_指導教師職稱課程設計進行地點:任務下達時間:10年12月27日起止日期: 10年12月27日起至11年1月7日止教研室主任年 月 日批準1. 設計主要內(nèi)容及要求;編寫直流電機控制器程序。要求:1)具有PWM調(diào)速功能。2)可以固定值調(diào)速,也可以連續(xù)調(diào)速。3)能夠進行速度級別顯示。2. 對設計論文撰寫內(nèi)容、格式、字數(shù)的要求;(1).課程設計論文是體現(xiàn)和總結(jié)課程設計
2、成果的載體,一般不應少于3000 字。(2).學生應撰寫的內(nèi)容為:中文摘要和關(guān)鍵詞、目錄、正文、參考文獻 等。課程設計論文的結(jié)構(gòu)及各部分內(nèi)容要求可參照沈陽工程學院畢業(yè)設計(論 文)撰寫規(guī)范執(zhí)行。應做到文理通順,內(nèi)容正確完整,書寫工整,裝訂整齊。(3).論文要求打印,打印時按沈陽工程學院畢業(yè)設計(論文)撰寫規(guī) 范的要求進行打印。(4).課程設計論文裝訂順序為:封面、任務書、成績評審意見表、中文 摘要和關(guān)鍵詞、目錄、正文、參考文獻。3. 時間進度安排;順序階段日期計劃完成內(nèi)容備注112月27日教師講解題目,學生查閱相關(guān)資料212月28日查閱相關(guān)資料、進行方案論證312月29日確定調(diào)速和顯示方法41
3、2 月 30、31日編寫程序51 月 4、5 R調(diào)試程序61月6日撰寫論文71月7日論文答辯沈陽工程學院單片機課程設計成績評定表系(部):班級:學生姓名:_指導教師評審意見評價 內(nèi)容具體要求權(quán)重評分加權(quán) 分調(diào)研 論證能獨立查閱文獻,收集資料:能制左課程設計方案 和日程安排。0. 15432工作 能力 態(tài)度工作態(tài)度認真,遵守紀律,岀勒情況是否良好,能 夠獨立完成設計工作,0.25432工作 量按期圓滿完成規(guī)龍的設計任務,工作量飽滿,難度 適宜。0.25432說明 書的 質(zhì)量說明書立論正確,論述充分,結(jié)論嚴謹合理,文字 通順,技術(shù)用語準確,符號統(tǒng)一,編號齊全,圖表 完備,書寫工整規(guī)范。0.5543
4、2指導教師評審成績 (加權(quán)分合計乘以12)分加權(quán)分合計指導教師簽名:年 月曰評閱教師評審意見評價 內(nèi)容具體要求權(quán)重評分加權(quán) 分查閱 文獻查閱文獻有一泄廣泛性;有綜合歸納資料的能力0.25432工作 量工作量飽滿,難度適中。0.55432說明 書的 質(zhì)量說明書立論正確,論述充分,結(jié)論嚴謹合理,文字 通順,技術(shù)用語準確,符號統(tǒng)一,編號齊全,圖表 完備,書寫工整規(guī)范。0.35432評閱教師評審成績 (加權(quán)分合計乘以8)分加權(quán)分合計評閱教師簽名:年 月曰課程設計總評成績分中文摘要直流電動機以其良好的線性調(diào)速特性、簡單的控制性能、較高的效率、優(yōu) 異的動態(tài)特性,一直占據(jù)著調(diào)速控制的統(tǒng)治地位。但是模擬控制電
5、路有以下缺 陷:模擬電路容易隨時間漂移,會產(chǎn)生一些不必要的熱損耗,以及對噪聲敬感等。 在用了 PWM技術(shù)后,避免了以上的缺陷,實現(xiàn)了數(shù)字方式來控制模擬信號,可 以大幅度降低成本和功耗。PWM輸出脈沖占空比的變化,利用占空比的變化調(diào) 整加在電機電樞繞組上的電壓,改變電壓隨即改變電機電流,轉(zhuǎn)速依據(jù)電流的 大小來改變。脈寬調(diào)制(P刑0是利用數(shù)字輸出對模擬電路進行控制的一種有效技 術(shù),尤其是在對電機的轉(zhuǎn)速控制方面,可大大節(jié)省能量。系統(tǒng)的響應速度和穩(wěn) 定精度等指標比較好;具有很強的抗噪性,且有節(jié)約空間、比較經(jīng)濟;電樞電流 的脈動量小,容易連續(xù),而且可以不必外加濾波電抗也可以平穩(wěn)丄作;系統(tǒng)的調(diào) 速范圉寬;
6、使用元件少、線路簡單。我的設計方案主要是通過控制定時器的初值, 實現(xiàn)占空比可調(diào),還應用了單片機中的LCD顯示,定時器,外部中斷從而達到 學習、了解單片機相關(guān)指令在各方面的應用。它能實現(xiàn)的基本功能包括運行的 開啟與停止,連續(xù)調(diào)速,固定值調(diào)速,LCD顯示,并且實現(xiàn)連續(xù)調(diào)速與固定值 調(diào)速之間的雙向切換功能。關(guān)鍵詞單片機,LCD顯示,PWM無極調(diào)速,外部中斷目錄課程設計任務書I沈陽工程學院Ill單片機 課程設計成績評定表Ill中文摘要IV1設計任務描述1設計題目:直流電機控制器程序設計112設計要求11.2.1設計目的12設計思路23設計方框圖34各部分程序設計及參數(shù)計算441PWM調(diào)速44. 2定時
7、器初始化: 44. 3連續(xù)調(diào)速54. 4連續(xù)調(diào)速跳轉(zhuǎn)到固定值調(diào)速64. 5固定值調(diào)速74. 6固定值調(diào)速跳轉(zhuǎn)到連續(xù)調(diào)速84. 7液晶顯示84.8燈循環(huán)亮104.9延時105單片機和主要電路簡介115. 1 C8051單片機簡介115. 2 PWM調(diào)速原理115. 3液晶顯示電路116程序流程圖137小結(jié)148致謝159參考文獻16附錄程序清單171設計任務描述1.1設計題目:直流電機控制器程序設計1.2.1設計目的熟練地應用C8051單片機,運用定時器,外部中斷和液晶顯示。采用PWM 調(diào)速是比較方便的。通過改變電機電樞電圧接通時間與通電周期的比值(占空比) 來控制電機速度。課程設計能夠?qū)⑺鶎W內(nèi)
8、容應用到實踐。1.2. 2基本要求1)具有PWM調(diào)速功能。2)可以固定值調(diào)速,也可以連續(xù)調(diào)速。3)能夠進行速度級別顯示。1.2.3發(fā)揮部分1)單片機外部中斷能控制電動機開啟與停止2)當開啟 PWM 脈沖時,LCD 顯示 welcome to this system3)LCD能夠?qū)崟r顯示電動機的當前轉(zhuǎn)速THE SPEED IS r/min4)LCD能夠顯示電動機的狀態(tài) 加速顯示up減速顯示down5)通過LED顯示燈的兩滅,可以知道現(xiàn)在的脈沖占空比的值6)可以實現(xiàn)電動機連續(xù)調(diào)速與固定值調(diào)速之間的雙向切換2設計思路調(diào)速信號的產(chǎn)生眾所周知,直流電動機轉(zhuǎn)速n可表示如下,=匕山K式中:U-電樞兩端的電壓
9、I-電樞電流R -電樞電路總電阻;-每級磁通量 k-0 電動機結(jié)構(gòu)參數(shù)。 從式中可知,改變U、R等變量都可達到調(diào)速的H的,但最方便有效的調(diào)速方法是對電樞電壓U進行控制。設計方案是應用PWM脈沖寬度調(diào)制技術(shù)實現(xiàn)速度的調(diào)節(jié),通過改變電機電樞 電壓接通時間與通電周期的比值(占空比)來控制電機速度。即通過調(diào)節(jié)高低電平T的比值來調(diào)節(jié)占空比,可以用來個定時器TO, T1來實現(xiàn),則占空比 =T + 7"0 當我們選擇定時方式1時,每次都要重裝初值,可以通過改變定時的重裝初值, 來改變定時器的定時時間,從而來改變占空比。1. 無級調(diào)速:選用了兩個定時器TO和T1,分別控制高電平和低電平,每次按下中斷
10、6, 定時器TO加100,定時器T1減100,每次按下中斷7,定時器T0減100,定時 器T1加100,這樣就實現(xiàn)了定時周期不變,占空比改變,高電平所占時間增加, 低電平所占時間減小,此時輸出電壓變大,若連接電動機,電動機處于加速狀態(tài)。 高電平所占時間減小,低電平所占時間增大,此時輸出電壓變小,若連接電動機, 電動機處于減速狀態(tài)。2. 固定值調(diào)速:在固定值調(diào)速過程中,每次按下中斷6,程序跳轉(zhuǎn)到不同初始值的設定程序, 執(zhí)行不同初始值的程序,轉(zhuǎn)速就不同,從而實現(xiàn)固定值調(diào)速。3. 液晶顯示:因為調(diào)速過程中一直保持周期不變,則高電平的時長與電流的大小成正比, 而高電平的時長,與定時器的初值有關(guān),定時器
11、初值經(jīng)過運算后的結(jié)果發(fā)送給 LCD顯示,這樣可以使顯示的數(shù)值更接近實際轉(zhuǎn)速,而不是憑空想象,具有實際 用途。在每次加速的子程序后,把一個變量置1,然后在顯示程序中對這一位進 行判斷,若如果為1,則顯示up,不為1,則顯示down,從而能夠?qū)铀俸蜏p速在 液晶中顯示出來。同理,在液晶顯示程序中,對另一個變量進行判斷,可以再開 啟時顯示 welcome to this system4. 燈的顯示:在固定值調(diào)速的過程中每按下IT6,電動機的轉(zhuǎn)速發(fā)生變化,當不同的燈亮 時,我們就可以知道現(xiàn)在占空比是多少,有利于觀察和調(diào)節(jié)占空比。5停止:在固定值調(diào)速中,按下INT6能跳轉(zhuǎn)到我設定的5個固定值,如果不按I
12、NT7, 再按下IT7時,電動機停轉(zhuǎn)。3設計方框圖、連續(xù)減速,固上值調(diào)速以及*外部中斷6電動機的開啟C8051F020 單片 機>電動機的停止和連續(xù)加速外部中斷7連續(xù)減速和固左值的切換*4各部分程序設計及參數(shù)計算4. 1定時器初始化:1) 選擇時鐘脈沖fosc= 16MHz并選擇12分頻,貝|JCKCON=OOH2) 選擇定時器TO和T1,定時器TO的中斷向量表是OOOBH,定時器T1的中斷向量表是OO1BH,工作方式1, TMOD=11H,初值相等,實現(xiàn)方波。3) 輸出端口為推挽方式4) we (0);顯示0轉(zhuǎn)/分5) while(l):不斷循環(huán)執(zhí)行以下程序初始化部分程序:CKCO N
13、&=OXE7;/選擇 12 分頻TMOD=OX11;/選擇定時器0, 1和工作方式一OSCICN=0X07;/選擇系統(tǒng)時鐘 16MHZP00=0:/ 輸出端 口清零TH0=c3;/ 定時器 T0 賦初值TL0=c4;THl=cl;/定時器T1 賦初值TLl=c2;EA=1;/中斷總使能ET0= 1;/ 允許 TO 中斷ET1=1;/ 允許T1 中斷we(0) ;/ 顯示 0轉(zhuǎn)/分XBR2=0X40;/交義開關(guān)使能P1MDOUT=OXFF;/P1 口輸出方式為推挽EIE2=0X30;/中斷6, 7使能while(l);4.2方波脈沖的實現(xiàn)當按下INT6時,執(zhí)行TRO二1,從而開啟定時器T
14、0,當定時時間到了以后,跳 到中斷TIMEO,并且關(guān)掉T0,開啟T1;進入中斷TIME1后,并且關(guān)掉T1,開啟T0: 這樣不斷的循環(huán),就出現(xiàn)了方波。/定時器中斷0/void time0() in term pt 1P00= 1;/端口輸出高電平TR0=0;/關(guān)閉定時器TOTH l=cl;/重裝初值TLl=c2;TR 1=1;/ 開啟定時器 T 1/定時器中斷 1 /void time 1() interrupt 3 P00=0;/端口醯出低電平TR 1 =0;/ 關(guān)閉定時器T1TH0二c3;/重裝初值TL0=c4;TR0= 1;/ 關(guān)閉定時器TO4. 3連續(xù)減速調(diào)速用c5來記錄當前的狀態(tài),第一
15、次按INT6時,執(zhí)行easel,即開啟方波脈沖, 還執(zhí)行才C11二0,即液晶會顯示welcome to this system:第.次按INT6時,執(zhí)行case2,調(diào)用lianxujian()函數(shù),并且調(diào)用we(c3), 顯示當前轉(zhuǎn)速;以下同理,第五次按INT6時,執(zhí)行cased,調(diào)用lianxujianO函 數(shù),并且調(diào)用we(c3),顯示當前轉(zhuǎn)速;并且執(zhí)行c5=l;調(diào)回case2,繼續(xù)減速,從 而實現(xiàn)連續(xù)減速。void INT6 interrupt 18P3IF=0; /中斷標志位清零c5=c5+01;switch(c5) case l:TR0=l;/開啟定時TO, P0.0輸出方波 cl
16、1=0;/顯示 welcome to this system we(c3);/顯示當前轉(zhuǎn)速 for(i=0;i<=24000;i +);/延時程序break;case 2:lianxujian();we(c3);/顯示當前轉(zhuǎn)速 for(i=0;i<=24000;i+););break;case 3:lianxujian();we(c3);for( i=0: i <=24000; i+); break;case 4:lianxujian();we(c3);for (i; i <=24000; i +);); break;case 5:lianxujian();c5=l;/
17、c5置1,回到easel,實現(xiàn)連續(xù)加速we(c3);for(i ;i<=24000;i+);); break;4. 5固定值調(diào)速我所設計的程序中,有五個固定值,當?shù)竭_第五個固定值后,再按INT6,則 電動機停轉(zhuǎn)。在P30沒有接地時,當按INT7時,執(zhí)行c5=5,這之后第一次按下INT6 時,就回執(zhí)行case6,調(diào)用gudingzhi (n)函數(shù),實現(xiàn)固定值調(diào)速。第二次按下INT6 時,就回執(zhí)行case7,調(diào)用gudingzhi (n)函數(shù),實現(xiàn)固定值調(diào)速。第三次按下INT6 時,就回執(zhí)行case7,調(diào)用gudingzhi (n)函數(shù),實現(xiàn)固定值調(diào)速。由于每次的n 值不同,就會有不同的占空
18、比。第六次按下INT6時,就回執(zhí)行casell,執(zhí)行TRO=O, TR1二0,從而關(guān)閉電動機。同時可以通過觀察燈的亮滅來,知道當前的占空比是 多少,當LED1亮時,占空比為10%;當LED3亮時,占空比為30%;當LED5亮時,占 空比為50%:當LED7亮時,占空比為70%:當LED全滅時,占空比為90%; 跳轉(zhuǎn)部分程序:case 6:gudingzhi(12);/占空比 10%we(c3);Pl 1=0:for(i=0;i<=18000;i+););break;case 7:gudingzhi(6);/占空比30%we(c3);P1I = 1;Pl 3=0;for(i=0;i<
19、=18000;i+);break;case 8:gudingzhi(O);/占空比50%we(c3);Pll = l;P13=l;P15=0;for(i=0;i<=20000;i+););break;case 9:gudingzhi(-6);/70%we(c3);Pll=l;P13=l;P15=l;P17=0;for( i=0: i<=20000; i+); break;case 10:gudingzhi(-12);/ 占空比90% we(c3);P17=l;for(i=0;i<=20000;i+););break;case 11:TR0=0;/ 關(guān)閉定時器TOTR1 =0;
20、/關(guān)閉定時器T1 c5=0;/回到連續(xù)加調(diào)速Pl6=0;for(i;i<=24000;i+); break;)4. 6固定值調(diào)速跳轉(zhuǎn)到連續(xù)調(diào)速由于P30接地,則P30=0,不會發(fā)生跳轉(zhuǎn),每按INT7后,執(zhí)行if以后的語句, 實現(xiàn)固定值與連續(xù)減之間的切換;當P30沒有接地,即P30=l,則執(zhí)行else后的語 句:當電動機處于固定值狀態(tài)時,實現(xiàn)固定值與連續(xù)加速之間的調(diào)速;當處于連 續(xù)減的狀態(tài)時,就實現(xiàn)了連續(xù)減和連續(xù)加的切換。因此實現(xiàn)了連續(xù)加,連續(xù)減, 和固定值三者之間的調(diào)速。P30=0,當按下INT7時,會在C5=l和C5=5之間切換,再按INT6會實現(xiàn)固定 值與連續(xù)減之間的切換;P30=l
21、,每按下INT7時,執(zhí)行連續(xù)加速。從而實現(xiàn)固定值和連續(xù)減速到連續(xù) 加速的控制;轉(zhuǎn)換的部分程序如下:void INT7 internjpt 19 P3IF=0;if(P30=0)/當P30=0時,執(zhí)行這個程序c6=c6+01; III這個程序?qū)崿F(xiàn)連減和固定值調(diào)switch(c6) III!速的切換 case 1:P3IF=O;c5=l;/跳到連續(xù)減調(diào)速P30=l;/P30 端口置1we(c3);for(i=0:i<=9000;i+););break;case 2:P3IF=0;c5=5;/跳到固定值調(diào)速P30=l;/P30 端口置1c6=0;we(c3);(for(i=0;i<=90
22、00;i+););break;elseclO二clO+Ol;/當P3O=1時,實現(xiàn)連續(xù)加調(diào)速switch(clO) case 1 : P3IF=O;liannxujia();P3O=O;we(c3);for(i=0;i<=9000;i+););break;case 2: P3IF=O;liannxujia();we(c3);for(i=0;i<=9000;i+););break;case 3 : P3IF=O;liannxujia();cl0=0;we(c3);for(i=0;i<=9000;i+)4. 7液晶顯示當程序跳轉(zhuǎn)到某個固定值時,調(diào)用顯示與其對應的液晶顯示子程序。將
23、設定 的固定值轉(zhuǎn)化成對應的ASCII碼送入到數(shù)據(jù)口。把要顯示的數(shù)據(jù)送到P7口就可以 了,每次顯示前要刷新。部分程序如下:/顯示程序 /void we(int w)unsigned char xdata netdata10=4&49,50,51,52,53,54,55,56,57;unsigned char xdata ncedata7=32,32,114,47,109,105,110;unsigned char xdata ncfdata3=32J 17J 12);unsigned char xdata ncgdata5=32,100J 11,119,110;unsigned char
24、 xdata ncddata 13=84,84,72,69,32,83,80,69,69,6&32,73,83; unsigned char xdatanchdata 14=32,119,101,10&99,111J09,10132,116.111,32,32,32);unsigned char xdatancidata13= 32,32,116,104,105,115,32,115,121,115,116J01,109;static unsigned char datal;unsigned char Bedpoint;unsigned char lcddatacount;vo
25、id sysclk(void);void port(void);void lcd(void);void send(void);WDTCN=0XDE;WDTCN=0XAD;sysclk();port();lcd();if(cll=0) w=w+w+w;o=w% 10;/取各位 p=(w/10)%10;/ 取十位 q=w/100;/ 取百位lcdpoint=&ncddata;顯示 THE SPEED IS for(lcddatacount= 13;lcddatacount>0;lcddatacount)datal=*lcdpoint;P7=datal;P6=0x04;P6=0x05;
26、lcdpoint+;for(x=0;x< 100;x+);for(x=0;x<500;x+);P7=OxcO;/ 實現(xiàn)換行功能P6=0x1;P6=0x0;for(x=0;x< 100;x+);lcdpoint=&netdatci;/ 顯示白位 for(lcddatacount=0;lcddatacount<=10;lcddatacount+) if(lcddatacount=q)datal=*lcdpoint;P7=datal;P6=OxO5;P6=0x04;lcdpoint+;)elselcdpoint+;for(x=0;x< 100;x+);lcdpo
27、int=&netdata;/ 顯示十位 for(lcddatacount=0;lcddatacount<= 10;lcddatacount+)if(lcddatacount=p)(datal=*lcdpoint;P7=datal;P6=OxO5;P6=0x04;lcdpoint+;)elselcdpoint+;for(x=0;x< 100;x+);)lcdpoint=&netdata;/ 顯示個位 for(lcddatacount=0;lcddatacount<= 10;lcddatacount+) if(lcddatacount=o)datal=*lcdpo
28、int;P7=datal;P6=OxO5;P6=0x04;lcdpoint+;)elselcdpoint+;for(x=0;x< 100;x+);lcdpoint=&ncedata;/顯示 r/minfor(lcddatacount=7;lcddatacount>0;lcddatacount)datal=*lcdpoint;P7=datal;P6=0x04;P6=OxO5;lcdpoint+;for(x=0;x< 100;x+);for(x=0;xv500;x+);if(c9=l)/加速顯示 upIcdpoint 二&n cfdata;for(lcddatac
29、ount=3;lcddatacount>0;lcddatacount)data 1Icdpoint;P7=datal;P6=0x04;P6=0x05;lcdpoint+;for(x=0;x< 100;x+);for(x=0;xv500;x+);)elselcdpoint=&ncgd ata;/ 減速顯示 downfor(lcddatacount=5;lcddatacount>0;lcddatacount)data 1Icdpoint;P7=datal;P6=0x04;P6=0x05;lcdpoint+;for(x=0;x< 100;x+);for(x=0;xv5
30、00;x+);else lcdpoint=&nchdata;/顯示welcome tofor(lcddatacount= 14;lcddatacount>0;lcddatacount)datal=*lcdpoint;cl 0=0;P7=datal;P6=0x04;P6=0x05;lcdpoint+;for(x=0;x< 100;x+);for(x=0;xv500;x+);P7=OxcO;P6=0x1;P6=0x0;lcdpoint=&ncidata;/顯示 this system for(lcddatacount=13;lcddatacount>0;lcdda
31、tacount) (datal=*lcdpoint;cll = l;P7=datal;P6=0x04;P6=OxO5;lcdpoint+;for(x=0;x< 100;x+);for(x=0;xv500;x+);void sysclk(void) OSCICN=0x05;void port(void)XBR0=0x00;P74OUT=0xf0;void Icd(void)P6=0x01;for(x=0;xv50;x+);P7=Ox3&P6=0x1;P6=0x0;for(x=0;x< 10;x+);P7=0x0e;P6=0x1;P6=0x0;for(x=0;xv50;x+);
32、P7=0x06;P6=0x1;P6=0x0;for(x=0;x< 100;x+);P7=0x01;P6=0x1;P6=0x0;for(x=0;x< 100;x+); )4.8連續(xù)加函數(shù),連續(xù)減函數(shù)以及固定值函數(shù)void liannxujia()連續(xù)加調(diào)速函數(shù),void lianxujian()連續(xù)減調(diào)速函數(shù)通 過改變定時器的初值,來改變定時器的定時器的定時時間的長短,從而來改變占 空比,但為了保證周期不發(fā)生變化,必須高電平增加多少,低電平就得減少多少, 為了使調(diào)速更細膩,每次低位減100,如果,CY二1,則高位減一;同理,每次低位 加100,如果,CY二1,則高位加l;void g
33、udingzhi (n)固定值調(diào)速函數(shù),每次T0 高位加n,每次T1高位減n; n是每次調(diào)用傳來的常量,從而實現(xiàn)了固定值調(diào)速。 部分程序如下:P3IF=O;c4=c4+100:/通過改變定時器的初值改變轉(zhuǎn)速if(CY=O)c3二c3+l;c2=c2-100;if(CY=l)c1 =c 1-1;c9=l;/控制顯示 upvoid lianxujian()/連續(xù)減調(diào)速函數(shù)P3IF=0;c4=c4-100;/調(diào)節(jié)高低電平時長if(CY=0)c3=c3-l;c2=c2+100;if(CY=l)c 1 =c 1 +1;c9=0;/ 控制顯示 downvoid gudingzhi(n)/固定值調(diào)速函數(shù)P3
34、IF=0;c3=c7-n;/調(diào)節(jié)高低電平時長cl=c7+n;5單片機和主要電路簡介5. 1 C8051單片機簡介C8051F020單片機是美國cygnal公司推出的完全集成的混合信號系統(tǒng)級Mcu芯片, 具有高速、流水線結(jié)構(gòu)。有64個數(shù)字L/0引腳,擁有與8051兼容的cIP-51內(nèi)核(可 達25MIPS):片上資源豐富,包括:5個通用的16位定時器,5個捕捉/比較模塊 的可編程計數(shù)器/定時器陣列PCA; 12位100 ksps的8通道ADC和8位500 ksps的 ADC,兩個12位DAC,具有可編程數(shù)據(jù)更新方式;64X1于兒ASH存儲器,4352字節(jié)RAM, 可尋址64K字節(jié)地址空間的外部數(shù)
35、據(jù)存儲器接口,具有在系統(tǒng)重新編程能力,并 允許現(xiàn)場更新8051固件;片內(nèi)還有全速、非侵入式的系統(tǒng)調(diào)試接口、看門狗定時 器等。C8051F020是真正能獨立工作的片上系統(tǒng),所有模擬和數(shù)字外設均可山用戶同件 使能。支持觀察和修改存儲器、寄存器,支持斷點、觀察點.單步及運行和停機 命令。在使用JTAG調(diào)試時,所有的模擬和數(shù)字外設都可傘功能運行。山此看岀,C8051F020單片機具有豐富的片上硬件資源和極高的運算速度,能簡 化硬件電路,兒乎不需要系統(tǒng)擴展就可滿足控制系統(tǒng)對硬件資源的需求。因此采 用C8051F020單片機作為控制器,由其PCA提供PwM波形。5. 2 PWM調(diào)速原理PWM-脈沖寬度調(diào)制
36、技術(shù),通過對微處理器輸出來的一系列數(shù)字脈沖的寬度進 行i周制,等效地獲得模擬電路所需要波形,從而實現(xiàn)對模擬電路控制的一種非 常有效的技術(shù)。沖量相等而形狀不同的窄脈沖加在具有慣性的環(huán)節(jié)上時,其效果 基本相同。例如輸出正弦半波:用一系列等幅不等寬的脈沖來代替一個正弦半波, 將止弦半波看成V個相連的脈沖序列,寬度相等但幅值不等;用矩形脈沖代替, 等幅不等寬,中點重合,面積(沖量)相等,寬度按止弦規(guī)律變化。當要改變等效 輸出正弦波幅值時,按同一比例改變各脈沖寬度即可。對小功率直流電機采用FwM調(diào)速是比較方便的。通過改變電機電樞電壓接通時間 與通電周期的比值(占空度)來控制電機速度。改變占空度的方法有3
37、種:(1)定 寬調(diào)頻法,保持tl不變,t2變化,這樣周期T隨之改變;(2)調(diào)寬調(diào)頻法,保持 t2不變,tl變化,這樣周期T也隨之改變;(3)定頻調(diào)寬法,使周期T不變,而 同時改變tl和t2。前兩種方法都改變了脈沖周期,當控制頻率與系統(tǒng)的同有頻 率接近時會引起振蕩,因此在直流電機控制中釆用定頻調(diào)寬法更為廣泛。在脈沖 作用下,當電機通電時速度加快,斷電時速度逐漸變慢,只要按一定規(guī)律改變通 斷電時間,即可實現(xiàn)對電機的轉(zhuǎn)速控制。5. 3液晶顯示電路液晶顯示屏是以5*8或5*11點陣組成的字符組。其主控制驅(qū)動電路為 HD44780 (HITACH)或其他公司的兼容電路,如SED1278 (SEIKOEP
38、SON), KS0066 (SANSUNG)和NJU6408 (NER JAPAN RADIO),都是將液晶顯示點陣和 驅(qū)動電路結(jié)合為一體的液晶顯示模塊(LCM).對照液晶顯示模塊LCM與單片機的硬件接口電路圖,液晶顯示模塊電路可直 接與單片機C8051F020的I/O口P7和P6連接。P7做數(shù)據(jù)口 (D0-D7) , P6. 0, P6. 1, 和P6. 2用作LCD模塊的3條信號線RS, R/W和E控制LCD的讀/寫操作。LCD模塊編程要點如下:1. 用LCD模塊的3條信號線RS, R/W和E控制LCD的讀/寫操作。2. RS為寄存器選擇位,RS=1,選擇數(shù)據(jù)寄存器:RS二0,選擇指令寄存
39、器。3. E為使能信號,下降沿觸發(fā)。4. DO-D7是8位數(shù)據(jù)總線。5. VDD接+5V電源,VSS接地。LCD模塊的笫16引腳為背光控制線。短接J1的1, 2腳就能加上背光。6. 編寫LCD模塊的驅(qū)動程序時,應對照地址分配表和LCD模塊讀/寫時序圖。6程序流程圖7小結(jié)時間過得真快,轉(zhuǎn)眼間為期兩個星期的單片機課程設汁已經(jīng)結(jié)束了。在這短 短的兩周時間里,我卻收獲很多東西,同時也深刻的體會到了自己知識的匱乏。 在掌握課本知識的基礎上,通過這次學習,充分的鍛煉了自己的動手能力,讓我 懂得了理論與實踐相結(jié)合的重要性。單片機課程從一開始我就感覺到了難度,所以認真的對待了這次課程設計, 一直沒有松懈,還好
40、的就是順利的完成老師交代的任務,但是還是感覺到了一些 壓力,時間對于我來說,有些緊張,在這兩周內(nèi)完成這一系列的任務,真的感覺 到了壓力。對直流電動機的控制這個任務,只是有一點思路。在圖書館里我還找 到了一些關(guān)于直流電動機的書籍,這讓我對直流電動機和PWM有了更深入的了 解。接下來就是編程序,我這次選擇用C語言編程,對于沒有用過C編程的我, 顯得有些困難,雖然開始做了一些準備,看了一些關(guān)于C語言編程的書,但理論 和實際是有差距的。例如全局變量,函數(shù)調(diào)用,以及液晶顯示的問題。在做液晶 顯示時,要看明白每一條語句的含義,否則就會出現(xiàn)顯示不刷新,顯示不換行, 以及不顯示等情況。在向老師的請教,同學的探
41、討中,不斷的去攻克一個一個難 題。這次課程設計中,我學會了做事要細心認真,同時這也是做好每一件事情的 前提。在周二那天,就是要完成顯示任務,我從早上開始就發(fā)現(xiàn)我的顯示器不能 夠刷新,這是讓人很頭疼的事,問了其他的同學都說沒問題,別人都顯示了。我 也著急了,從早上一直找到實驗室關(guān)門,發(fā)現(xiàn)竟然是一個括號的錯誤,在函數(shù)調(diào) 用時會有很多括號,后來自己都笑了,所以做事一定要細心,否則將事倍功半。單片機課程設計涉及到的知識點很多,深化了對單片機中的定時器,外部中 斷以及LCD顯示的理解,同時學了應用它們,對單片機在生活中的應用了有了 更廣泛了解。程設汁是培養(yǎng)學生綜合運用所學知識,發(fā)現(xiàn),提岀,分析和解決實際
42、問題,鍛煉實踐能力的 重要環(huán)節(jié),是對學生實際工作能力的具體訓練和考察過程課程設訃這段時間里,我切身 體會到了學無止境這四個字的深刻含義。相信在以后的學習生活中,我都會更嚴 格的要求自己,通過這次學習實踐,使我對自己所學到的知識有了更進一步的認 識和理解。通過親手設計實踐,充分的體會到了學習的怎趣。也學到了很多關(guān)于 單片機的知識。相信,沒有什么事悄比學有所用更讓人高興的了,所以,這樣一 次既動手乂動腦的學習真的讓我們每個人都受益匪淺。8致謝在這次課程設計中,在短短的兩周內(nèi),完成了為這樣復朵的任務,要歸功于 來自各個方面的幫助,我在這里表示由衷的感謝。首先,感謝呂老師和雷老師的大力支持和耐心的指導
43、。在發(fā)現(xiàn)程序有錯誤時, 我們都感覺到無從下手,感到很困難,通過與兩位老師交流,指導并讓我們能夠 繼續(xù)我們的課程設計。機器發(fā)生故障是常有的事,感謝雷老師為大家修機器,為 大家早開門,晚關(guān)門,給大家?guī)碓S多寶貴的時間。還要感謝我的同學們,感謝崔俊卿,李翠,申瀟雨等兒名同學在我無助的時 候給我提供的幫助,我接受很多大家的想法才能順利完成這次課程設訃的任務。 對我同學表示真摯的感謝。此時此刻也特別感謝學校圖書館的支持與鼓勵,為我們提供了大量的圖書資 源,同樣的網(wǎng)絡資源更是為大家查找資料帶來了方便。最后感謝學校給我們這次單片機課程設計的機會,它讓我們對數(shù)字電路有 了更深的了解,增強了我們的動手能力和應用
44、理論于實踐的通過兩周的單片機課 程設計,我不僅學到了很多新的單片機知識,擴大了自己的知識面,而且學到了 如何將理論知識與實際應用相結(jié)合。這將是我以后學習工作的最寶貴的一筆財 富,終身受益。9參考文獻1. 51系列單片機設計實例北京航空航天大學出版社,樓然苗李光飛 編著2. 8051單片機譚程設計實訓教材.清華大學岀版社,陳明熒 編著3. 單征計算機原理與應用西安大學出版社,何生輝 馮毛官4. 單征機應用與實訓教程西安電子科技大學出版社,張永楓 編著5. 單片機原理與應用及C51程序設計 清華大學出版社,謝維成 楊加國 編著6. 單片機初級教程 北京航空航天大學出版社,張迎新,附錄程序清單#in
45、clude <c8O51fO2O.h>sbit POO=POAO;sbit P1O=P1AO;sbit P11=P1A1;sbitP12=PlA2;sbit P13=P1A3;sbit P14=P1A4;/定義觀察開啟,停止,固定值,sbit P15=P1A5;/以及連續(xù)加減調(diào)速sbit P16=P1A6;sbit P30=P3A0;sbitP17=PlA7;/定義定時器初值unsigned char c 1 =0xf0,c2=0xb0,c3=0xf0,c4=0xb0; unsigned char c5=0,c6=0,c9,c 10,c7=0xf0,c8=0xb0; static
46、unsigned char datal;unsigned long x;int n,m,i,o,p.q,w=0;/函數(shù)聲明/void we(int);void liannxujia();void lianxujian();void gudingzhi(n);void yanshi();/主函數(shù)/void main() WDTCN=OXDE; /關(guān)看門狗WDTCN=OXAD;CKCO N&二 0XE7;/選擇 12 分頻TMOD=OX11;/選擇定時器0, 1和工作方式一 OSCICN=0X07;/選擇系統(tǒng)時鐘 16MHZP00=01/輸出端 口清零TH0=c3;/定時器0賦初值TL0=
47、c4;THl=cl;/定時器0賦初值TLl=c2;EA= 11/ 中斷總使能ET0=l;/ 允許 TO 中斷ET1=1;/ 允許 T1 中斷 we(0) ;/顯示 0轉(zhuǎn)/分 XBR2=0X40;/ 交義開關(guān)使能 P1MDOUT=OXFF;/P1 口輸出方式為推挽 EIE2=OX3O;/中斷6, 7使能while(l);/定時器中斷0/void time0() internjpt1 P00= 1;/端 口輸出 rS電平TR0=0;/ 關(guān)閉定時器TOTHl=cl;/重裝初值TLl=c2;TR1=1;/開啟定時器 T 1/定時器中斷 1 /void time 1() intenupt 3 P00=0
48、;/ 端 口輸出低電平TR1 =0;/ 關(guān)閉定時器T1TH0=c3;/ 重裝初值TL0=c4;TRO=1;關(guān)閉定時器TO/外部中斷6/void INT6 intenupt 18P3IF=0: /中斷標志位清零c5=c5+01;switch(c5) case 1:TRO=11/開啟定時TO, P0.0輸出方波 cl 1=0;顯示 welcome to this system we(c3);顯示當前轉(zhuǎn)速for(i=0;i<=24000;i+););/延時程序 break;case 2:lianxujian();we(c3);/ 顯示當前轉(zhuǎn)速for(i=0;i<=24000;i+);br
49、eak;case 3:lianxujian();we(c3);for( i=0; i <=24000; i+); break;case 4:lianxujian();we(c3);for(i;i<=24000;i+); break;case 5:Iianxujian();c5=l;/c5置1,回到easel,實現(xiàn)連續(xù)加速 we(c3);for(i ;i<=24000;i+););break;case 6:gudingzhi(12);/占空比 10%we(c3);Pl 1=0;for(i=0;i<=18000;i+);); break;case 7:gudingzhi(6
50、);/ 占空比30%we(c3);PI1 = 1;Pl 3=0;for(i=0;i<=18000;i+);); break;case 8:gudingzhi(O);/占空比50% we(c3);Pll = l;P13=l;Pl 5=0;for(i=0;i<=20000;i+); break;case 9:gudingzhi(-6);/70%we(c3);Pll=l;P13=l;P15=l;P17=0;for(i=0;i<=20000;i+);); break;case 10:gudingzhi(-12);/ 占空比90%we(c3);P17=l;for(i=0;iv=20000:i+); break;case 11:TR0=0;/ 關(guān)閉定時器TO TR 1=0;/ 關(guān)閉定時器T1 c5=0;/回到連續(xù)加調(diào)速 Pl 6=0;for(i;i<=24000;i+);); break;1)/外部中斷 7/void INT7 internjpt 19P3IF=0;if(P3O=O)/當P30=0時,執(zhí)行這個程序c6=c6+01;這個程序?qū)崿F(xiàn)連續(xù)加和固定值調(diào)switch(c6)/速的切換 ca
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 贛南醫(yī)學院《視唱與聲樂(一)》2023-2024學年第一學期期末試卷
- 贛南衛(wèi)生健康職業(yè)學院《環(huán)境工程經(jīng)濟管理與倫理》2023-2024學年第一學期期末試卷
- 甘肅中醫(yī)藥大學《蒙臺梭利教學法》2023-2024學年第一學期期末試卷
- 《心臟疾病用藥》課件
- 小學生作文起步講解課件
- 三年級數(shù)學上冊第八單元分數(shù)的初步認識第2課時幾分之幾教案新人教版
- 2022年C基礎知識速記速練考試題庫(核心500題)
- 小學生校園安全知識培訓制度
- 聆聽培訓課件
- 《柱狀晶等等》課件
- 口腔頜面系統(tǒng)解剖骨
- 川骨香-川古香手撕鴨配方及制作方法
- 深圳市排水管網(wǎng)維護管理質(zhì)量
- 變電站二次設計規(guī)范
- 能見度不良時船舶航行須知
- 軟膠囊的制備
- 實習證明、實習證明表(模板)2頁
- 目視化管理實施計劃方案
- 晉城煤業(yè)集團寺河礦井東區(qū)開采設計(學校要求版本)
- 全國職業(yè)院校技能大賽工業(yè)分析檢驗賽項(中職組)團體賽學生選拔之我見
- 良渚文化——文明的曙光PPT課件
評論
0/150
提交評論