版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、<p> 畢業(yè)設(shè)計(jì)(論文)說(shuō)明書(shū)</p><p> 課題名稱:基于單片機(jī)的直流電機(jī)控制系統(tǒng)設(shè)計(jì)</p><p> 院 系 </p><p> 專 業(yè) </p><p> 班 級(jí) </p><p&g
2、t; 學(xué) 號(hào) </p><p> 姓 名 </p><p> 指導(dǎo)教師 </p><p> 2012 年 5 月 20 日</p><p><b> 摘 要</b></p><p> 電動(dòng)機(jī)作為最
3、主要的機(jī)電能量轉(zhuǎn)換裝置,其應(yīng)用范圍已遍及國(guó)民經(jīng)濟(jì)的各個(gè)領(lǐng)域和人們的日常生活。無(wú)論是在工農(nóng)業(yè)生產(chǎn)、國(guó)防、醫(yī)療衛(wèi)生、交通運(yùn)輸和辦公設(shè)備中,還是在日常生活的家用電器和消費(fèi)電子產(chǎn)品中,都大量使用著各種各樣的電動(dòng)機(jī)。電動(dòng)機(jī)的調(diào)速控制一般采用模擬法,對(duì)電動(dòng)機(jī)的簡(jiǎn)單控制應(yīng)用比較多。本設(shè)計(jì)實(shí)現(xiàn)了對(duì)電動(dòng)機(jī)的簡(jiǎn)單控制,也就是指對(duì)電動(dòng)機(jī)進(jìn)行啟動(dòng)、制動(dòng)和正反轉(zhuǎn)控制。</p><p> 本設(shè)計(jì)采用了單片機(jī)STC89C52與PC串行實(shí)現(xiàn)通
4、信,由于單片機(jī)輸入、輸出電平是TTL電平,而PC機(jī)配置的是RS232標(biāo)準(zhǔn)串行接口,兩者的電氣規(guī)范不一致,因此要完成單片機(jī)與PC機(jī)的數(shù)據(jù)通信,必須對(duì)單片機(jī)輸出的TTL電平進(jìn)行電平轉(zhuǎn)換。采用的轉(zhuǎn)換電平芯片為MAX232。設(shè)計(jì)中采用STC89C52微處理器及其RS232通信接口、鍵盤、12864液晶顯示器等外圍電路,構(gòu)成一臺(tái)直流電機(jī)開(kāi)環(huán)在線控制系統(tǒng)。</p><p> 設(shè)計(jì)中采用PWM調(diào)制技術(shù),實(shí)現(xiàn)對(duì)直流電機(jī)速度的調(diào)
5、制,并通過(guò)串口實(shí)現(xiàn)上位機(jī)的在線控制。系統(tǒng)實(shí)現(xiàn)了在線調(diào)速、正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止等多種功能,并能實(shí)時(shí)顯示、鍵盤設(shè)置等,具有一定的實(shí)際應(yīng)用價(jià)值。</p><p> 關(guān)鍵詞:?jiǎn)纹瑱C(jī) 電平轉(zhuǎn)換 直流電機(jī) 在線控制 PWM調(diào)制</p><p><b> Abstract</b></p><p> Motor as the main elect
6、romechanical energy conversion device, its application has been throughout all areas of the national economy and people's daily life. Both in industrial and agricultural production, national defense, medical and heal
7、th, transportation and office equipment, or in the daily life of household appliances and consumer electronics products, extensive use of various motor. Motor speed control using simulation method, the motor control appl
8、ication more simple. The design and imple</p><p> The design introduced AT89C51 single-chip serial communication with the PC method, as the single-chip input and output level is TTL level, and PC-standard c
9、onfiguration is a RS232 serial interface, both the electrical specifications are inconsistent, Therefore to complete PC-SCM and data communications, the need for single-chip output TTL level to level translators. Used in
10、 chip-level conversion for the MAX232. Applied to the design of STC89C52 microprocessor and RS232 communication interface, k</p><p> Applied to the design of PWM technology to realize the dc motor speed reg
11、ulation, and through a serial port realize PC online control. The online speed regulation system, are turning, inversion, accelerate, slowing down, stop and other functions, and can real-time display, keyboard Settings,
12、it has certain practical application value.</p><p> Keywords: single-chip serial communication Level Translators Dc motor Online control PWM technology</p><p><b> 目錄</b></p&g
13、t;<p><b> 摘 要I</b></p><p> AbstractII</p><p><b> 1 緒論 1 </b></p><p> 1.1 直流電機(jī)概述 1 </p><p> 1.2 單片機(jī)概述 1 </p><p>
14、1.3 脈寬調(diào)制(PWM)技術(shù) 2 </p><p> 1.4 課題任務(wù)及工作內(nèi)容 3 </p><p> 2 單片機(jī)直流電機(jī)控制系統(tǒng)總體設(shè)計(jì)方案 4 </p><p> 2.1 設(shè)計(jì)思路 4 </p><p> 2.2 方案論證與比較 4 </p><p> 2.3 系統(tǒng)組成 5 </p
15、><p> 3 單片機(jī)直流電機(jī)控制系統(tǒng)硬件設(shè)計(jì) 6 </p><p> 3.1 系統(tǒng)硬件結(jié)構(gòu) 6 </p><p> 3.2 系統(tǒng)單元電路設(shè)計(jì) 6 </p><p> 3.2.1 單片機(jī)最小系統(tǒng)電路 6 </p><p> 3.2.2 獨(dú)立式鍵盤電路 7 </p><p>
16、3.2.3液晶顯示模塊 7 </p><p> 3.2.4 蜂鳴器電路 8 </p><p> 3.2.5 電源電路 8 </p><p> 3.2.6 串口通信電路 9 </p><p> 3.2.7 電機(jī)驅(qū)動(dòng)電路 10 </p><p> 4 單片機(jī)直流電機(jī)控制系統(tǒng)軟件設(shè)計(jì) 11 </
17、p><p> 4.1 軟件總體結(jié)構(gòu) 11 </p><p> 4.2 系統(tǒng)模塊程序設(shè)計(jì) 12 </p><p> 4.2.1初始化模塊程序 12 </p><p> 4.2.2鍵盤掃描模塊程序 13 </p><p> 4.2.3液晶顯示模塊程序 15 </p><p> 4.
18、2.4串口通信模塊程序 15 </p><p> 4.2.5電機(jī)調(diào)速模塊程序 17 </p><p> 5 系統(tǒng)測(cè)試 18 </p><p> 5.1 測(cè)試準(zhǔn)備 18 </p><p> 5.1.1 硬件環(huán)境 18 </p><p> 5.1.2 軟件環(huán)境 18 </p><
19、p> 5.1.3 測(cè)試項(xiàng)目 18 </p><p> 5.2 測(cè)試過(guò)程 18 </p><p> 5.3 測(cè)試結(jié)果 19 </p><p><b> 結(jié)束語(yǔ) 21 </b></p><p><b> 致謝 22 </b></p><p><b&
20、gt; 參考文獻(xiàn) 23 </b></p><p><b> 附錄 24 </b></p><p><b> 1 緒論</b></p><p> 1.1 直流電機(jī)概述</p><p> 在現(xiàn)代工業(yè)中,電動(dòng)機(jī)作為電能轉(zhuǎn)換的傳動(dòng)裝置被廣泛應(yīng)用于機(jī)械、冶金、石油化學(xué)、國(guó)防等工業(yè)部
21、門中,隨著對(duì)生產(chǎn)工藝、產(chǎn)品質(zhì)量的要求不斷提高和產(chǎn)量的增長(zhǎng),越來(lái)越多的生產(chǎn)機(jī)械要求能實(shí)現(xiàn)自動(dòng)調(diào)速。長(zhǎng)期以來(lái),自動(dòng)調(diào)速電動(dòng)機(jī)一直占據(jù)著調(diào)速控制的統(tǒng)治地位。由于它具有良好的線性調(diào)速特性,簡(jiǎn)單的控制性能,高效率,優(yōu)異的動(dòng)態(tài)特性,現(xiàn)在仍是大多數(shù)調(diào)速控制電動(dòng)機(jī)的最優(yōu)選擇</p><p> 以前電動(dòng)機(jī)大多使用由模擬電路組成的控制柜進(jìn)行控制,現(xiàn)在單片機(jī)已經(jīng)開(kāi)始取代模擬電路作為電機(jī)控制器。當(dāng)前電機(jī)控制器的發(fā)展方向越來(lái)越趨于多樣化
22、和復(fù)雜化,現(xiàn)有的專用集成電路未必能滿足苛刻的新產(chǎn)品開(kāi)發(fā)要求,為此可考慮開(kāi)發(fā)電機(jī)的新型單片機(jī)控制器,因此研究直流電機(jī)的速度控制,有著非常重要的意義。</p><p> 由于變頻技術(shù)的出現(xiàn),交流調(diào)速一直沖擊直流調(diào)速,但綜觀全局,尤其是我國(guó)在此領(lǐng)域的現(xiàn)狀,再加上全數(shù)字直流調(diào)速系統(tǒng)的出現(xiàn),更提高了直流調(diào)速系統(tǒng)的精度及可靠性,直流調(diào)速系統(tǒng)仍將處于十分重要地位。</p><p> 對(duì)于直流調(diào)速系統(tǒng)
23、轉(zhuǎn)速控制的要求有穩(wěn)速、調(diào)速、加速或減速三個(gè)方面,而在工業(yè)生產(chǎn)中對(duì)于后兩個(gè)要求已能很好地實(shí)現(xiàn),但工程應(yīng)用中穩(wěn)速指標(biāo)卻往往不能達(dá)到預(yù)期的效果,穩(wěn)速要求即以一定的精度在所需要的轉(zhuǎn)速穩(wěn)定運(yùn)行,在各種干擾不允許有過(guò)大的轉(zhuǎn)速波動(dòng)。</p><p><b> 1.2 單片機(jī)概述</b></p><p> 隨著單片機(jī)功能的飛速發(fā)展,單片機(jī)的應(yīng)用領(lǐng)域已經(jīng)滲透到了國(guó)民經(jīng)濟(jì)的各個(gè)領(lǐng)域,
24、并影響著現(xiàn)代人的生活。單片機(jī)技術(shù)的出現(xiàn)給現(xiàn)代工業(yè)測(cè)控領(lǐng)域帶來(lái)了一次技術(shù)革命。目前,單片機(jī)仍以其高可靠性、高性價(jià)比,在工業(yè)控制系統(tǒng)、智能化儀器儀表、數(shù)據(jù)采集系統(tǒng)和智能家電等諸多領(lǐng)域得到了廣泛應(yīng)用。</p><p> 當(dāng)今時(shí)代是一個(gè)新技術(shù)層出不窮的時(shí)代,在電子領(lǐng)域尤其是自動(dòng)化智能控制領(lǐng)域,傳統(tǒng)的分立元件或數(shù)字邏輯電路構(gòu)成的控制系統(tǒng),正以飛快的速度被單片機(jī)智能控制系統(tǒng)所取代。單片機(jī)的優(yōu)點(diǎn)包括體積小、功能強(qiáng)、成本低,并
25、且應(yīng)用面廣,可以說(shuō)智能控制與自動(dòng)控制的核心就是單片機(jī)。</p><p> 單片機(jī)又稱單片微控制器,它不是完成某一個(gè)邏輯功能的芯片,而是把一個(gè)計(jì)算機(jī)系統(tǒng)集成到一個(gè)芯片上。概括來(lái)講:一塊芯片就是一臺(tái)計(jì)算機(jī)。它具有體積小、質(zhì)量輕、價(jià)格便宜等優(yōu)點(diǎn),為學(xué)習(xí)、應(yīng)用和開(kāi)發(fā)提供了諸多便利。同時(shí),學(xué)習(xí)使用單片機(jī)是了解計(jì)算機(jī)原理與結(jié)構(gòu)的最佳選擇。</p><p> 現(xiàn)在,單片機(jī)的應(yīng)用領(lǐng)域非常廣泛,比如實(shí)時(shí)
26、工控、導(dǎo)航系統(tǒng)、智能儀表、家用電器、通訊設(shè)備等。單片機(jī)一旦運(yùn)用在各種產(chǎn)品上面,就可以說(shuō)是使產(chǎn)品進(jìn)行了升級(jí)換代,也可以把產(chǎn)品美其名曰:“智能型”,如智能型洗衣機(jī)等等。</p><p> 1.3 脈寬調(diào)制(PWM)技術(shù)</p><p> 脈沖寬度調(diào)制(PWM)是英文“Pulse Width Modulation”的縮寫,簡(jiǎn)稱脈寬調(diào)制。它是利用微處理器的數(shù)字輸出來(lái)對(duì)模擬電路進(jìn)行控制的一種非常
27、有效的技術(shù),廣泛應(yīng)用于測(cè)量,通信,功率控制與變換等許多領(lǐng)域。一種模擬控制方式,根據(jù)相應(yīng)載荷的變化來(lái)調(diào)制晶體管柵極或基極的偏置,來(lái)實(shí)現(xiàn)開(kāi)關(guān)穩(wěn)壓電源輸出晶體管或晶體管導(dǎo)通時(shí)間的改變,這種方式能使電源的輸出電壓在工作條件變化時(shí)保持恒定。</p><p> 脈沖寬度調(diào)制(PWM)是一種對(duì)模擬信號(hào)電平進(jìn)行數(shù)字編碼的方法。通過(guò)高分辨率計(jì)數(shù)器的使用,方波的占空比被調(diào)制用來(lái)對(duì)一個(gè)具體模擬信號(hào)的電平進(jìn)行編碼。PWM信號(hào)仍然是數(shù)字
28、的,因?yàn)樵诮o定的任何時(shí)刻,滿幅值的直流供電要么完全有(ON),要么完全無(wú)(OFF)。電壓或電流源是以一種通(ON)或斷(OFF)的重復(fù)脈沖序列被加到模擬負(fù)載上去的。通的時(shí)候即是直流供電被加到負(fù)載上的時(shí)候,斷的時(shí)候即是供電被斷開(kāi)的時(shí)候。只要帶寬足夠,任何模擬值都可以使用PWM進(jìn)行編碼。</p><p> 多數(shù)負(fù)載(無(wú)論是電感性負(fù)載還是電容性負(fù)載)需要的調(diào)制頻率高于10Hz,通常調(diào)制頻率為1kHz到200kHz之間
29、。</p><p> 許多微控制器內(nèi)部都包含有PWM控制器。例如,Microchip公司的PIC16C67內(nèi)含兩個(gè)PWM控制器,每一個(gè)都可以選擇接通時(shí)間和周期。占空比是接通時(shí)間與周期之比;調(diào)制頻率為周期的倒數(shù)。執(zhí)行PWM操作之前,這種微處理器要求在軟件中完成以下工作:</p><p> 1、設(shè)置提供調(diào)制方波的片上定時(shí)器/計(jì)數(shù)器的周期</p><p> 2、在P
30、WM控制寄存器中設(shè)置接通時(shí)間</p><p> 3、設(shè)置PWM輸出的方向,這個(gè)輸出是一個(gè)通用I/O管腳</p><p><b> 4、啟動(dòng)定時(shí)器</b></p><p> 5、使能PWM控制器</p><p> 目前幾乎所有市售的單片機(jī)都有PWM模塊功能,若沒(méi)有(如早期的8051),也可以利用定時(shí)器及GPIO口來(lái)
31、實(shí)現(xiàn)。更為一般的PWM模塊控制流程為(筆者使用過(guò)TI的2000系列,AVR的Mega系列,TI的LM系列):</p><p> 1、使能相關(guān)的模塊(PWM模塊以及對(duì)應(yīng)管教的GPIO模塊)。</p><p> 2、配置PWM模塊的功能,具體有:</p><p> ?、伲涸O(shè)置PWM定時(shí)器周期,該參數(shù)決定PWM波形的頻率。</p><p>
32、②:設(shè)置PWM定時(shí)器比較值,該參數(shù)決定PWM波形的占空比。</p><p> ?、郏涸O(shè)置死區(qū)(deadband),為避免橋臂的直通需要設(shè)置死區(qū),一般較高檔的單片機(jī)都有該功能。</p><p> ?、埽涸O(shè)置故障處理情況,一般為故障是封鎖輸出,防止過(guò)流損壞功率管,故障一般有比較器或ADC或GPIO檢測(cè)。</p><p> ?、荩涸O(shè)定同步功能,該功能在多橋臂,即多PWM模
33、塊協(xié)調(diào)工作時(shí)尤為重要。</p><p> 3、設(shè)置相應(yīng)的中斷,編寫ISR,一般用于電壓電流采樣,計(jì)算下一個(gè)周期的占空比,更改占空比,這部分也會(huì)有PI控制的功能。</p><p> 4、使能PWM波形發(fā)生。</p><p> 1.4 課題任務(wù)及工作內(nèi)容</p><p> 本題目要求設(shè)計(jì)一個(gè)單片機(jī)應(yīng)用系統(tǒng)可以通過(guò)串行線在上位機(jī)中進(jìn)行控制操
34、作。可以通過(guò)上位機(jī)對(duì)單片機(jī)進(jìn)行控制直流電機(jī)正轉(zhuǎn)、反轉(zhuǎn)、停止、加速、減速等功能。另外,為增加其實(shí)用性還增加了顯示、鍵盤控制、按鍵蜂鳴等功能。</p><p> 本課題要完成以下研究工作:</p><p> 1、研究直流電機(jī)控制系統(tǒng)并仔細(xì)推敲各方面的細(xì)節(jié),比如速度的控制等等。</p><p> 2、進(jìn)行系統(tǒng)軟硬件的設(shè)計(jì)。</p><p>
35、 3、制作硬件,并對(duì)硬件進(jìn)行調(diào)試以及優(yōu)化。</p><p> 2 單片機(jī)直流電機(jī)控制系統(tǒng)總體設(shè)計(jì)方案</p><p><b> 2.1 設(shè)計(jì)思路</b></p><p> 本題要求設(shè)計(jì)一個(gè)上位機(jī)直流電機(jī)控制系統(tǒng)。利用鍵盤作為輸入設(shè)備,輸入電機(jī)控制信號(hào);液晶顯示器件作為顯示,與用戶進(jìn)行人機(jī)交互;利用串行通信接口與上位機(jī)進(jìn)行通信,接收上位機(jī)
36、發(fā)送過(guò)來(lái)的控制命令。從PC機(jī)發(fā)來(lái)的控制命令經(jīng)單片機(jī)系統(tǒng)接收后,產(chǎn)生電機(jī)控制信號(hào),并提供給電機(jī)驅(qū)動(dòng)電路控制直流電機(jī)正常運(yùn)轉(zhuǎn)并正常顯示轉(zhuǎn)速。</p><p> 2.2 方案論證與比較</p><p> (1)主控制器的選擇與比較</p><p> 采用臺(tái)灣宏晶科技有限公司生產(chǎn)的STC89C52系列的8位單片機(jī)作為本系統(tǒng)的主控制芯片,該處理器芯片內(nèi)置有8K的Flas
37、h存儲(chǔ)器,內(nèi)置的UART全雙工異步通信接口,減少外圍接口電路。具有可在線編程、使用方便、價(jià)格低廉等優(yōu)點(diǎn)。運(yùn)算速度內(nèi)滿足系統(tǒng)的要求,性價(jià)比高。</p><p> (2)顯示電路選擇與比較</p><p> 方案一:采用數(shù)碼管顯示電路,該硬件電路簡(jiǎn)單,編程也比較簡(jiǎn)單。視角范圍大,亮度高,顯示是效果好,但是只能顯示簡(jiǎn)單數(shù)字字母等有限的字符,不能滿足本設(shè)計(jì)要求。故,不采用數(shù)碼管顯示電路。<
38、;/p><p> 方案二:采用1602液晶顯示,硬件電路簡(jiǎn)單,編程容易??梢燥@示字母和數(shù)字,以及一下簡(jiǎn)單的圖像。能滿足本設(shè)計(jì)要求,顯示清晰度可以通過(guò)調(diào)節(jié)偏壓端電壓來(lái)改變對(duì)比度,從而實(shí)現(xiàn)清晰度調(diào)整。顯示效果較好,還可以滾動(dòng)顯示等,顯示靈活。</p><p> 方案三:采用12864液晶顯示,硬件電路簡(jiǎn)單,編程容易??梢燥@示復(fù)雜的圖案、字符、標(biāo)點(diǎn)、英文、漢字等。能滿足本設(shè)計(jì)要求,顯示清晰度可以
39、通過(guò)調(diào)節(jié)偏壓端電壓來(lái)改變對(duì)比度,從而實(shí)現(xiàn)清晰度調(diào)整。顯示效果較好,還可以滾動(dòng)顯示等,顯示靈活。</p><p> 綜上所述,數(shù)碼管顯示電路不能滿足本設(shè)計(jì)的要求;1602顯示只能顯示字母和數(shù)字,要顯示漢字和圖像編程復(fù)雜,效果不好;12864液晶顯示可以顯示數(shù)字、英文、漢字、圖片等能滿足本設(shè)計(jì)要求。故,采用12864液晶顯示電路作為本設(shè)計(jì)的顯示電路模塊。</p><p> (3)鍵盤電路選
40、擇與比較</p><p> 方案一:獨(dú)立式鍵盤,獨(dú)立式鍵盤硬件電路極為簡(jiǎn)單,程序也非常簡(jiǎn)單。容易開(kāi)發(fā),開(kāi)發(fā)周期短,使用方便簡(jiǎn)單。</p><p> 方案二:矩陣式鍵盤,矩陣式鍵盤硬件電路也比較簡(jiǎn)單,編程較為復(fù)雜。不容易開(kāi)發(fā),在按鍵較多的時(shí)候,與獨(dú)立式鍵盤相比較經(jīng)濟(jì),占用IO端口較少,但編程較獨(dú)立式鍵盤難的多,由于本設(shè)計(jì)要求的鍵盤按鍵數(shù)量較少,采用獨(dú)立式鍵盤較方便,開(kāi)發(fā)難度大大降低,開(kāi)發(fā)
41、周期縮短,也比較經(jīng)濟(jì)。故在本設(shè)計(jì)中采用獨(dú)立式鍵盤。經(jīng)上述比較后采用獨(dú)立式鍵盤作為本設(shè)計(jì)的鍵盤電路模塊。</p><p><b> 2.3 系統(tǒng)組成</b></p><p> 經(jīng)過(guò)方案論證,最終確定系統(tǒng)的組成框圖如圖2.1所示。系統(tǒng)由STC89C52微處理器核心模塊、電源模塊、獨(dú)立式鍵盤模塊、12864液晶顯示模塊、蜂鳴器電路模塊、RS232串口通信模塊、電源指示電
42、路模塊等組成。其中,獨(dú)立式鍵盤由微動(dòng)開(kāi)關(guān)連接到IO口與地線之間組成。注意,由于P0口內(nèi)部沒(méi)有上拉電阻,在作為輸入時(shí),需要外接上拉電阻。串口通信電路由MAX232電平轉(zhuǎn)換芯片與9DB串口插座等構(gòu)成,用于下載程序和實(shí)現(xiàn)與上位機(jī)通信。蜂鳴器電路主要由蜂鳴器和三級(jí)管組成,用于實(shí)現(xiàn)按鍵聲音等。液晶顯示電路主要由12864液晶顯示模塊及少量外圍電阻等構(gòu)成,主要用于實(shí)現(xiàn)人機(jī)界面的交互功能。</p><p> 圖1.1 系統(tǒng)
43、組成框圖</p><p> 3 單片機(jī)直流電機(jī)控制系統(tǒng)硬件設(shè)計(jì)</p><p> 3.1 系統(tǒng)硬件結(jié)構(gòu)</p><p> 本設(shè)計(jì)硬件結(jié)構(gòu)由單片機(jī)最小系統(tǒng)、鍵盤模塊、12864液晶顯示模塊、蜂鳴器驅(qū)動(dòng)模塊、電源指示模塊、串口通信模塊、電機(jī)驅(qū)動(dòng)模塊等組成。</p><p> 3.2 系統(tǒng)單元電路設(shè)計(jì)</p><p&g
44、t; 3.2.1 單片機(jī)最小系統(tǒng)電路</p><p> 單片機(jī)最小系統(tǒng)電路由STC89C52主控芯片、時(shí)鐘振蕩電路和復(fù)位電路等構(gòu)成。其中,時(shí)鐘振蕩電路主要由外接11.0592MHz晶振、兩個(gè)30pF的起振電容和內(nèi)部反相器構(gòu)成。復(fù)位電路采用簡(jiǎn)單的容阻式復(fù)位電路。單片機(jī)最小系統(tǒng)電路原理圖如圖2.1所示。</p><p> 圖2.1 單片機(jī)最小系統(tǒng)電路</p><p&
45、gt; 3.2.2 獨(dú)立式鍵盤電路</p><p> 鍵盤電路采用比較簡(jiǎn)單的獨(dú)立式鍵盤便能滿足設(shè)計(jì)要求,成本低廉,編程相對(duì)簡(jiǎn)單。4個(gè)獨(dú)立按鍵,分別與單片機(jī)P0.0-P0.3相連,由于P1口上各位內(nèi)部均接有上拉電阻,故,外接按鍵的時(shí)候,我們不再接上拉電阻。</p><p> 鍵盤電路如圖2.2所示</p><p> 圖2.2 獨(dú)立式鍵盤電路</p>
46、;<p> 3.2.3液晶顯示模塊</p><p> (1)12864液晶模塊概述</p><p> 12864液晶顯示電路主要由基于ST7920控制器的12864液晶和外部電位器等組成。12864具有128列64行共128*64個(gè)像素點(diǎn),可以顯示中文、日文、數(shù)字、英文、特殊字符、圖片等。內(nèi)置國(guó)標(biāo)GB2312碼簡(jiǎn)體中文字庫(kù)(16*16),128個(gè)字符(8*16)及64*
47、256點(diǎn)陣顯示RAM(GDRAM)??梢耘cCPU直接接口,提供兩種界面來(lái)連接微處理器:8-位并行及串行兩種連接方式。具有多種功能:光標(biāo)顯示、畫面移位、睡眠模式等。</p><p> (2)12864液晶顯示電路原理圖</p><p> 液晶顯示電路主要由12864液晶顯示模塊和外圍電位器等組成。可以通過(guò)調(diào)節(jié)電位器R2,調(diào)節(jié)12864偏壓端電壓,改變顯示對(duì)比度,提高顯示效果,改變顯示清晰
48、度??刂瓶诰€RS、RW、EN分別連接到單片機(jī)的P0.4、P0.5、P0.6,8位數(shù)據(jù)總線與P2口相連,實(shí)現(xiàn)8位數(shù)據(jù),并行傳輸。</p><p> 12864液晶顯示電路圖如圖2.3所示</p><p> 圖2.3 12864液晶電路原理圖</p><p> 3.2.4 蜂鳴器電路</p><p> 蜂鳴器電路主要是利用S9012(P
49、NP)三極管驅(qū)動(dòng)蜂鳴器,實(shí)現(xiàn)按鍵發(fā)聲。S9012三級(jí)管屬于PNP管,發(fā)射極串接蜂鳴器線圈接至+5V,集電極直接接地,基極通過(guò)一個(gè)4.7k限流電阻接至單片機(jī)P3.3口。當(dāng)S9012基極為低電平時(shí),三極管導(dǎo)通,蜂鳴器得電蜂鳴,當(dāng)S9012三極管基極為高電平時(shí),三極管截止,蜂鳴器停止蜂鳴。其詳細(xì)原理圖如圖2.4所示</p><p> 圖2.4 蜂鳴器驅(qū)動(dòng)電路原理圖</p><p> 3.2
50、.5 電源電路</p><p> 電源電路包括開(kāi)關(guān)電路和指示電路。指示電路采用發(fā)光二極管進(jìn)行指示,放光二極管串聯(lián)上一個(gè)1K的限流電阻,正常工作時(shí),取發(fā)光二極管上電壓為3V,流過(guò)發(fā)光二極管上的電流為10mA,故R=(5-3)/10=2K。當(dāng)選擇的電阻過(guò)大時(shí),發(fā)光二極管不夠亮,指示不明顯;當(dāng)限流電阻選擇過(guò)小,發(fā)光二極管亮度過(guò)大,縮短放光二極管使用壽命。因此,應(yīng)適當(dāng)選取該限流電阻。當(dāng)單片機(jī)正常供電時(shí),電源指示燈正常發(fā)
51、亮。當(dāng)沒(méi)有供電或出電源線短路時(shí),電源指示熄滅,從而可以監(jiān)測(cè)系統(tǒng)是否正常供電。電源電路原理圖如圖2.5所示</p><p> 圖2.5 電源電路原理圖</p><p> 3.2.6 串口通信電路</p><p> 串口通信電路主要由美信公司生產(chǎn)的MAX232芯片和相應(yīng)的通信指示電路構(gòu)成,主要是用于程序的燒寫和實(shí)現(xiàn)與上位機(jī)的通信。Max232用于實(shí)現(xiàn)TTL電平與
52、RS232電平的轉(zhuǎn)換,只要在它的外部在接上幾個(gè)簡(jiǎn)單的電容就構(gòu)成了通信點(diǎn)路,為了方便檢查、排除故障可在通信線上接上兩個(gè)通信指示燈,方便檢查與維修。具體電路圖如圖2.6所示。</p><p> 圖2.6 串口通信電路</p><p> 3.2.7 電機(jī)驅(qū)動(dòng)電路</p><p> 電機(jī)驅(qū)動(dòng)電路主要有電機(jī)驅(qū)動(dòng)芯片L298N、少量電阻電容和二極管構(gòu)成。電機(jī)驅(qū)動(dòng)電路增加光
53、耦合器件以實(shí)現(xiàn)電機(jī)驅(qū)動(dòng)信號(hào)與控制信號(hào)的隔離,提高控制系統(tǒng)的抗干擾能力,但由于光耦合芯片TLP521-4昂貴,并且設(shè)計(jì)的控制要求簡(jiǎn)單,因此驅(qū)動(dòng)電路中去掉了光耦合部分。電機(jī)驅(qū)動(dòng)電路原理圖如圖2.7所示。</p><p> 圖2.7 電機(jī)驅(qū)動(dòng)電路原理圖</p><p> 4 單片機(jī)直流電機(jī)控制系統(tǒng)軟件設(shè)計(jì)</p><p> 4.1 軟件總體結(jié)構(gòu)</p>
54、<p> 系統(tǒng)軟件主要由系統(tǒng)初始化程序模塊、鍵盤掃描及處理模塊、液晶顯示程序模塊、串口通信程序模塊、電機(jī)調(diào)速程序模塊和蜂鳴器驅(qū)動(dòng)程序模塊等組成。</p><p> 系統(tǒng)初始化模塊:主要是配置系統(tǒng)工作環(huán)境。主要負(fù)責(zé)的工作有初始化定時(shí)器、初始化液晶、初始化串口、初始化I/O等</p><p> 鍵盤掃描及處理模塊:實(shí)現(xiàn)按鍵識(shí)別、消抖及處理,用于設(shè)置電機(jī)轉(zhuǎn)動(dòng)狀態(tài)。</p
55、><p> 液晶顯示模塊:實(shí)現(xiàn)對(duì)電機(jī)狀態(tài)的實(shí)時(shí)顯示以及狀態(tài)設(shè)置,實(shí)現(xiàn)人機(jī)交互。</p><p> 串口通信模塊:主要是實(shí)現(xiàn)與上位機(jī)進(jìn)行通信,接收上位機(jī)發(fā)送過(guò)來(lái)的電機(jī)控制命令。</p><p> 蜂鳴器模塊:主要用實(shí)現(xiàn)按鍵蜂鳴。</p><p> 系統(tǒng)軟件總體框圖如圖3.1所示</p><p> 圖3.1 系統(tǒng)軟件
56、總體框圖</p><p> 在沒(méi)有操作系統(tǒng)的時(shí)候,我們采用結(jié)構(gòu)化程序設(shè)計(jì)思想,自頂向下,逐步求精;其系統(tǒng)主程序流程圖如圖3.2所示</p><p> 圖3.2 系統(tǒng)主程序流程圖</p><p> 4.2 系統(tǒng)模塊程序設(shè)計(jì)</p><p> 4.2.1初始化模塊程序</p><p> 系統(tǒng)初始化軟件包括三大部分
57、:串口初始化、LCD12864液晶初始化、I/O口初始化。主要完成的工作是設(shè)置定時(shí)器,并初始化串口。初始化12864液晶模塊、關(guān)閉蜂鳴器等。</p><p> 串口初始化程序:設(shè)置定時(shí)器1為工作方式2,配置串口波特率為9600bps,選擇波特率不倍增,串行工作方式1,啟動(dòng)定時(shí)器1,開(kāi)串行口中斷,開(kāi)CPU總中斷。串口初始化程序流程圖如圖3.3所示。</p><p> 12864液晶初始化
58、程序:首先初始化LCD控制口,選擇12864液晶輸入輸出為8位位流,清屏,設(shè)定輸入數(shù)據(jù)后光標(biāo)右移模式,開(kāi)顯示無(wú)光標(biāo)閃爍,無(wú)反白。最后顯示正常模式下的界面。12864液晶初始化程序流程圖如圖3.4所示</p><p> 圖3.3 串口初始程序流程圖 圖3.4 12864液晶初始化程序流程圖</p><p> 4.2.2鍵盤掃描模塊程序</p><p&
59、gt; 鍵盤掃描及處理程序,主要由按鍵key1、按鍵key2、按鍵key3、按鍵key4組成。</p><p> Key1為循環(huán)選擇鍵,用于選擇要設(shè)置的電機(jī)狀態(tài)項(xiàng)目。</p><p> 2、Key2為加1按鍵,用于設(shè)定電機(jī)的正反轉(zhuǎn)、加減速和電機(jī)速度值。</p><p> 3、Key3為減1按鍵,用于設(shè)定電機(jī)的正反轉(zhuǎn)、加減速和電機(jī)速度值。</p>
60、<p> 4、Key4為確定鍵,用于確定當(dāng)前的電機(jī)狀態(tài)為設(shè)定值。</p><p> 鍵盤掃描程序模塊流程圖如圖3.5所示。</p><p> 圖3.5 鍵盤掃描程序模塊流程圖</p><p> 4.2.3液晶顯示模塊程序</p><p> 液晶顯示程序模塊包括12864液晶驅(qū)動(dòng)程序模塊和12864液晶顯示刷新程序模塊。
61、</p><p> 12864液晶驅(qū)動(dòng)程序模塊主要包括12864液晶的寫數(shù)據(jù)、寫命令程序模塊。通過(guò)控制12864液晶的控制口線就可以實(shí)現(xiàn)對(duì)12864液晶的基本數(shù)據(jù)操作。液晶寫數(shù)據(jù)和寫命令程序流程圖分別如圖3.6和圖3.7所示。</p><p> 12864液晶顯示程序模塊,主要實(shí)現(xiàn)對(duì)輸入的要發(fā)送的數(shù)據(jù)和接收到的數(shù)據(jù)的顯示,以及進(jìn)入設(shè)置模式時(shí)的各種界面的的刷新顯示等。</p>
62、<p> 圖3.6 12864液晶寫數(shù)據(jù)程序流程圖 圖3.7 12864液晶寫命令程序流程圖</p><p> 4.2.4串口通信模塊程序</p><p> 串口通信程序模塊主要包括串口初始化程序模塊、串口接收程序模塊。其中串口初始化程序模塊主要是配置特定的串口通信環(huán)境及通信方式等。選擇串口為通信方式1,定時(shí)器1方式2等。其程序流程圖如前面圖3.3所
63、示。串口接收程序模塊主要由串口中斷程序與串口接收子程序構(gòu)成。當(dāng)產(chǎn)生接收中斷時(shí),首先判斷是發(fā)送中斷還是接收中斷,若是發(fā)送中斷則清除發(fā)送中斷標(biāo)志位,若是接收中斷則先清除接收中斷標(biāo)志位,然后調(diào)用串口接收函數(shù),將接收到的數(shù)據(jù)存于接收緩沖區(qū)中,并共單片機(jī)使用。其串口接收程序流程圖如圖3.8所示,其中標(biāo)志位已在程序中標(biāo)出。</p><p> 圖3.8 串口接收程序流程圖</p><p> 4.2
64、.5電機(jī)調(diào)速模塊程序</p><p> 電機(jī)調(diào)速程序模塊采用脈寬調(diào)制法實(shí)現(xiàn)速度控制。利用定時(shí)器0固定調(diào)速信號(hào)周期,根據(jù)正反轉(zhuǎn)標(biāo)志,設(shè)定電機(jī)控制端口電平。當(dāng)計(jì)數(shù)值達(dá)到設(shè)定的脈寬值時(shí)則關(guān)閉電機(jī)運(yùn)行,在第二個(gè)周期的調(diào)速信號(hào)到來(lái)時(shí),又重新開(kāi)啟電機(jī)運(yùn)轉(zhuǎn),依次的電機(jī)通斷切換,從而實(shí)現(xiàn)電機(jī)的速度控制。其調(diào)速程序流程圖如圖3.9所示。</p><p> 圖3.9 調(diào)速程序流程圖</p>
65、<p><b> 5 系統(tǒng)測(cè)試</b></p><p><b> 5.1 測(cè)試準(zhǔn)備</b></p><p> 5.1.1 硬件環(huán)境</p><p> (1)PC機(jī)、USB轉(zhuǎn)串口通信線。用于單片機(jī)C51語(yǔ)言的編程、編譯、加載及發(fā)送電機(jī)控制命令。</p><p> (2)+5V和+
66、12V電源、電機(jī)控制系統(tǒng)板、若干根杜邦線、1塊12864液晶模塊。</p><p> ?。?)DT9208A數(shù)字萬(wàn)用表1個(gè)、螺絲刀、鑷子、斜口鉗、吸焊器。</p><p> 5.1.2 軟件環(huán)境</p><p> (1)Keil uVision4,用于C51源程序的編寫、編譯、鏈接和調(diào)試。</p><p> ?。?)上位機(jī)串口調(diào)試軟件(串
67、口大師)、本系統(tǒng)程序、相關(guān)的庫(kù)和頭文件。</p><p> 5.1.3 測(cè)試項(xiàng)目</p><p> 12864液晶是否正常顯示。</p><p> 系統(tǒng)電源指示、通信指示、按鍵蜂鳴、按鍵復(fù)位等功能是否正常。</p><p> 上位機(jī)通過(guò)串口調(diào)試軟件能否正確控制電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速。</p><p>
68、實(shí)驗(yàn)板上的鍵盤能否正確控制電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速。</p><p><b> 5.2 測(cè)試過(guò)程</b></p><p> 1、利用萬(wàn)用表檢查各線路是否存在斷路、短路并修正。</p><p> 2、檢查單片機(jī)等各口線是否正確連接,上電之前檢測(cè)一下正負(fù)電源線是否短路,確保不短路才上電。</p><p> 3、利
69、用Keil uVision2軟件進(jìn)行程序的編輯、編譯、鏈接和調(diào)試。</p><p> 4、利用STC-ISP軟件將在keil中編譯鏈接生成的各個(gè)xx.Hex文件下載到系統(tǒng)單片機(jī)的Flash存儲(chǔ)器中。</p><p> 5、按原理圖連接線路、上電后開(kāi)始測(cè)試。</p><p> 上電后首先觀察系統(tǒng)顯示是否正常,指示燈工作是否正常,復(fù)位電路是否正常等等,如不正常則修
70、改程序重新下載測(cè)試,直至顯示正常。接著按照測(cè)試項(xiàng)目,分別測(cè)試。首先打開(kāi)串口調(diào)試軟件,選擇波特率為9600bps,打開(kāi)串口,選擇發(fā)送的數(shù)據(jù)位16進(jìn)制數(shù)據(jù)。</p><p> (1)正轉(zhuǎn)測(cè)試:在發(fā)送窗中輸入正轉(zhuǎn)控制字和速度值。如:1 10 其中,1表示正轉(zhuǎn),10(16進(jìn)制)即16表示脈寬為16%的調(diào)速信號(hào)所對(duì)應(yīng)的速度。點(diǎn)擊發(fā)送觀察電機(jī)是否正轉(zhuǎn),將速度改大一些看一下速度是否改變。</p><p&g
71、t; (2)停止測(cè)試:輸入停止命令字0,速度可以任意,發(fā)送后觀察電機(jī)是否停機(jī)下來(lái)。</p><p> (3)反轉(zhuǎn)測(cè)試:輸入反轉(zhuǎn)命令字及速度脈寬值(最大為100),如2 20,發(fā)送后觀察電機(jī)的轉(zhuǎn)動(dòng)方向及速度,改變速度后再測(cè)一次觀察電機(jī)轉(zhuǎn)速是否改變。</p><p> (4)加速測(cè)試:輸入加速命令字3,速度可以任意,如3 20,發(fā)送后觀察電機(jī)的轉(zhuǎn)動(dòng)情況。</p><p
72、> (5)減速測(cè)試:輸入減速命令字4,速度可以任意,如4 20,發(fā)送后觀察電機(jī)的轉(zhuǎn)動(dòng)情況。</p><p> 再測(cè)試正反轉(zhuǎn)直接切換的情況下,電機(jī)是否還能正確運(yùn)行,接著再測(cè)試一下在正反轉(zhuǎn)狀況下進(jìn)行的加減速,觀察電機(jī)是否在原來(lái)速度的基礎(chǔ)上無(wú)跳變的平穩(wěn)加減速。最后測(cè)試鍵盤的各項(xiàng)控制功能能否正常。</p><p><b> 5.3 測(cè)試結(jié)果</b></p&g
73、t;<p> 經(jīng)測(cè)試表明,本電機(jī)控制系統(tǒng)可以通過(guò)上位機(jī)實(shí)現(xiàn)對(duì)直流電機(jī)的自由設(shè)速正反轉(zhuǎn)和平穩(wěn)加減速的控制,同時(shí)也可以通過(guò)鍵盤實(shí)現(xiàn)自由設(shè)速正反轉(zhuǎn)和平穩(wěn)加減速的控制;還具有顯示、按鍵發(fā)生等多種功能。該系統(tǒng)完全滿足系統(tǒng)設(shè)計(jì)要求。</p><p> 下面的實(shí)物測(cè)試圖是正轉(zhuǎn)和加速的測(cè)試。測(cè)試效果圖如圖5.1到圖5.4所示。經(jīng)測(cè)試表明,以上測(cè)試要求全部通過(guò)。測(cè)試結(jié)果如表4-1。</p><
74、p> 表4-1 電機(jī)主要測(cè)試結(jié)果</p><p><b> 結(jié)束語(yǔ)</b></p><p> 本課題的核心任務(wù)是對(duì)串口通信的研究和對(duì)電機(jī)控制系統(tǒng)的應(yīng)用設(shè)計(jì),本文的研究方案是根據(jù)現(xiàn)有的軟硬件條件,設(shè)計(jì)單片機(jī)的電機(jī)控制系統(tǒng),通過(guò)RS232串口連接至PC機(jī),并進(jìn)行相關(guān)性電機(jī)控制實(shí)驗(yàn)。</p><p><b> 具體內(nèi)容包括如下
75、:</b></p><p> 一、通過(guò)對(duì)現(xiàn)在應(yīng)用比較廣泛、技術(shù)比較成熟的串口通信進(jìn)行研究,并經(jīng)分析論證后設(shè)計(jì)出以STC89C52單片機(jī)為核心控制單元的上位機(jī)電機(jī)控制系統(tǒng)。</p><p> 二、根據(jù)本設(shè)計(jì)——上位機(jī)電機(jī)控制系統(tǒng)的設(shè)計(jì)要求,編寫了系統(tǒng)程序。通過(guò)RS232接口連接至PC機(jī),并進(jìn)行相關(guān)性電機(jī)控制實(shí)驗(yàn)。</p><p> 三、在設(shè)計(jì)好的電機(jī)
76、控制系統(tǒng)平臺(tái)上,進(jìn)行電機(jī)控制系統(tǒng)的軟件開(kāi)發(fā),并通過(guò)不斷的軟硬件調(diào)試、實(shí)物測(cè)試,最終開(kāi)發(fā)出性能優(yōu)越、靈活方便、具有一定實(shí)用價(jià)值的直流電機(jī)在線控制系統(tǒng)。</p><p> 通過(guò)本次畢業(yè)設(shè)計(jì),我更深入的學(xué)到了有關(guān)單片機(jī)的原理及應(yīng)用,并且自主的動(dòng)腦、動(dòng)手能力得到了很大的提高。重要的是能夠?qū)纹瑱C(jī)與實(shí)際生活中的一些應(yīng)用聯(lián)系起來(lái),同時(shí)通過(guò)畢業(yè)設(shè)計(jì)對(duì)PC機(jī)通過(guò)串口控制單片機(jī)有一定的了解。上位機(jī)控制單片機(jī)系統(tǒng),可以用于對(duì)多個(gè)單
77、片機(jī)應(yīng)用系統(tǒng)進(jìn)行實(shí)時(shí)控制,也可通過(guò)調(diào)制/解調(diào)器對(duì)遠(yuǎn)程控制系統(tǒng)進(jìn)行實(shí)時(shí)控制。另外,上位機(jī)不需要進(jìn)行復(fù)雜的編程,直接用微機(jī)的通信串行口進(jìn)行命令控制,并且命令符可自定義??傊覀兪芤娣藴\,這將為我們以后的學(xué)習(xí)以及工作打下良好的基礎(chǔ)。</p><p><b> 致謝</b></p><p> 經(jīng)過(guò)長(zhǎng)期的忙碌,本次畢業(yè)設(shè)計(jì)已基本完成,作為一個(gè)還沒(méi)畢業(yè)的本科生,由于缺乏經(jīng)驗(yàn),
78、導(dǎo)致許多方面考慮不周全,幸好得到了指導(dǎo)老師的督促和同學(xué)們的幫忙,才能夠順利完成了這次畢業(yè)設(shè)計(jì)。在這里,我要先感謝我的指導(dǎo) 老師,是她對(duì)我的悉心指導(dǎo),以及對(duì)畢業(yè)設(shè)計(jì)各方面提供的意見(jiàn),幫我理清了許多疑問(wèn)。還要感謝同學(xué)對(duì)我的幫助,因?yàn)樗麄儯也彭樌瓿闪宋业漠厴I(yè)設(shè)計(jì)。最后,感謝我的母校為我提供了這么一個(gè)優(yōu)良的學(xué)習(xí)環(huán)境,培育我成長(zhǎng)起來(lái), 。</p><p> 在這里,我要對(duì)在校期間幫助過(guò)我的所有人說(shuō)聲謝謝! </
79、p><p><b> 參考文獻(xiàn)</b></p><p> [1] 張毅剛 彭喜元 .單片機(jī)原理與應(yīng)用設(shè)計(jì)[M]. 北京:北京市海淀區(qū)四季青印刷廠,2010.</p><p> [2] 張毅剛.新編MCS-51單片機(jī)運(yùn)用設(shè)計(jì). 哈爾濱:哈爾濱工業(yè)大學(xué)出版社,2003.</p><p> [3] 張義和 王敏男 許宏昌
80、 余長(zhǎng)春.例說(shuō)51單片機(jī)(c語(yǔ)言版). 北京:人民郵電出版社,2009.</p><p> [4] 馬忠梅 籍順心 張 凱 馬 巖.單片機(jī)的C語(yǔ)言應(yīng)用程序設(shè)計(jì). 北京:北京航空航天大學(xué),2010.</p><p> [5] Samsung Electronics. S3C44BOX Risc microcontroller ARM instruction sheet .2002.<
81、;/p><p> [6] 郭天祥.《51單片機(jī)C語(yǔ)言教程》,電子工業(yè)出版社,2005年7月</p><p> [7] 丁元杰.《單片微機(jī)原理及應(yīng)用》,機(jī)械工業(yè)出版社,2005年7月</p><p> [8] 樓然苗、李光.《單片機(jī)課程設(shè)計(jì)指導(dǎo)》,北京: 北京航空航天大學(xué)出版社,2007.</p><p> [9] Okazoe H,Shi
82、mizu K,Watanabe Y.et al. Develop-ment of a Full-FlowBurner Regeneration Type Diesel Particu-late Filter Using SiC Honeycomb[C] .Society of AutomotiveEngineers International Congress and Exposition.Michigan:SAE Paper 9601
83、30. 1996, :27-35 . </p><p> [10] 豈興明、唐杰等.《51單片機(jī)編程基礎(chǔ)與開(kāi)發(fā)實(shí)例詳解》,北京: 人民郵電出版社,2008.</p><p> [11] 王東鋒、王會(huì)良、董冠強(qiáng).《單片機(jī)C語(yǔ)言應(yīng)用100例》,電子工業(yè)出版社,2009.</p><p> 1V. Yu. Teplov,A. V. Anisimov. Thermo
84、statting System Using a Single-Chip Microcomputer and Thermoelectric Modules Based on the Peltier Effect[J] ,2002 </p><p> [12] Yeager Brent.How to troubleshoot your electronic scale[J].. Powder and Bulk En
85、gineering. 1995 </p><p> [13] 周興華.手把手教你學(xué)單片機(jī),北京: 北京航空航天大學(xué)出版社,2005.</p><p> [14] Meehan Joanne,Muir Lindsey.SCM in Merseyside SMEs:Benefits and barriers[J].. TQM Journal. 2008 </p><p&
86、gt; [15]周立功.直流電機(jī)原理與驅(qū)動(dòng)[M].西安:西安電子科技大學(xué)出版社.2008.1</p><p> [16]說(shuō)明書(shū),LED12864液晶完整中文版資料</p><p> [17]王曉明 電動(dòng)機(jī)的單片機(jī)控制(第3版) 北京航空航天大學(xué)出版社.2011</p><p><b> 附錄</b></p>&l
87、t;p> 附錄1 直流電機(jī)在線控制系統(tǒng)程序</p><p> /*******************************************************************************************</p><p> 基于STC89C52和L298的直流電機(jī)的在線控制,同時(shí)可以通過(guò)鍵盤來(lái)控制電機(jī)</p><p&
88、gt; 在線控制的指令要求,選用16進(jìn)制 </p><p> 1 XX 正傳 1代表正傳,XX代表速度</p><p><b> 2 XX 反轉(zhuǎn)</b></p><p> 3 加速 加速只會(huì)加速到最大,還沒(méi)有實(shí)現(xiàn)加速到一定量或者是加速一定量</p><p> 4 減速 減速只會(huì)加速到零,還
89、沒(méi)有實(shí)現(xiàn)減速到一定量或者是減速一定量</p><p> 通過(guò)鍵盤一樣可以控制電機(jī),檢速電路沒(méi)有實(shí)現(xiàn)</p><p> ********************************************************************************************/</p><p> #include<reg51.h
90、></p><p> #define uchar unsigned char</p><p> #define uint unsigned int</p><p> #define LcdBus P2</p><p> sbit Key0=P0^0; //循環(huán)選擇鍵</p><p> sb
91、it Key1=P0^1; //"+"下一頁(yè)</p><p> sbit Key2=P0^2; //"-"上一頁(yè)</p><p> sbit Key3=P0^3; //確定鍵</p><p> sbit Lcd_RS=P0^4;</p><p> sbit Lcd_RW=P0^
92、5;</p><p> sbit Lcd_EN=P0^6; //12864控制端口</p><p> sbit MotorIN1=P1^0; </p><p> sbit MotorIN2=P1^1; //單片機(jī)對(duì)L298的控制端口</p><p> sbit Speaker=P3^3;</p><
93、p> /*-----------------------------------變量定義--------------------------------------*/</p><p> uchar const code SysName[]={"電機(jī)在線控制"};</p><p> uchar const code Name1[]={"電機(jī)狀態(tài):停
94、止"};</p><p> uchar const code Name2[]={"預(yù)設(shè)脈寬:000T/q"};</p><p> uchar const code Name3[]={"反饋脈寬:000T/q"};</p><p> uchar constcode Name4[]={"01234567
95、89"};</p><p> uchar constcode Status0[]={"停止"};</p><p> uchar const code Status1[]={"轉(zhuǎn)"};</p><p> uchar const code Status2[]={"反轉(zhuǎn)"};</p>
96、<p> uchar const code Status3[]={"加速"};</p><p> uchar const code Status4[]={"減速"};</p><p> uchar OldMotorIN1=0,OldMotorIN2=0; </p><p> char PcToMcu[2]
97、={0};</p><p> char PcToMcu0;</p><p> char SetSpeed[3]={0};</p><p> char Speed[3]={0};</p><p> char OldPcToMcu1;</p><p> uchar Status=0;
98、 //0:停止 1:正轉(zhuǎn) 2:反轉(zhuǎn) </p><p> uchar PWM=0;</p><p> uchar Keynum0=0,Keynum1=0;</p><p> uchar ReFlag=0;</p><p> uchar SetFlag=0;</p><p> uchar Fl
99、ag=0;</p><p> void Init(void);</p><p> void InitLcd(void);</p><p> void Keyscan(void);</p><p> void Display(void);</p><p> void Wr_com12864(uchar com)
100、;</p><p> void Wr_dat12864(uchar dat);</p><p> void delay(uint n);</p><p> void Time0_Init(void);</p><p> void Uart_Init(void);</p><p> void Work(void
101、);</p><p> void Keysound(void);</p><p> void main()</p><p><b> {</b></p><p><b> Init();</b></p><p><b> while(1)</b>
102、;</p><p><b> { </b></p><p> if(SetFlag==0)Work();</p><p> Keyscan();</p><p> if(SetFlag==0)Display();</p><p><b> }</b></p&g
103、t;<p><b> }</b></p><p> /*==============================子函數(shù)區(qū)===============================*/</p><p> void Init(void)</p><p><b> {</b></p>
104、<p> InitLcd();</p><p> Uart_Init();</p><p> Time0_Init();</p><p><b> }</b></p><p> /*---------------------------鍵盤掃描函數(shù)---------------------------
105、---*/</p><p> void Keyscan(void)</p><p><b> { </b></p><p> if(Key0==0) //循環(huán)選擇</p><p><b> {</b></p><p&g
106、t; OldPcToMcu1=PcToMcu[1];</p><p> Keynum0++;</p><p> SetFlag=1;</p><p> while(Key0==0)Keysound();</p><p><b> }</b></p><p> if(SetFlag)
107、 //進(jìn)入設(shè)置模式</p><p><b> {</b></p><p> switch(Keynum0)</p><p><b> {</b></p><p> case 1:Wr_com12864(0x95);Wr_com12864(0x0
108、f);break;</p><p> case 2:Wr_com12864(0x8E);Wr_com12864(0x0f);break; </p><p> case 3:Wr_com12864(0x8D);Wr_com12864(0x0f);break;</p><p> case 4:Keynum0=1;break;</p><p&
109、gt; default:break;</p><p><b> }</b></p><p> if(Key1==0) //"+"</p><p><b> {</b></p><p> switch(Keynum0
110、)</p><p><b> {</b></p><p> case 1:if(++PcToMcu0>4)PcToMcu0=0;break;</p><p> case 2:SetSpeed[0]++;</p><p> if(SetSpeed[0]>9)</p><p>
111、SetSpeed[0]=0;</p><p> break; //設(shè)定值的設(shè)定</p><p> case 3:SetSpeed[1]++;</p><p> if(SetSpeed[1]>9)</p><p><b> {</b></p><p> SetSpeed[1]=0
112、;</p><p> SetSpeed[2]++;</p><p> if(SetSpeed[2]>9)</p><p> SetSpeed[2]=0;</p><p><b> }</b></p><p><b> break;</b></p>
113、<p> case 4:Keynum0=1;break;</p><p> default:break;</p><p><b> }</b></p><p> Display(); //刷新顯示</p><p> Wr_com12864(0x0c);
114、 //去掉光標(biāo)閃爍</p><p> while(Key1==0)Keysound();</p><p><b> }</b></p><p> if(Key2==0) //"-"</p><p><b> {&
115、lt;/b></p><p> switch(Keynum0)</p><p><b> {</b></p><p> case 1:if(--PcToMcu0<0)PcToMcu0=4;break;</p><p> case 2:SetSpeed[0]--;</p><p>
116、; if(SetSpeed[0]<0)</p><p> SetSpeed[0]=9;</p><p> break; //設(shè)定值的設(shè)定</p><p> case 3:SetSpeed[1]--;</p><p> if(SetSpeed[1]<0)</p><p><b> {
117、</b></p><p> SetSpeed[1]=9;</p><p> SetSpeed[2]--;</p><p> if(SetSpeed[2]<0)</p><p> SetSpeed[2]=9;</p><p><b> }</b></p>&
溫馨提示
- 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ù)僅提供信息存儲(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ī)控制直流電機(jī)調(diào)速系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)(論文)基于單片機(jī)的直流電機(jī)控制系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---單片機(jī)控制直流電機(jī)調(diào)速系統(tǒng)
- 單片機(jī)控制直流電機(jī)調(diào)速系統(tǒng)畢業(yè)設(shè)計(jì)
- 基于單片機(jī)控制直流電機(jī)調(diào)速系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 基于單片機(jī)控制直流電機(jī)調(diào)速系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)----51單片機(jī)控制直流電機(jī)
- 用單片機(jī)控制直流電機(jī)畢業(yè)設(shè)計(jì)
- 基于單片機(jī)的直流電機(jī)轉(zhuǎn)速pid控制系統(tǒng)設(shè)計(jì)_畢業(yè)設(shè)計(jì)論文
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)--基于單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)設(shè)計(jì)
- 基于單片機(jī)控制直流電機(jī)調(diào)速系統(tǒng)畢業(yè)設(shè)計(jì)論文
- 基于單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)畢業(yè)設(shè)計(jì)
- 畢業(yè)設(shè)計(jì)---基于單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)
- 基于單片機(jī)的直流電機(jī)轉(zhuǎn)速pid控制系統(tǒng)設(shè)計(jì)_畢業(yè)設(shè)計(jì)論文
- 基于單片機(jī)的直流電機(jī)控制設(shè)計(jì)
評(píng)論
0/150
提交評(píng)論