2023年全國碩士研究生考試考研英語一試題真題(含答案詳解+作文范文)_第1頁
已閱讀1頁,還剩46頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡介

1、<p><b>  摘 要</b></p><p>  該系統(tǒng)為一個(gè)帆板控制系統(tǒng),通過對風(fēng)扇轉(zhuǎn)速的控制,調(diào)節(jié)風(fēng)力大小改變帆板角度。為了滿足帆板控制系統(tǒng)的設(shè)計(jì)要求,進(jìn)行了各單元模塊的比較論證及確定,本系統(tǒng)以AT89C52單片機(jī)作為系統(tǒng)的核心控制芯片,選HQ7101模擬三軸加速度傳感器模塊來測量帆板轉(zhuǎn)動的角度,靈敏度高,滿足對角度的準(zhǔn)確測量。</p><p> 

2、 對于關(guān)鍵的電機(jī)驅(qū)動電路,經(jīng)過充分的比較與論證,最終選用驅(qū)動模塊L298N,通過單片機(jī)輸出PWM脈沖,更好地實(shí)現(xiàn)了電機(jī)的調(diào)速;并且加入PID控制,實(shí)現(xiàn)了控制角度的優(yōu)化。系統(tǒng)顯示部分采用12864液晶顯示,串行接口,編程容易,并且現(xiàn)實(shí)的信息量大。</p><p>  關(guān)鍵詞: AT89C52 ;PWM脈沖;L298N</p><p><b>  Abstract</b>

3、</p><p>  This system is a panel control system, through the control of the fan speed, adjust the size change wind windsurfing angle. In order to meet the requirements of design panel control system, compare

4、s and demonstrates each module and determination, this system takes the AT89C52 single chip as the core control chip, HQ7101 simulation of three axis accelerometer module to measure the windsurfing rotation angle, high s

5、ensitivity, accurate measurement of the angle of the meeting.</p><p>  The key of the motor drive circuit, through comparison with sufficient argumentation, the final selection of the drive module L298N, pul

6、se through the singlechip output PWM, better realize the motor speed; and adding PID control, to realize the optimization of control angle. System display part adopts 12864 liquid crystal display, serial interface, easy

7、programming, and the amount of information real big.</p><p>  Keywords: AT89C52 ; PWM pulse; L298N.</p><p><b>  目錄</b></p><p><b>  1緒論1</b></p><

8、p>  1.1課題研究的背景及目的1</p><p>  1.2帆板控制系統(tǒng)在國內(nèi)外的現(xiàn)狀分析1</p><p>  1.3課題研究的主要內(nèi)容2</p><p>  1.4課題研究的目標(biāo)2</p><p>  1.5擬解決的關(guān)鍵問題2</p><p>  2系統(tǒng)方案選擇及論證3</p>

9、<p><b>  2.1系統(tǒng)方案3</b></p><p>  2.1.1主控制器的選擇3</p><p>  2.1.2電源模塊的選擇4</p><p>  2.1.3角度信號采集模塊的選擇4</p><p>  2.1.4 A/D轉(zhuǎn)換模塊的選擇4</p><p>  2.

10、1.5驅(qū)動模塊的選擇5</p><p>  2.1.6顯示模塊的選擇5</p><p>  2.2 系統(tǒng)理論分析與計(jì)算5</p><p>  3系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)6</p><p>  3.1系統(tǒng)硬件的基本組成6</p><p>  3.2硬件電路模塊設(shè)計(jì)6</p><p>  3.

11、2.1 AT89C52控制芯片設(shè)計(jì)6</p><p>  3.2.2驅(qū)動模塊電路設(shè)計(jì)9</p><p>  3.2.3采集模塊電路設(shè)計(jì)10</p><p>  3.2.4顯示模塊電路設(shè)計(jì)10</p><p>  3.5電源模塊電路設(shè)計(jì)11</p><p>  3.5.1 直流穩(wěn)壓電源的基本原理11</

12、p><p>  3.5.2 電源電路設(shè)計(jì)13</p><p><b>  4 軟件設(shè)計(jì)14</b></p><p>  4.1程序功能描述與設(shè)計(jì)思路14</p><p>  4.2 LCD液晶顯示的設(shè)計(jì)14</p><p>  4.3 角度控制流程圖15</p><p&g

13、t;  4.4系統(tǒng)流程圖15</p><p>  5 結(jié)論與總結(jié)16</p><p><b>  5.1 結(jié)論16</b></p><p><b>  5.2 總結(jié)17</b></p><p><b>  6 致謝17</b></p><p>

14、<b>  7 參考文獻(xiàn)18</b></p><p><b>  1緒論</b></p><p>  1.1課題研究的背景及目的</p><p>  利用帆板角度控制系統(tǒng)可以測量風(fēng)力大小,假如可以精確測量出帆板偏轉(zhuǎn)角度,那樣就可以算出風(fēng)力大小,研究成功,帆板角度控制系統(tǒng)將成為測量風(fēng)力大小產(chǎn)品,就可以節(jié)約很多電能,又可以把

15、測量風(fēng)力設(shè)備向智能化產(chǎn)品過渡,而且在原來基礎(chǔ)上更加完美和人性化。單片機(jī)應(yīng)用意義不僅在于它廣闊范圍及所帶來經(jīng)濟(jì)效益。更重要意義在于,單片機(jī)應(yīng)用從根本上改變了控制系統(tǒng)傳統(tǒng)設(shè)計(jì)思想和設(shè)計(jì)方法。以前采用硬件電路實(shí)現(xiàn)大部分控制功能,正在用單片機(jī)通過軟件方法來實(shí)現(xiàn)。以前自動控制中PID調(diào)節(jié),現(xiàn)在可以用單片機(jī)實(shí)現(xiàn)具有智能化數(shù)字計(jì)算控制、模糊控制和自適應(yīng)控制。</p><p>  單片機(jī)又稱單片微控制器,單片機(jī)具有體積小、功耗低

16、、控制功能強(qiáng)、擴(kuò)展靈活、微型化和使用方便等優(yōu)點(diǎn),廣泛應(yīng)用于儀器儀表中,結(jié)合不同類型的傳感器,可實(shí)現(xiàn)諸如電壓、功率、頻率、濕度、溫度、流量、速度、厚度、角度、長度、硬度等物理量的測量。本系統(tǒng)就是以單片機(jī)為核心建立起來的,要實(shí)現(xiàn)對帆板轉(zhuǎn)角大小的控制,其歸根就是對風(fēng)扇的控制,帆板的轉(zhuǎn)角隨著風(fēng)扇風(fēng)力的變化而變化,角度傳感器給單片機(jī)不同的角度檢測信號,經(jīng)單片機(jī)處理后在LCD液晶上顯示。系統(tǒng)體現(xiàn)了模塊化的設(shè)計(jì)理念,將單片機(jī)和各個(gè)器件結(jié)合在一起,完成

17、系統(tǒng)化的設(shè)計(jì),充分發(fā)揮了單片機(jī)的可靠性、可操作性和強(qiáng)大處理功能。</p><p>  在搖動帆式風(fēng)力發(fā)電系統(tǒng)中,通過帆板的往復(fù)搖轉(zhuǎn)轉(zhuǎn)變?yōu)樾D(zhuǎn)運(yùn)動后可以驅(qū)動發(fā)電機(jī)發(fā)電,且具有發(fā)電效率高和良好的低風(fēng)速發(fā)電特性和優(yōu)異的耐強(qiáng)風(fēng)性特點(diǎn)。帆板轉(zhuǎn)角在一定范圍內(nèi)時(shí)發(fā)電效率較高。</p><p>  1.2帆板控制系統(tǒng)在國內(nèi)外的現(xiàn)狀分析</p><p>  目前國內(nèi)外有類似的研究,但

18、是不是很多,因?yàn)榉蹇刂葡到y(tǒng)本身也有它的局限性,首先,可應(yīng)用的范圍是比較廣泛,但是一般不可單獨(dú)使用,很多時(shí)候需要其他設(shè)備的輔助和支持,但是不可否認(rèn),它的的確確得到了一定的應(yīng)用,例如在條件要求極其苛刻,不允許有漏電,電磁輻射等破壞和干擾的條件下,所有電器幾乎都不用使用,帆板控制系統(tǒng)就可以實(shí)現(xiàn)較遠(yuǎn)距離的閉環(huán)式自動控制,滿足特殊環(huán)境下的控制要求,不僅如此它在農(nóng)業(yè)、軍事、航空等領(lǐng)域也都有重大應(yīng)用潛力。</p><p> 

19、 單片機(jī)源于20世紀(jì)70年代,到現(xiàn)在也有一定歷史,單片機(jī)發(fā)展經(jīng)歷了幾個(gè)不同階段,現(xiàn)在單片機(jī)越來越成熟,成為一些智能化產(chǎn)品設(shè)計(jì)者研究對象。隨著社會發(fā)展,智能化已經(jīng)成為現(xiàn)代化產(chǎn)品發(fā)展新趨勢,基于微機(jī)控制系統(tǒng)智能化有利于對帆板控制。是否可以實(shí)現(xiàn)遠(yuǎn)程控制、是否可以進(jìn)行語音報(bào)警。又成為越來越感興趣研究方向。國內(nèi)外走在積極發(fā)展這方面技術(shù)一應(yīng)用于生產(chǎn)生活,控制系統(tǒng)隨社會發(fā)展需求發(fā)展,將會更加智能化,便捷化,更靈活,更方便應(yīng)用于生產(chǎn)生活,帆板轉(zhuǎn)角控制系

20、統(tǒng)研究發(fā)展就沿這趨勢。</p><p>  1.3課題研究的主要內(nèi)容</p><p>  以單片機(jī)控制系統(tǒng)為核心,設(shè)計(jì)一個(gè)帆板控制系統(tǒng),通過對風(fēng)扇轉(zhuǎn)速的控制,調(diào)節(jié)風(fēng)力大小,改變帆板轉(zhuǎn)角θ,可實(shí)現(xiàn)轉(zhuǎn)角值的實(shí)時(shí)顯示和控制。</p><p>  1.4課題研究的目標(biāo)</p><p>  提高了系統(tǒng)抗干擾性、準(zhǔn)確性和穩(wěn)定性,整個(gè)控制系統(tǒng)響應(yīng)速度快,成

21、本低,容易驅(qū)動控制,噪音小、低功耗,。就基本滿足設(shè)計(jì)要求。</p><p>  1.5擬解決的關(guān)鍵問題</p><p>  (1)對風(fēng)扇電機(jī)轉(zhuǎn)速進(jìn)行快速而準(zhǔn)確控制,以保證風(fēng)扇轉(zhuǎn)角在控制范圍內(nèi);</p><p> ?。?)為保證系統(tǒng)精度要求,必須要對帆板轉(zhuǎn)動角度進(jìn)行實(shí)時(shí)檢測;</p><p> ?。?)為保證帆板在盡可能短時(shí)間內(nèi)達(dá)到預(yù)定角度還需

22、要相應(yīng)設(shè)定及顯示電路。</p><p>  2系統(tǒng)方案選擇及論證</p><p><b>  2.1系統(tǒng)方案</b></p><p>  本系統(tǒng)主要由主控制模塊、驅(qū)動模塊、采集模塊、顯示模塊、電源模塊組成,系統(tǒng)框圖見圖2-1所示。</p><p><b>  圖2-1系統(tǒng)總框圖</b></p&

23、gt;<p>  該系統(tǒng)的工作原理是:通過調(diào)節(jié)裝置(單片機(jī))控制電機(jī)驅(qū)動芯片L298N,控制電機(jī)帶動風(fēng)扇的轉(zhuǎn)動(通過調(diào)節(jié)PWM調(diào)節(jié)電機(jī)的轉(zhuǎn)速),使帆板與豎直平面達(dá)到到一定的夾角,通過角度傳感器不斷測量帆板的轉(zhuǎn)角(即實(shí)際轉(zhuǎn)角),該實(shí)際轉(zhuǎn)角與給定轉(zhuǎn)角作比較,形成轉(zhuǎn)角偏差,通過直流電機(jī)控制風(fēng)扇的轉(zhuǎn)速,通過PID控制不斷修正該轉(zhuǎn)角偏差,最終使轉(zhuǎn)角保持在給定范圍之內(nèi)。</p><p>  2.1.1主控制器的

24、選擇</p><p>  方案一:采用FPGA作為系統(tǒng)的控制器</p><p>  FPGA采用并行的輸入輸出方式,提高了系統(tǒng)的處理速度,適合作為大規(guī)模實(shí)時(shí)系統(tǒng)控制核心。但由于本設(shè)計(jì)對數(shù)據(jù)處理的速度要求不高,同時(shí)由于芯片的引腳較多,電路板布線復(fù)雜,加大了電路設(shè)計(jì)和實(shí)際焊接的工作量。</p><p>  方案二:采用AT89C51系列的單片機(jī)作為主控制器</p&

25、gt;<p>  51系列芯片目前使用范圍最廣,價(jià)格便宜,但速度較慢,數(shù)據(jù)量大時(shí)速度難以滿足要求。而且其功能單一,需要仿真器來實(shí)現(xiàn)軟硬件調(diào)試,較為煩瑣。</p><p>  方案三:AT89C52控制芯片</p><p>  AT89C52控制芯片是一個(gè)低電壓,片內(nèi)含8kbytes的可反復(fù)擦寫的只讀程序存儲器和256bytes的隨機(jī)存取數(shù)擇方據(jù)存儲器,器件采用的高密度、非易失

26、性存儲技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元.</p><p>  綜合以上三種方案,選案三。</p><p>  2.1.2電源模塊的選擇</p><p>  方案一:所有器件采用單一電源(5節(jié)五號電池)。供電較簡單,但由于電動機(jī)啟動瞬間電流很大,會造成電壓不穩(wěn)、有毛刺等干擾,嚴(yán)重時(shí)可能會造成單片機(jī)系統(tǒng)掉電,且容易沒電

27、,使之不能完成題目的要求。</p><p>  方案二:使用交流電220v供電,搭建獨(dú)立電源模塊,經(jīng)變壓器變壓后,再用7812、7805芯片進(jìn)行穩(wěn)壓。5V電源為單片機(jī)及其他傳感器、顯示屏等模塊供電。使用220v交流電不僅能保證電量充足,而且相對于干電池有恒定的電壓和電流。</p><p>  綜合以上兩種方案,故擬采用方案二。</p><p>  2.1.3角度信號

28、采集模塊的選擇</p><p>  方案一:使用無觸點(diǎn)磁敏電位器自制重錘角度傳感器。該角度傳感器安裝在帆板上,當(dāng)帆板處在非平衡狀態(tài)時(shí),帆板的傾斜角度反映在重錘的轉(zhuǎn)角上,再通過A/D轉(zhuǎn)換將角度信號采集到處理器中進(jìn)行相關(guān)的處理。但在本設(shè)計(jì)中要使帆板達(dá)到一定的角度就要克服傳感器的重量,而這樣會大大的增加帆板的負(fù)重,影響設(shè)計(jì)效果。</p><p>  方案二:采用HQ7101模擬三軸加速度模塊。此

29、傳感器功耗電流降低至200μA,比同類器件的功耗典型值低50%,測量動態(tài)范圍是±3g,具有10000g額定耐沖壓強(qiáng)度,具有良好的0g偏壓穩(wěn)定性和良好的靈敏度,且該傳感器靈敏度高、體積小、質(zhì)量輕且易操作,所以該傳感器能很好的測量帆板轉(zhuǎn)動角度,</p><p>  根據(jù)本題的要求,選擇第二種方案。</p><p>  2.1.4 A/D轉(zhuǎn)換模塊的選擇</p><p

30、>  方案一:TLC1543美國TI司生產(chǎn)的多通道10位模數(shù)轉(zhuǎn)換器。采用串行通信接口,具有輸入通道多、性價(jià)比高、易于和單片機(jī)接口的特點(diǎn),可廣泛應(yīng)用于各種數(shù)據(jù)采集系統(tǒng),但其AD轉(zhuǎn)換精度不能滿足該系統(tǒng)對帆板角度的準(zhǔn)確測量。</p><p>  方案二:AD7715是美國ADI公司生產(chǎn)的16位模數(shù)轉(zhuǎn)換器,采用單一5V或3V電源供電,可用最少數(shù)量的口線與單片機(jī)或微處理器相接,適用于單通道低速小信號采樣的應(yīng)用場合。在

31、該系統(tǒng)中,它以16位的串行方式直接傳送給微控制器或微處理器,適合在系統(tǒng)測量中的應(yīng)用。</p><p>  根據(jù)本設(shè)計(jì)的要求,我們最終選用了方案二。</p><p>  2.1.5驅(qū)動模塊的選擇</p><p>  方案一:采用大功率三極管,二極管,電阻電容等元件。用上述元件搭建兩個(gè)H橋,通過對各路信號放大來驅(qū)動電機(jī),原理簡單。但由于放大電路很難做到完全一致,當(dāng)電機(jī)的

32、功率較大時(shí)運(yùn)行起來會不穩(wěn)定,很難精確控制。</p><p>  方案二:采用L298N驅(qū)動芯片。L298N芯片是較常用的電機(jī)驅(qū)動芯片。該芯片有兩個(gè)TTL/CMOS兼容電平的輸入,具有良好的抗干擾性能,可用單片機(jī)的I/O口提供信號,其輸出的PWM脈沖控制直流電機(jī),能夠?qū)﹄姍C(jī)轉(zhuǎn)速的上升與下降進(jìn)行平滑調(diào)節(jié),保證調(diào)節(jié)過程中本身對風(fēng)扇的影響最低,且電路簡單、易用、穩(wěn)定,具有較高的性價(jià)比。</p><p&

33、gt;  綜上所述,我們決定采用方案二。</p><p>  2.1.6顯示模塊的選擇</p><p>  方案一:用LED顯示,優(yōu)點(diǎn)亮度高、成本低,易于單片機(jī)編程,但是顯示時(shí)占用I/O口多,信息量不足。</p><p>  方案二:采用LCD_12864液晶顯示,功耗低、無輻射顯示穩(wěn)定、抗干擾能力強(qiáng),編程控制簡單,使用方便,顯示信息能力強(qiáng)等特點(diǎn)。</p>

34、;<p>  考慮到本設(shè)計(jì)的要求,我們選擇方案二。</p><p>  2.2 系統(tǒng)理論分析與計(jì)算</p><p>  根據(jù)題目設(shè)計(jì)要求,控制風(fēng)扇風(fēng)力的大小,使帆板能在0到60度范圍內(nèi)變化。我們通過按鍵控制單片機(jī)輸出的PWM信號控制電機(jī)轉(zhuǎn)速的快慢來控制風(fēng)扇風(fēng)力的大小。</p><p>  通過加速度傳感器檢測帆板的角度,經(jīng)AD轉(zhuǎn)換電路轉(zhuǎn)換為數(shù)字量變化,

35、從而也可以通過調(diào)節(jié)PWM來調(diào)節(jié)電機(jī)的轉(zhuǎn)速,所以只要帆板能在0到60度范圍內(nèi)變化,并且能夠控制電機(jī)的轉(zhuǎn)速使帆板保持在一定的角度。</p><p>  3系統(tǒng)硬件設(shè)計(jì)與實(shí)現(xiàn)</p><p>  3.1系統(tǒng)硬件的基本組成</p><p>  本系統(tǒng)主要由主控制模塊、驅(qū)動模塊、采集模塊、顯示模塊、電源模塊組成其結(jié)構(gòu)框圖如圖3-1所示,幾個(gè)模塊之間相互獨(dú)立且存在聯(lián)系,實(shí)現(xiàn)狀態(tài)

36、的上傳和控制命令的下發(fā)。</p><p>  圖3-1系統(tǒng)控制框圖</p><p>  3.2硬件電路模塊設(shè)計(jì)</p><p>  3.2.1 AT89C52控制芯片設(shè)計(jì)</p><p>  AT89C52是一個(gè)低電壓,片內(nèi)含8kbytes的可反復(fù)擦寫的只讀程序存儲器和256bytes的隨機(jī)存取數(shù)據(jù)存儲器,器件采用的高密度、非易失性存儲技術(shù)生

37、產(chǎn),兼容標(biāo)準(zhǔn)MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單元,AT89C52單片機(jī)在電子行業(yè)中有著廣泛的應(yīng)用。</p><p>  (1)功能及主要特性:</p><p>  1、兼容MCS51指令系統(tǒng)  </p><p>  2、8k可反復(fù)擦寫(大于1000次)FlashROM;  </p><p>  3、32個(gè)雙向I/

38、O口;  </p><p>  4、256x8bit內(nèi)部RAM;  </p><p>  5、3個(gè)16位可編程定時(shí)/計(jì)數(shù)器中斷;  </p><p>  6、時(shí)鐘頻率0-24MHz;  </p><p>  7、2個(gè)串行中斷,可編程UART串行通道;  </p><p>  8、2個(gè)外部中斷源,共8個(gè)中斷源;  <

39、;/p><p>  9、2個(gè)讀寫中斷口線,3級加密位;  </p><p>  10、低功耗空閑和掉電模式;  </p><p>  11、有PDIP、PQFP、TQFP及PLCC等幾種封裝形式,以適應(yīng)不同產(chǎn)品的需求。</p><p>  (2)引腳功能及管腳</p><p>  圖3-2AT89C52引腳圖</p&

40、gt;<p>  主要管腳有:XTAL1(19腳)和XTAL2(18腳)為振蕩器輸入輸出端口,外接12MHz晶振。RST/Vpd(9腳)為復(fù)位輸入端口,外接電阻電容組成的復(fù)位電路。VCC(40腳)和VSS(20腳)為供電端口,分別接+5V電源的正負(fù)端。P0~P3為可編程通用I/O腳,其功能用途由軟件定義,在本設(shè)計(jì)中,P0端口(32~39腳)被定義為N1功能控制端口,分別與N1的相應(yīng)功能管腳相連接,13腳定義為IR輸入端,1

41、0腳和11腳定義為I2C總線控制端口,分別連接N1的SDAS(18腳)和SCLS(19腳)端口,12腳、27腳及28腳定義為握手信號功能端口,連接主板CPU的相應(yīng)功能端,用于當(dāng)前制式的檢測及會聚調(diào)整狀態(tài)進(jìn)入的控制功能。</p><p>  P0口:P0口是一組8位漏極開路型雙向I/O口,也即地址/數(shù)據(jù)總線復(fù)用口。作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動8個(gè)TTL邏輯門電路,對端口P0寫“1”時(shí),可作為高阻抗輸入端

42、用。在訪問外部數(shù)據(jù)存儲器或程序存儲器時(shí),這組口線分時(shí)轉(zhuǎn)換地址(低8位)和數(shù)據(jù)總線復(fù)用,在訪問期間激活內(nèi)部上拉電阻。在Flash編程時(shí),P0口接收指令字節(jié),而在程序校驗(yàn)時(shí),輸出指令字節(jié),校驗(yàn)時(shí),要求外接上拉電阻。</p><p>  P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級可驅(qū)動(吸收或輸出電流)4個(gè)TTL邏輯門電路。對端口寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可作輸入口。作

43、輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號拉低時(shí)會輸出一個(gè)電流(IIL)。與AT89C51不同之處是,P1.0和P1.1還可分別作為定時(shí)/計(jì)數(shù)器2的外部計(jì)數(shù)輸入(P1.0/T2)和輸入(P1.1/T2EX)</p><p>  P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級可驅(qū)動(吸收或輸出電流)4TTL邏輯門電路。對端口P2寫“1”,通過內(nèi)部的上拉電阻把端口拉到高電平,此時(shí)可

44、作輸入口,作輸入口使用時(shí),因?yàn)閮?nèi)部存在上拉電阻,某個(gè)引腳被外部信號拉低時(shí)會輸出一個(gè)電流(IIL)。在訪問外部程序存儲器或16位地址的外部數(shù)據(jù)存儲器(例如執(zhí)行MOVX@DPTR指令)時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問8位地址的外部數(shù)據(jù)存儲器(如執(zhí)行MOVX@RI指令)時(shí),P2口輸出P2鎖存器的內(nèi)容。Flash編程或校驗(yàn)時(shí),P2亦接收高位地址和一些控制信號。</p><p>  P3口:P3口是一組帶有內(nèi)部上拉電阻

45、的8位雙向I/O口。P3口輸出緩沖級可驅(qū)動(吸收或輸出電流)4個(gè)TTL邏輯門電路。對P3口寫入“1”時(shí),它們被內(nèi)部上拉電阻拉高并可作為輸入端口。此時(shí),被外部拉低的P3口將用上拉電阻輸出電流(IIL)。P3口除了作為一般的I/O口線外,更重要的用途是它的第二功能P3口還接收一些用于Flash閃速存儲器編程和程序校驗(yàn)的控制信號。</p><p>  RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電

46、平將使單片機(jī)復(fù)位。</p><p>  ALE/PROG:當(dāng)訪問外部程序存儲器或數(shù)據(jù)存儲器時(shí),ALE(地址鎖存允許)輸出脈沖用于鎖存地址的低8位字節(jié)。一般情況下,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的脈沖信號,因此它可對外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問外部數(shù)據(jù)存儲器時(shí)將跳過一個(gè)ALE脈沖。對Flash存儲器編程期間,該引腳還用于輸入編程脈沖(PROG)。如有必要,可通過對特殊功能寄存器(SFR)區(qū)

47、中的8EH單元的D0位置位,可禁止ALE操作。該位置位后,只有一條MOVX和MOVC指令才能將ALE激活。此外,該引腳會被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE禁止位無效。</p><p>  PSEN:程序儲存允許(PSEN)輸出是外部程序存儲器的讀選通信號,當(dāng)AT89C52由外部程序存儲器取指令(或數(shù)據(jù))時(shí),每個(gè)機(jī)器周期兩次PSEN有效,即輸出兩個(gè)脈沖。在此期間,當(dāng)訪問外部數(shù)據(jù)存儲器,將跳過兩次PSEN

48、信號。</p><p>  EA/VPP:外部訪問允許。欲使CPU僅訪問外部程序存儲器(地址為0000H—FFFFH),EA端必須保持低電平(接地)。需注意的是:如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會鎖存EA端狀態(tài)。如EA端為高電平(接Vcc端),CPU則執(zhí)行內(nèi)部程序存儲器中的指令。Flash存儲器編程時(shí),該引腳加上+12V的編程允許電源Vpp,當(dāng)然這必須是該器件是使用12V編程電壓Vpp。</p>

49、<p>  XTAL1:振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸入端。</p><p>  XTAL2:振蕩器反相放大器的輸出端。</p><p>  3.2.2驅(qū)動模塊電路設(shè)計(jì)</p><p>  驅(qū)動模塊采用L298N驅(qū)動芯片。利用12V電源供電,通過單片機(jī)的I/O口提供輸入信號,其輸出的PWM脈沖控制直流電機(jī),能夠?qū)﹄姍C(jī)轉(zhuǎn)速的啟動與停止進(jìn)行調(diào)節(jié),其電路

50、原理圖如圖3-3所示。</p><p>  圖3-3驅(qū)動模塊電路原理圖</p><p>  3.2.3采集模塊電路設(shè)計(jì)</p><p>  采集模塊電路分別有傳感器模塊和轉(zhuǎn)換模塊組成,傳感器模塊利用HQ7101三軸加速度傳感器實(shí)現(xiàn)信息的采集,轉(zhuǎn)換模塊使用AD7715芯片實(shí)現(xiàn)模數(shù)轉(zhuǎn)換功能,當(dāng)加速度傳感器檢測到有效信號時(shí),便將信號傳輸給AD7715進(jìn)行轉(zhuǎn)算,AD771再

51、將轉(zhuǎn)換后的信號傳輸給單片機(jī)從而實(shí)現(xiàn)角度的測量,其硬件電路圖如圖3-4所示。</p><p>  圖3-4采集模塊電路原理圖</p><p>  3.2.4顯示模塊電路設(shè)計(jì)</p><p>  顯示模塊利用ST7920的12864液晶顯示,液晶通過串行工作方式與單片機(jī)I/O口連接,當(dāng)顯示數(shù)據(jù)時(shí),液晶能很好的顯示出所要的效果,其電路原理圖如3-5所示。</p>

52、;<p>  圖3-5顯示模塊電路原理圖</p><p>  3.5電源模塊電路設(shè)計(jì)</p><p>  3.5.1 直流穩(wěn)壓電源的基本原理</p><p>  直流穩(wěn)壓電源一般由電源變壓器T、整流、濾波及穩(wěn)壓電路所組成,基本框圖如圖3-6所示。</p><p>  圖3-6直流穩(wěn)壓電源框圖及波形</p><

53、p>  1、電源變壓器T的作用是將220V的交流電壓變換成整流濾波電路所需要的交流電壓Ui。變壓器副邊與原邊的功率比為P2/P1=n,式中n是變壓器的效率。</p><p>  2、整流電路:整流電路將交流電壓Ui變換成脈動的直流電壓。再經(jīng)濾波電路濾除較大的波紋成分,輸出波紋較小的直流電壓U1。常用的整流濾波電路有全波整流濾波、橋式整流濾波等。</p><p><b>  

54、圖3-7 整流電路</b></p><p>  3、濾波電路:各濾波電路C滿足RL-C=(3~5)T/2,式中T為輸入交流信號周期,RL為整流濾波電路的等效負(fù)載電阻。</p><p><b>  圖3-8 濾波電路</b></p><p>  4、穩(wěn)壓電路:常用的穩(wěn)壓電路有兩種形式:一是穩(wěn)壓管穩(wěn)壓電路,二是串聯(lián)型穩(wěn)壓電路。二者的工

55、作原理有所不同。穩(wěn)壓管穩(wěn)壓電路其工作原理是利用穩(wěn)壓管兩端的電壓稍有變化,會引起其電流有較大變化這一特點(diǎn),通過調(diào)節(jié)與穩(wěn)壓管串聯(lián)的限流電阻上的壓降來達(dá)到穩(wěn)定輸出電壓的目的。它一般適用于負(fù)載電流變化較小的場合。串聯(lián)型穩(wěn)壓電路是利用電壓串聯(lián)負(fù)反饋的原理來調(diào)節(jié)輸出電壓的。集成穩(wěn)壓電源事實(shí)上是串聯(lián)穩(wěn)壓電源的集成化。</p><p>  3.5.2 電源電路設(shè)計(jì)</p><p>  根據(jù)上述介紹設(shè)計(jì),電

56、源電路包括變壓器、整流電路、濾波電路、穩(wěn)壓電路等模塊組成,使用LED進(jìn)行電源工作狀態(tài)指示。LM78XX系列三端穩(wěn)壓IC來組成穩(wěn)壓電源所需的外圍元件極少電路內(nèi)部還有過流、過熱及調(diào)整管的保護(hù)電路,如圖3-9所示。 </p><p>  圖3-9電源電路模塊圖</p><p><b>  4 軟件設(shè)計(jì)</b></p><p>  4.1程序功能描述與

57、設(shè)計(jì)思路</p><p><b>  1、程序功能描述</b></p><p>  根據(jù)題目要求軟件部分主要實(shí)現(xiàn)鍵盤的設(shè)置和液晶的顯示。</p><p>  1)鍵盤實(shí)現(xiàn)功能:首先,鍵盤我們選擇6個(gè)獨(dú)立按鍵,通過調(diào)節(jié)按鍵來控制電機(jī)的轉(zhuǎn)速從而控制風(fēng)速的大小、風(fēng)扇的啟動與停止以及設(shè)定角度的調(diào)節(jié)。</p><p>  2)顯示

58、部分:在液晶上顯示帆板轉(zhuǎn)動的實(shí)時(shí)角度,并且顯示程序設(shè)定的角度。</p><p><b>  2、程序設(shè)計(jì)思路</b></p><p>  通過按鍵控制單片機(jī)輸出PWM脈沖,經(jīng)驅(qū)動電路L298N帶動電機(jī)的轉(zhuǎn)動與電機(jī)的控制,從而控制帆板的旋轉(zhuǎn)的角度,經(jīng)AD轉(zhuǎn)換芯片將傳感器輸出的模擬信號量轉(zhuǎn)換成數(shù)字信號量,送回到單片機(jī)中,與實(shí)際角度相比較后,經(jīng)PID調(diào)節(jié)輸出PWM的脈寬,來

59、控制電機(jī)的轉(zhuǎn)速達(dá)到調(diào)解帆板角度的目的。</p><p>  4.2 LCD液晶顯示的設(shè)計(jì)</p><p>  本系統(tǒng)采用LCD12864屏作為本系統(tǒng)的顯示器,12864有兩種顯示模式,串行及并行兩種方式,本系統(tǒng)采用串行通信,采用較少的單片機(jī)管腳。液晶顯示及樹狀目錄分頁是本系統(tǒng)設(shè)計(jì)的一大特色。</p><p>  根據(jù)本題目要求,我們設(shè)計(jì)了人性化的開機(jī)及操作界面。我們

60、程序設(shè)計(jì)采用了C語言進(jìn)行設(shè)計(jì),我們都知道C語言基于過程的,但我們樹狀目錄采用類似C++語言的面向?qū)ο蟮淖兂伤悸?。操作非常簡單直觀。</p><p>  4.3 角度控制流程圖</p><p>  分析此題本題是PID控制中最典型的一種,其算法簡單。但題目要求能再在5秒內(nèi)完成這一過程,這是本題的難點(diǎn)。我們通過分析提出了繼電器和PWM控制結(jié)合的思路。主要思路是,通過控制繼電器使風(fēng)扇在1-2秒獲

61、得比較高的轉(zhuǎn)速,然后通過PID算法控制風(fēng)扇達(dá)到設(shè)定角度,實(shí)驗(yàn)證明此方法極大縮短了風(fēng)扇提速時(shí)間。并最終能再題目要求的時(shí)間內(nèi)達(dá)到設(shè)定角度。</p><p>  圖4-1 角度控制流程圖</p><p><b>  4.4系統(tǒng)流程圖</b></p><p>  系統(tǒng)程序流程圖如圖4—8所示:</p><p><b>

62、  圖4—8系統(tǒng)流程圖</b></p><p><b>  5 結(jié)論與總結(jié)</b></p><p><b>  5.1 結(jié)論</b></p><p>  完成的功能和達(dá)到的技術(shù)指標(biāo)</p><p> ?。?)用手轉(zhuǎn)動帆板,能夠數(shù)字顯示帆板的轉(zhuǎn)角θ。顯示范圍為0~60°,分辨力為

63、2°,絕對誤差≤5°。</p><p> ?。?)當(dāng)間距d=10cm 時(shí),通過操作鍵盤控制風(fēng)力大小,使帆板轉(zhuǎn)角θ能夠在0~60°范圍內(nèi)變化,并要求實(shí)時(shí)顯示θ。</p><p> ?。?)當(dāng)間距d=10cm 時(shí),通過操作鍵盤控制風(fēng)力大小,使帆板轉(zhuǎn)角θ穩(wěn)定在45°±5°范圍內(nèi)。要求控制過程在10秒內(nèi)完成,實(shí)時(shí)顯示θ,并由聲光提示,以便

64、進(jìn)行測試。</p><p> ?。?)風(fēng)扇選用臺式計(jì)算機(jī)散熱風(fēng)扇或其他形式的直流供電軸流風(fēng)扇, 帆板的材料和厚度自定,固定軸應(yīng)足夠靈活,不阻礙帆板運(yùn)動。</p><p><b>  5.2 總結(jié)</b></p><p>  本系統(tǒng)以單片機(jī)AT89C52芯片為核心,利用角度傳感器測角度、電機(jī)驅(qū)動技并結(jié)合軟件的算法實(shí)現(xiàn)帆板的轉(zhuǎn)角測試、LCD液晶顯示

65、、風(fēng)扇的轉(zhuǎn)速控制、聲光提示等功能,最終使系統(tǒng)完成競賽題目的任務(wù)要求。在系統(tǒng)設(shè)計(jì)過程中,力求硬件線路單,充分發(fā)揮軟件編程方便靈活的特點(diǎn),來滿足設(shè)計(jì)的要求。由于時(shí)間有限,該系統(tǒng)有需要改進(jìn)的地方。 </p><p>  在本次設(shè)計(jì)的過程中,雖然遇到了許多困難,但通過全組成員的共同努力,最終我們還是把困難解決了。這讓我們深深體會到了團(tuán)隊(duì)協(xié)作的重要性。同時(shí),在備戰(zhàn)及競賽畢業(yè)設(shè)計(jì)中,我們也學(xué)到了很多電子專業(yè)知識,豐富了自己的

66、知識庫,提高了解決問題的能力及創(chuàng)新能力。</p><p><b>  6 致謝</b></p><p>  大學(xué)三年學(xué)習(xí)時(shí)光已經(jīng)接近尾聲,在此我想對我的母校,我的父母、親人們,我的老師和同學(xué)們表達(dá)我由衷的謝意。</p><p>  感謝我的家人對我大學(xué)三年學(xué)習(xí)的默默支持;感謝我的母校蘭州工業(yè)學(xué)院給了我在大學(xué)三年深造的機(jī)會,讓我能繼續(xù)學(xué)習(xí)和提高;

67、感謝蘭州工業(yè)學(xué)院電氣工程系的老師和同學(xué)們?nèi)陙淼年P(guān)心和鼓勵(lì)。</p><p>  老師們課堂上的激情洋溢,課堂下的諄諄教誨;同學(xué)們在學(xué)習(xí)中的認(rèn)真熱情,生活上的熱心主動,所有這些都讓我的三年充滿了感動。 這次畢業(yè)論文設(shè)計(jì)我得到了很多老師和同學(xué)的幫助,其中我的論文指導(dǎo)老師劉青老師對我的關(guān)心和支持尤為重要。每次遇到難題,我最先做的就是向劉老師尋求幫助,而劉老師每次不管忙或閑,總會抽空來找我面談,然后一起商量解決的辦法。

68、劉老師平日里工作繁多,但我做畢業(yè)設(shè)計(jì)的每個(gè)階段,從選題到查閱資料,論文提綱的確定,中期論文的修改,后期論文格式調(diào)整等各個(gè)環(huán)節(jié)中都給予了我悉心的指導(dǎo)。這一個(gè)多月以來,劉老師不僅在學(xué)業(yè)上給我以精心指導(dǎo),同時(shí)還在思想給我以無微不至的關(guān)懷,在此謹(jǐn)向劉老師致以誠摯的謝意和崇高的敬意。同時(shí),本篇畢業(yè)論文的寫作也得到了尹國龍,竇潤發(fā)等同學(xué)的熱情幫助。</p><p>  感謝在整個(gè)畢業(yè)設(shè)計(jì)期間和我密切合作的同學(xué),和曾經(jīng)在各個(gè)方

69、面給予過我?guī)椭幕锇閭?,在此,我再一次真誠地向幫助過我的老師和同學(xué)表示感謝! </p><p><b>  7 參考文獻(xiàn)</b></p><p>  [1]孫煥銘.51單片機(jī)C程序應(yīng)用實(shí)例詳解[M].北京:北京航空航天大學(xué)出版社,2011.3</p><p>  [2]楊欣,王玉鳳,劉湘黔.51單片機(jī)應(yīng)用從零開始[M].北京:清華大學(xué)出版社,2

70、008.1</p><p>  [3]陸彬.21天學(xué)通51單片機(jī)開發(fā)[M].北京:電子工業(yè)出版社,2010.5</p><p>  [4]黃智偉.全國大學(xué)生電子設(shè)計(jì)競賽系統(tǒng)設(shè)計(jì)[M].北京:北京航空航天大學(xué)出版社,2011.2</p><p>  [5]郭天祥.新概念51單片機(jī)C語言教程:入門、提高、開發(fā)、拓展全攻略[M].北京:電子工業(yè)出版社,2009.1<

71、/p><p>  [6]黃智偉.全國大學(xué)生電子設(shè)計(jì)競賽常用電路模塊制作[M].北京:北京航空航天大學(xué)出版社,2011.1</p><p><b>  附錄A 部分程序</b></p><p><b>  主函數(shù)</b></p><p>  /*******************************

72、********************************/</p><p>  #include<reg52.h></p><p>  #include"control.h"</p><p>  #include"12864.h"</p><p>  #include"AD

73、XL.H"</p><p>  #defineucharunsignedchar</p><p>  #defineuintunsignedint</p><p>  sbitkey=P2^7;</p><p>  voidtimer_init()</p><p><b>  {</b>

74、</p><p>  TMOD=0X10;</p><p>  TH1=(65535-100)/256;</p><p>  TL1=(65535-100)%256;</p><p><b>  EA=1;</b></p><p><b>  ET1=1;</b></p

75、><p><b>  TR1=1;</b></p><p><b>  }</b></p><p>  voidmain()</p><p><b>  {</b></p><p>  chardevid;</p><p>  tim

76、er_init();</p><p>  lcd_12864_init();</p><p>  Init_ADXL345();//初始化ADXL345</p><p>  devid=Single_Read_ADXL345(0X00);//讀出的數(shù)據(jù)為0XE5,表示正確</p><p><b>  while(1)</b

77、></p><p><b>  {</b></p><p>  adxl345();</p><p>  if(key==0)</p><p>  keyscan_1();</p><p><b>  else</b></p><p>  key

78、scan();</p><p><b>  }</b></p><p><b>  }</b></p><p>  /***************************************************************/</p><p>  Controh.H文件<

79、/p><p>  #ifndef__contral_h_</p><p>  #define__contral_h_</p><p>  externsignedcharpwm;</p><p>  externvoiddelayms(unsignedintxms);</p><p>  externvoidkeyscan

80、();</p><p>  externvoidkeyscan_1();</p><p><b>  #endif</b></p><p>  /***************************************************************/</p><p>  Control.C文件&l

81、t;/p><p>  #include<reg51.h></p><p>  #include"control.h"</p><p>  #include"12864.h"</p><p>  #defineucharunsignedchar</p><p>  #def

82、ineuintunsignedint</p><p>  #definekeydataP0</p><p>  sbitA1=P2^4;</p><p>  sbitA2=P2^5;</p><p>  sbitENA=P2^6;</p><p>  signedintcount=0;</p><p

83、>  signedcharpwm=0;</p><p>  signedcharanjian=0;</p><p>  ucharnumshi=0;</p><p>  ucharnumge=0;</p><p>  voiddelayms(unsignedintxms)</p><p><b>  {

84、</b></p><p>  unsignedinti,j;</p><p>  for(i=0;i<xms;i++)</p><p>  for(j=0;j<110;j++);</p><p><b>  }</b></p><p>  voidpwm_dis()<

85、/p><p><b>  {</b></p><p>  numshi=pwm/10;</p><p>  numge=pwm%10;</p><p>  write_12864_data(0x30+numshi);</p><p>  write_12864_data(0x30+numge);&l

86、t;/p><p><b>  }</b></p><p>  voidanjian_dis()</p><p><b>  {</b></p><p>  numshi=anjian/10;</p><p>  numge=anjian%10;</p><p&

87、gt;  write_12864_data(0x30+numshi);</p><p>  write_12864_data(0x30+numge);</p><p><b>  }</b></p><p>  voidkeyscan()</p><p><b>  {</b></p>

88、<p>  unsignedchardat=0;</p><p>  unsignedcharnum=0;</p><p>  keydata=0xfe;</p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p>  while(dat!=0xf

89、0)</p><p><b>  {</b></p><p>  delayms(5);</p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p>  while(dat!=0xf0)</p><p><b&

90、gt;  {</b></p><p>  dat=keydata;</p><p>  switch(dat)</p><p><b>  {</b></p><p>  case0xee:num=1;</p><p><b>  break;</b></p

91、><p>  case0xde:num=2;</p><p><b>  break;</b></p><p>  case0xbe:num=3;</p><p><b>  break;</b></p><p>  case0x7e:num=4;</p><

92、p><b>  break;</b></p><p><b>  }</b></p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  dat=keydata;</p><p>  dat=d

93、at&0xf0;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  keydata=0xfd;</p><p>  dat=keydata;</p&g

94、t;<p>  dat=dat&0xf0;</p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  delayms(5);</p><p>  dat=keydata;</p><p>  dat=dat&0x

95、f0;</p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  dat=keydata;</p><p>  switch(dat)</p><p><b>  {</b></p><p>  

96、case0xed:num=5;</p><p><b>  break;</b></p><p>  case0xdd:num=6;</p><p><b>  break;</b></p><p>  case0xbd:num=7;</p><p><b>  b

97、reak;</b></p><p>  case0x7d:num=8;</p><p><b>  break;</b></p><p><b>  }</b></p><p>  while(dat!=0xf0)</p><p><b>  {<

98、/b></p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p>

99、<p>  keydata=0xfb;</p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  delayms(5);<

100、;/p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  dat=keydata;</p><p>  switch(d

101、at)</p><p><b>  {</b></p><p>  case0xeb:num=9;</p><p><b>  break;</b></p><p>  case0xdb:num=10;</p><p><b>  break;</b>&

102、lt;/p><p>  case0xbb:num=11;</p><p><b>  break;</b></p><p>  case0x7b:num=12;</p><p><b>  break;</b></p><p><b>  }</b><

103、/p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p><b>  }</b></p><p><

104、;b>  }</b></p><p><b>  }</b></p><p>  keydata=0xf7;</p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p>  while(dat!=0xf0)</p&g

105、t;<p><b>  {</b></p><p>  delayms(5);</p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p>  while(dat!=0xf0)</p><p><b>  {<

106、/b></p><p>  dat=keydata;</p><p>  switch(dat)</p><p><b>  {</b></p><p>  case0xe7:num=13;</p><p><b>  break;</b></p><

107、;p>  case0xd7:num=14;</p><p><b>  break;</b></p><p>  case0xb7:num=15;</p><p><b>  break;</b></p><p>  case0x77:num=16;</p><p>&

108、lt;b>  break;</b></p><p><b>  }</b></p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  dat=keydata;</p><p>  dat=dat&

109、;0xf0;</p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  switch(num)</p><p><b>  {</b></p&g

110、t;<p>  case1:write_12864_addr(1,3);</p><p><b>  pwm=0;</b></p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case2:write_12864_addr(

111、1,3);</p><p><b>  pwm=10;</b></p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case3:write_12864_addr(1,3);</p><p><b>  pw

112、m=20;</b></p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case4:write_12864_addr(1,3);</p><p><b>  pwm=30;</b></p><p>  p

113、wm_dis();</p><p><b>  break;</b></p><p>  case5:write_12864_addr(1,3);</p><p><b>  pwm=40;</b></p><p>  pwm_dis();</p><p><b>

114、  break;</b></p><p>  case6:write_12864_addr(1,3);</p><p><b>  pwm=50;</b></p><p>  pwm_dis();</p><p><b>  break;</b></p><p>

115、  case7:write_12864_addr(1,3);</p><p><b>  pwm=60;</b></p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case8:write_12864_addr(1,3);</p>

116、;<p><b>  pwm=70;</b></p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case9:write_12864_addr(1,3);</p><p><b>  pwm=80;</b&g

117、t;</p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case10:write_12864_addr(1,3);</p><p><b>  pwm=90;</b></p><p>  pwm_dis();&l

118、t;/p><p><b>  break;</b></p><p>  case11:write_12864_addr(1,3);</p><p><b>  pwm=99;</b></p><p>  pwm_dis();</p><p><b>  break;&l

119、t;/b></p><p>  case12:write_12864_addr(1,3);</p><p><b>  pwm=35;</b></p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case13:

120、write_12864_addr(1,3);</p><p>  pwm=pwm+5;</p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case14:write_12864_addr(1,3);</p><p>  pwm=pwm-5

121、;</p><p>  pwm_dis();</p><p><b>  break;</b></p><p>  case15:write_12864_addr(1,3);</p><p>  pwm=pwm+1;</p><p>  pwm_dis();</p><p>

122、;<b>  break;</b></p><p>  case16:write_12864_addr(1,3);</p><p>  pwm=pwm-1;</p><p>  pwm_dis();</p><p><b>  break;</b></p><p><b

123、>  }</b></p><p><b>  }</b></p><p>  voidkeyscan_1()</p><p><b>  {</b></p><p>  unsignedchardat=0;</p><p>  unsignedcharnum

124、=0;</p><p>  keydata=0xfe;</p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  d

125、elayms(5);</p><p>  dat=keydata;</p><p>  dat=dat&0xf0;</p><p>  while(dat!=0xf0)</p><p><b>  {</b></p><p>  dat=keydata;</p><p&

126、gt;  switch(dat)</p><p><b>  {</b></p><p>  case0xee:num=1;</p><p><b>  break;</b></p><p>  case0xde:num=2;</p><p><b>  break

127、;</b></p><p>  case0xbe:num=3;</p><p><b>  break;</b></p><p>  case0x7e:num=4;</p><p><b>  break;</b></p><p><b>  }<

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論