基于單片機的洗衣機控制系統(tǒng)設計畢業(yè)論文_第1頁
已閱讀1頁,還剩36頁未讀 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

1、<p>  本科畢業(yè)論文(設計)</p><p>  題  目 基于單片機的洗衣機控制系統(tǒng)設計 </p><p>  學生姓名           </p><p>  專業(yè)名稱   電子信息科學與技術    </p><p>  指導教師            </

2、p><p>  2011年12月21日</p><p>  摘 要:本系統(tǒng)便是根據(jù)目前洗衣機的主流要求,由單片機AT89S52、數(shù)碼管顯示模塊、電動機工作模塊、繼電器控制等模塊組成,利用成熟繼電器的強電控制特性,通過鍵盤設置洗滌時間,經(jīng)過單片機處理后進行洗滌定時處理,以及電動機的正轉反轉過程,同時在數(shù)碼管上顯示控制時間,既可以通過鍵盤對洗衣過程進行暫停,也可以實時顯示洗衣剩余時間,如此,可

3、隨時隨地知曉洗滌情況。該系統(tǒng)優(yōu)勢在于簡單穩(wěn)定性價比極高,滿足實際對洗衣機的控制需求。</p><p>  關鍵字: AT89S52 ;智能家電 ; 自動控制 ; 洗衣機</p><p>  Abstract:This system is according to the current mainstream requirements of washing machine, consis

4、ts of the SCM AT89S52, digital pipe display module, motor control module and relay work module, is made use of high voltage control of mature relays , setting washing time through the keyboard, after single chip conducti

5、ng, fixing washing timing for processing, as well as the motor are turning reversal process ,meanwhile controlling the display time in the digital tube , not only can set the proces</p><p><b>  目 錄&l

6、t;/b></p><p><b>  1 引言1</b></p><p>  1.1 課題背景1</p><p>  1.2 課題意義1</p><p>  1.3 課題目的1</p><p>  2 系統(tǒng)設計方案和論證3</p><p>  2.1

7、系統(tǒng)總體結構規(guī)劃3</p><p>  2.2單片機的選擇3</p><p>  2.3電機驅(qū)動模塊的方案論證4</p><p>  2.4顯示模塊的方案比較論證4</p><p>  2.5電源的選擇5</p><p>  3 電路的設計與分析6</p><p>  3.1芯片AT

8、89S52的性能及其參數(shù)分析6</p><p>  3.2單片機時鐘電路設計7</p><p>  3.3單片機復位電路設計8</p><p>  3.4單片機復位后的狀態(tài)分析9</p><p>  3.5電源電路10</p><p>  3.6電動機驅(qū)動原理與分析12</p><p&g

9、t;  4 系統(tǒng)硬件設計15</p><p>  4.1系統(tǒng)主電路圖15</p><p>  4.2顯示電路設計16</p><p>  4.3繼電器控制電路設計18</p><p>  4 .4報警電路19</p><p>  5 系統(tǒng)軟件設計21</p><p>  5.1設計軟

10、件簡介21</p><p>  5.2軟件設計應用環(huán)境簡介22</p><p>  5.3系統(tǒng)程序設計說明23</p><p><b>  6系統(tǒng)調(diào)試24</b></p><p>  6.1系統(tǒng)原理圖設計24</p><p>  6.2 軟件的調(diào)試24</p><

11、p>  6.3 硬件調(diào)試25</p><p><b>  結束語26</b></p><p><b>  參考文獻27</b></p><p><b>  附錄28</b></p><p><b>  謝 辭32</b></p&g

12、t;<p><b>  1 引言</b></p><p><b>  1.1 課題背景</b></p><p>  現(xiàn)如今自動化、信息化程度越來越高,單片機的應用領域也就越來越廣,成為人們生活不可或缺的一部分。隨著社會的發(fā)展、科技的進步以及人們生活水平的逐步提高,各種方便于生活的自動控制系統(tǒng)開始進入了人們的生活,以單片機為核心的自

13、動門系統(tǒng)就是其中之一。同時也標志了自動控制領域成為了數(shù)字化時代的一員。它實用性強,功能齊全,技術先進,這是科技進步的成果。它更讓人類懂得,數(shù)字時代的發(fā)展將改變?nèi)祟惖纳?,將加快科學技術的發(fā)展。經(jīng)濟飛速發(fā)展的中國,高樓聳立的大都市,全自動洗衣機已經(jīng)是隨處可見,在各大廈、賓館、酒店、銀行、商場、醫(yī)院、寫字樓等場所,洗衣機更是得到大范圍的普及使用。自動門不但能給我們帶來人員進出方便、節(jié)約空調(diào)能源、防風、防塵、降低噪音等好處,更令我們的建筑增添

14、了不少高貴典雅的氣息。</p><p><b>  1.2 課題意義</b></p><p>  此設計的意義在于能夠了解全自動洗衣機控制系統(tǒng)的的制作方案和技術。從電路設計到軟件編程,全面系統(tǒng)的研究了基于單片機的全自動洗衣機控制系統(tǒng)。從中能學習到多方面的技術知識,掌握洗衣機控制的原理和方法。更多的理解的單片機的功能。</p><p><

15、b>  1.3 課題目的</b></p><p>  設計要滿足如下要求:</p><p>  實現(xiàn)洗衣時間的控制,能夠調(diào)節(jié)電動機運轉時間長短的控制。</p><p>  實現(xiàn)顯示的功能,實現(xiàn)調(diào)節(jié)過程及剩余時間的調(diào)整功能</p><p>  實現(xiàn)報警功能,當運行時間結束時發(fā)出報警音報警,提醒運行已結束。</p>

16、<p>  本設計通過采用AT89S52單片機,通過水位檢測機構,LED數(shù)碼顯示器,LED發(fā)光二極管,獨立鍵盤,繼電器控制,電動機等硬件實現(xiàn)了上述功能要求。 </p><p><b>  主要章節(jié)分為:</b></p><p> ?。?)緒論:介紹設計目標國內(nèi)外的發(fā)展現(xiàn)狀和研究意義目的,設計的基本內(nèi)容和本文的章節(jié)安排。</p><p&

17、gt; ?。?)總體設計方案:給出了洗衣機控制器的器的總體方案設想,智能項目,和設計結構規(guī)劃。</p><p> ?。?)單片機最小系統(tǒng)介紹:中央控制器 AT89S52及其外圍電路的設計與分析</p><p> ?。?)系統(tǒng)硬件設計:介紹各部分模塊電路的功能</p><p> ?。?)系統(tǒng)軟件設計:主要介紹了各項功能的設計流程。</p><p&g

18、t;<b> ?。?)系統(tǒng)調(diào)試</b></p><p>  2 系統(tǒng)設計方案和論證</p><p>  2.1系統(tǒng)總體結構規(guī)劃 </p><p>  全自動洗衣機控制器的總體結構框圖如下圖1所示。</p><p>  圖1動洗衣機控制器框圖</p><p>  采用AT89S52單片機作為主控單元

19、,直流電機作為執(zhí)行部分,鍵盤輸入控制信息,數(shù)碼管顯示輸出信息。其工作過程是通過鍵盤選擇功能鍵將信息輸入單片機,然后單片機發(fā)出信號控制單片機運轉,以及自動計時,當時間結束時電動機停止運轉并報警。</p><p>  2.2單片機的選擇 </p><p>  方案一: 采用MCS-52單片機,晶振頻率為24HZ.AT89S52單片機是一種功耗、高性能CMOS 8位微控制器。使用Atmel 公司

20、高密度非易失性存儲器技術制造,與工業(yè)80C51 產(chǎn)品指令和引腳完全兼容。片上Flash允許程序存儲器在系統(tǒng)可編程,亦適于常規(guī)編程器。在單芯片上,擁有靈巧的8 位CPU 和在系統(tǒng)可編程Flash,使得AT89S52單片機為眾多嵌入式控制應用系統(tǒng)提供高靈活、超有效的解決方案。AT89S52具有以下標準功能: 8k字節(jié)Flash,256字節(jié)RAM,32 位I/O 口線,看門狗定時器,2 個數(shù)據(jù)指針,三個16 位定時器/計數(shù)器,一個6向量2級中

21、斷結構,全雙工串行口,片內(nèi)晶振及時鐘電路。另外,AT89S52 可降至0Hz 靜態(tài)邏輯操作,支持2種軟件可選擇節(jié)電模式。空閑模式下,CPU停止工作,允許RAM、定時器/計數(shù)器、串口、中斷繼續(xù)工作。掉電保護方式下,RAM內(nèi)容被保存,[9]振蕩器被凍結,單片機一切工作停止,直到下一個中斷或硬件復位為止。且價格便宜。</p><p>  方案二:采用FPGA(可編輯邏輯陣列)作為系統(tǒng)控制器。FPGA可以實現(xiàn)各種復雜的邏

22、輯功能,規(guī)模大,集成度高,體積小,穩(wěn)定性好,并且可利用EDA軟件進行仿真和調(diào)試。FPGA采用并行工作方式,提高了系統(tǒng)的處理速度,常用于大規(guī)模實時性要求較高的系統(tǒng)。價格較昂貴。</p><p>  對比上述兩種方案,F(xiàn)PGA各個方面都比較優(yōu)越,單價格較昂貴,而且用在洗衣機模擬系統(tǒng)上FPGA的高速處理能力得不到充分的發(fā)揮,很浪費資源。相比之下AT89S52單片機價格便宜,對本系統(tǒng)來說資源和速度已經(jīng)足夠,故選擇此單片機

23、。</p><p>  2.3電機驅(qū)動模塊的方案論證 </p><p>  方案一:用達林頓管TIP22和NPN三極管構成的驅(qū)動電路來實現(xiàn)控制電機的正反轉。該驅(qū)動電路能夠基本滿足控制功能的要求。但直流電機的功率較大,所以通過驅(qū)動電路的電流較大,使得TIP22很快就發(fā)熱損耗功率大,容易損壞。</p><p>  方案二:采用雙刀雙置和單刀雙置繼電器構成的開關驅(qū)動電路來

24、實現(xiàn)控制直流電機的正反轉。該電路較簡單易實現(xiàn),而且因為是開關電路,幾乎不損耗功率,所以不必擔心發(fā)熱問題。</p><p>  綜上所述,對比優(yōu)劣性選著第二種方案。</p><p>  2.4顯示模塊的方案比較論證</p><p>  方案一:采用四只數(shù)碼管顯示模塊來顯示動態(tài)信息。顯示的公共端只需要一個8位I/O口,接口簡單,功耗小,價格便宜,壽命長。通過調(diào)整電流可以

25、達到比較高的亮度,所以數(shù)碼管能夠清晰地顯示數(shù)字,且亮度較高易于觀察。</p><p>  方案二:采用LCD液晶顯示,優(yōu)點是能顯示更多的字符,有著良好的人機界面,功耗低,占用系統(tǒng)資源少,使整個系統(tǒng)顯得更加人性化。缺點是成本過高,亮度不夠,不易清晰地觀察數(shù)據(jù)。</p><p>  基于成本以及實際需求,我們選擇方案一。</p><p><b>  2.5電源

26、的選擇</b></p><p>  方案一:采用開關型穩(wěn)壓電源。因為開關型穩(wěn)壓電源事實上是利用了晶體管在截止與飽和——即開關狀態(tài)下功耗極小的優(yōu)點。由于晶體管在截止時流過的電流極小幾乎為零,飽和導通時的管壓降極小,兩種情況下的晶體管功耗都極小,管子工作效率很高,可達到80%—90%。難點是開關電源對器件要求較高且電路較復雜,比較難調(diào)試,成本不低。</p><p>  方案二:采用

27、傳統(tǒng)的線性穩(wěn)壓電源,優(yōu)點是電路簡單,實用,輸出電壓,紋波系數(shù)小,容易制作。缺點是體積較大,效率低。</p><p>  結合我們本身的能力和系統(tǒng)的實際應用我們選擇方案二。</p><p>  3 電路的設計與分析</p><p>  3.1芯片AT89S52的性能及其參數(shù)分析</p><p>  圖2 AT89S52單片機引腳圖</p&

28、gt;<p>  AT89S52是51系列單片機的一個型號,它是ATMEL公司生產(chǎn)的。</p><p>  AT89S52是一個低電壓,高性能CMOS 8位單片機,片內(nèi)含8k bytes的可反復擦寫的Flash只讀程序存儲器和256 bytes的隨機存取數(shù)據(jù)存儲器(RAM),器件采用ATMEL公司的高密度、非易失性存儲技術生產(chǎn),兼容標準MCS-51指令系統(tǒng),片內(nèi)置通用8位中央處理器和Flash存儲單

29、元,功能強大的AT89S51單片機可為您提供許多較復雜系統(tǒng)控制應用場合。</p><p>  AT89S52有40個引腳,32個外部雙向輸入/輸出(I/O)端口,同時內(nèi)含2個外中斷口,3個16位可編程定時計數(shù)器,2個全雙工串行通信口,2個讀寫口線,AT89S52可以按照常規(guī)方法進行編程,也可以在線編程。其將通用的微處理器和Flash存儲器結合在一起,特別是可反復擦寫的Flash存儲器[5]可有效地降低開發(fā)成本。&

30、lt;/p><p>  AT89S52為40腳雙列直插封裝的8位通用微處理器如圖3-3所示,采用工業(yè)標準的C52內(nèi)核,在內(nèi)部功能及管腳排布上與通用的8xc51相同,其主要用于會聚調(diào)整時的功能控制。功能包括對會聚主IC內(nèi)部寄存器、數(shù)據(jù)RAM及外部接口等功能部件的初始化,會聚調(diào)整控制,會聚測試圖控制,紅外遙控信號IR的接收解碼及與主板CPU通信等。</p><p>  AT89S52時鐘有兩種方式

31、產(chǎn)生,即內(nèi)部方式和外部方式,如下圖3 a所示。AT89S52中有一個構成內(nèi)部震蕩器的高增益反向放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個放大器與作為反饋元件的片外石英或陶 瓷震蕩器一起構成自激震蕩器震蕩電路。外接石英晶體(或陶瓷震蕩器)及電容C1、C2接在放大器的震蕩回路中構成并聯(lián)震蕩電路。對外接電容C1、C2雖然沒有非常嚴格的要求,但電容的大小會輕微影響震蕩頻率的高低、震蕩工作的穩(wěn)定性、起震的難易程序及溫度

32、穩(wěn)定性,。還可以采用外部時鐘,采用外部時鐘,如圖3 b所示。在這種情況下,外部時鐘脈沖接到XTAL1端,既內(nèi)部時鐘發(fā)生器的輸入端,XTAL2懸空。由于外部時鐘信號是通過一個2分頻的觸發(fā)器后作為內(nèi)部時鐘信號的所以外部時鐘的占空比沒有特殊要求,但最小高電平持續(xù)的時間和最大低電平持續(xù)的時間應符合技術條件的要求。</p><p>  a 內(nèi)部震蕩電路 b 外部震蕩電路<

33、/p><p><b>  圖3 時鐘電路圖</b></p><p>  3.2單片機時鐘電路設計</p><p>  電路中的晶振即石英晶體震蕩器。由于石英晶體震蕩器具有非常好的頻率穩(wěn)定性和抗外界干擾的能力,所以,石英晶體震蕩器是用來產(chǎn)生基準頻率的。通過基準頻率來控制電路中的頻率的準確性。同時,它還可以產(chǎn)生振蕩電流,向單片機發(fā)出時鐘信號。</

34、p><p>  圖4是單片機的晶振電路。電路中的電容C1和C2的典型值通常選擇為30PF左右,該電容的大小會影響振蕩電路頻率的高低、振蕩器的穩(wěn)定性和起振的快速性。晶體振蕩頻率的范圍通常在1.2~12MHz。晶體的頻率越高,系統(tǒng)的時鐘頻率越快,單片機的運行速度越快。AT89S52常選擇振蕩頻率12MHz的石英晶體。</p><p>  圖4 單片機晶振電路圖</p><p&

35、gt;  3.3單片機復位電路設計</p><p>  復位是單片機的初始化操作,只需要給AT89S52的復位引腳RST加上大于2個機器周期(即24個時鐘振蕩周期)的高電平就可以使AT89S51復位。復位時,單片機初始化為0000H,從0000H單元開始執(zhí)行程序。除了進入系統(tǒng)的正常初始化之外,當程序運行錯誤(如程序跑飛)或操作錯誤使系統(tǒng)處于鎖死狀態(tài)時,也需要復位鍵使RST腳為高電平,使AT89S52擺脫“跑飛”或

36、“死鎖”狀態(tài)而重新啟動。圖5是復位電路圖。</p><p><b>  圖5 復位電路圖</b></p><p>  3.4單片機復位后的狀態(tài)分析</p><p>  表1 特殊功能寄存器與初始狀態(tài)表</p><p>  說明:表中符號*為隨機狀態(tài)。</p><p>  單片機的復位操作使單片機進

37、入初始化狀態(tài),其中包括使程序計數(shù)器PC=0000H,這表明程序從0000H地址單元開始執(zhí)行。單片機冷啟動后,片內(nèi)RAM為隨機值,運行中的復位操作不改變片內(nèi)RAM區(qū)中的內(nèi)容,21個特殊功能寄存器復位后的狀態(tài)為確定值,見上表1所示。</p><p>  系統(tǒng)復位是任何微機系統(tǒng)執(zhí)行的第一步,使整個控制芯片回到默認的硬件狀態(tài)下。51單片機的復位是由RESET引腳來控制的,此引腳與高電平相接超過24個振蕩周期后,51單片機

38、即進入芯片內(nèi)部復位狀態(tài),而且一直在此狀態(tài)下等待,直到RESET引腳轉為低電平后,才檢查EA引腳是高電平或低電平,若為高電平則執(zhí)行芯片內(nèi)部的程序代碼,若為低電平便會執(zhí)行外部程序。</p><p>  51單片機在系統(tǒng)復位時,將其內(nèi)部的一些重要寄存器設置為特定的值,內(nèi)部RAM內(nèi)部的數(shù)據(jù)則不變。</p><p><b>  3.5電源電路</b></p>&l

39、t;p>  電源是提供電壓的裝置。把其他形式的能轉換成電能的裝置叫做電源。電源是向電子設備提供功率的裝置,也稱電源供應器,它提供計算機中所有部件所需要的電能。電源功率的大小,電流和電壓是否穩(wěn)定,將直接影響計算機的工作性能和使用壽命。有條件的可以使用電源模塊來為系統(tǒng)供電。</p><p>  由于該系統(tǒng)中的步進電機要求用12V電源供電,而單片機的需要5V供電,所以需要加個穩(wěn)壓芯片這里采用LM7805進行穩(wěn)壓處

40、理。把12V穩(wěn)降至5V來供給單片機及各芯片的使用。經(jīng)測試12V完全滿足各器件的運行要求。</p><p>  圖6三端集成穩(wěn)壓器7805內(nèi)部結構</p><p>  此設計的電源電路是由7805集成穩(wěn)壓器,橋式整流,濾波電容及電源指示燈組成的。電源電路的核心元件是7805,其內(nèi)部結構如圖6所示。</p><p><b>  (1)調(diào)整管</b>

41、</p><p>  調(diào)整管接在輸入端與輸出端之間,當電網(wǎng)電壓或負載電流波動時,調(diào)整自身的集-射壓降使輸出電壓保持不變。在7805三端集成穩(wěn)壓電路中,調(diào)整管由兩個三極管組成的復合管充當,這種結構只要求放大電路用較小的電流即可驅(qū)動調(diào)整管發(fā)射極回路中較大的輸出電流,而且提高了調(diào)整管的輸入電阻。</p><p><b>  (2)放大電路</b></p>&l

42、t;p>  放大電路將基準電壓與從輸出端得到的采樣電壓進行比較,然后再放大并送到調(diào)整管的基極。放大倍數(shù)愈大,則穩(wěn)定性能愈好。在7805三端集成穩(wěn)壓器中,放大管也是復合管,電路組態(tài)為共射接法,并采用有源負載,可以獲得較高的電壓放大倍數(shù)。</p><p><b>  (3)基準電源</b></p><p>  基準電壓的穩(wěn)定性將直接影響穩(wěn)壓電路輸出電壓的穩(wěn)定性。在7

43、805中,采用一種能帶間隙式基準源,這種基準源具有低噪聲,低溫漂的特點,在單片式大電流集成穩(wěn)壓器中被廣泛應用。</p><p><b>  (4)采樣電路</b></p><p>  采樣電路由兩個分壓電阻組成,它將輸出電壓變化量的一部分送到放大電路的輸入端。</p><p><b>  (5)啟動電路</b></p

44、><p>  啟動電路的作用是在剛接通直流輸入電壓時,使調(diào)整管,放大電路和基準電源等建立起各自的工作電流,而當穩(wěn)壓電路正常工作時啟動電路被斷開,以免影響穩(wěn)壓電路的性能。</p><p><b>  (6)保護電路</b></p><p>  在7805中,已將三種保護電路集成在芯片內(nèi)部,它們是限流保護電路,過熱保護電路和過壓保護電路。</p&

45、gt;<p><b>  圖7 電源電路</b></p><p>  電源電路如圖7所示,此電源電路能輸出穩(wěn)定的+5V電壓,可以給整機電路上電,所以在電路中起到至關重要的作用。其中7805三端集成穩(wěn)壓器的1腳為輸入,3腳為輸出,2腳為接地。作用是將由橋式整流電路,整流濾波后得到的直流輸入電壓轉變成穩(wěn)定的直流+5V輸出電壓,為了改善紋波電壓,常在輸入端接入電容CJ3,我所選用的電

46、容容量為100uF。同時,在輸出端接上電容CJ2,以改善負載的瞬態(tài)響應,CJ2的容量為100uF。兩個電容應直接接在穩(wěn)壓器的引腳處。在穩(wěn)壓管的輸入端還要接二極管,起到對7805集成穩(wěn)壓器的一種保護作用。</p><p>  3.6電動機驅(qū)動原理與分析</p><p><b>  圖8直流電機結構圖</b></p><p>  直流電機直流電能變

47、為機械能,作為機電執(zhí)行元部件,直流電機內(nèi)部有一個閉合的主磁路。主磁路通在主磁路中流動,同時與兩個電路交聯(lián),其中一個電路是用已產(chǎn)生磁通的,稱為激磁電路;另一個電路是用來傳遞功率的,稱為功率回路?,F(xiàn)行的直流電機都是旋轉電樞式。在實際的直流電機中線圈那牢固的嵌在轉子鐵芯槽中,當導體中通過電流在磁場中受力而轉動時,就帶動整個轉子旋轉,這就是直流電機的基本工作原理。</p><p>  直流電機優(yōu)點有以下幾方面:</

48、p><p> ?、僬{(diào)速范圍廣,且易于平滑調(diào)節(jié)。</p><p> ?、谶^載,起動,制動轉矩大。</p><p> ?、垡子诳刂疲煽啃愿?。</p><p>  ④調(diào)速時能量損耗較小。</p><p>  (1)直流電機原理及優(yōu)點</p><p>  用單片機控制直流電機時,需要加驅(qū)動電路,為直流電機

49、提供足夠大的驅(qū)動電流。使用不同的直流電機,其驅(qū)動電流也不同,我們要根據(jù)實際需求選擇合適的驅(qū)動電路,通常有以下幾種驅(qū)動電路:三極管電流放大驅(qū)動電路,電機專用驅(qū)動模塊(如L298),和達林頓驅(qū)動器等。如果是驅(qū)動單個電機,并且電機的驅(qū)動電流不大時,我們可用三極管搭建驅(qū)動電路,不過這樣要稍微麻煩點。如果電機所需要的驅(qū)動電流較大,可直接選用市場上現(xiàn)成的電機專用驅(qū)動模塊,這種模塊接口簡單,操作方便,并可為電機提供較大的驅(qū)動電流,不過它的價格要貴一些

50、。例如,達林頓驅(qū)動器可同時驅(qū)動8個電機,每個電機由單片機一個IO口控制,當需要調(diào)節(jié)直流電機轉速時,是單片機的相應IO口輸出不同占空比的PWM波形即可。</p><p><b>  PWM波形</b></p><p>  PWM是英文Pulse Width Modulation的縮寫,是一種按一定規(guī)律改變脈沖序列的寬度,以調(diào)節(jié)輸出量和波形的一種調(diào)制方式,我們在控制系統(tǒng)中

51、,最常用的是矩形波PWM信號,在控制時需要調(diào)節(jié)PWM信號,在控制時需要調(diào)節(jié)PWM的占空比。占空比是指高電平持續(xù)時間在一個周期時間內(nèi)的百分比??刂齐姍C的轉速時,占空比越大,速度越快,如果全為高電平,占空比為100%時,速度達到最快。</p><p>  當利用單片機IO口輸出PWM信號時,可采用以下三種方法:</p><p> ?、倮密浖訒r。當高電平延時時間到時,對IO電平取反變成低電平

52、,然后再延時;當?shù)碗娖窖訒r時間到時,再對IO電平取反,如此循環(huán)就得到PWM信號。</p><p> ?、诶枚〞r器??刂品椒ㄈ缟?,只是用單片機的定時器來定時進行高低電平的翻轉,而不利用軟件延時。</p><p> ?、劾脝纹瑱C自帶的PWM控制器,如PIC單片機,AVR單片機,但STC89系列單片機無此功能。</p><p>  圖9 PWM信號的占空比</p

53、><p><b>  4 系統(tǒng)硬件設計</b></p><p><b>  4.1系統(tǒng)主電路圖</b></p><p>  圖10 系統(tǒng)總電路圖</p><p><b>  圖 11 實物效果</b></p><p><b>  4.2顯示電路設計

54、</b></p><p>  本設計中壓力大小采用2位LED數(shù)碼管顯示。在單片機系統(tǒng)中,通常用LED數(shù)碼顯示器來顯示各種數(shù)字或符號。由于它具有顯示清晰、亮度高、使用電壓低、壽命長的特點,因此使用非常廣泛。八段LED顯示器由8個發(fā)光二極管組成。其中7個發(fā)光二極管構成字型“8”的各個筆畫段,另一個小數(shù)點為dp發(fā)光二極管。LED顯示器有兩種不同的形式:一種是發(fā)光二極管的陽極都連在一起的,稱之為共陽極LED顯

55、示器;另一種是發(fā)光二極管的陰極都連在一起的,稱之為共陰極LED顯示器。如圖10所示。本次設計采用共陽極極接法。</p><p>  LED顯示方式有動態(tài)顯示和靜態(tài)顯示兩種方式。本系統(tǒng)采用動態(tài)掃描顯示接口電路,動態(tài)顯示接口電路是把所有顯示器的8個筆劃段a-h同名端連在一起,而每一個顯示器的公共極COM各自獨立地受I/O線控制。CPU向字段輸出口送出字型碼時,所有顯示器接收到相同的字型碼,但究竟是哪個顯示器亮,則取決

56、于COM端。也就是說我們可以采用分時的方法,輪流控制各個顯示器的COM端,使各個顯示器輪流點亮。在輪流點亮掃描過程中,每位顯示器的點亮時間是極為短暫的(約1ms),由于人的視覺暫留現(xiàn)象及發(fā)光二極管的余輝效應,盡管實際上各位顯示器并非同時點亮,但只要掃描的速度足夠快,給人的印象就是一組穩(wěn)定的顯示數(shù)據(jù),不會有閃爍感。</p><p>  圖12 七(八)段LED顯示器</p><p>  本設

57、計P2.0、P2.1、P2.2、P2.3信號一起組成位選通的位選信號,P0.0~P0.7信號一起組成段碼選通的段選信號,通過軟件編程,先把所要顯示的數(shù)據(jù)放入存儲單元,然后把數(shù)據(jù)送入段選通對應的地址,再選通某一個LED,逐步完成四個LED的顯示。</p><p>  為了顯示字符,要為LED顯示器提供顯示段碼(或稱字形代碼),組成一個”8”字形字符的7段,再加上1個小數(shù)點,共計8段,因此提供給LED顯示器的顯示段碼

58、為1個字節(jié)。各段碼位的對應關系如下表 2 :</p><p>  用LED顯示器顯示十六進制和空白字符與P的顯示段碼如下表 3 所示:</p><p>  共陰和共陽結構的LED顯示器各筆畫段名和安排位置是相同的,當二極管到同事,相應的筆畫段發(fā)亮,由發(fā)亮的筆畫段組合從而顯示各種字符。8個筆畫段dp,g,f,e,d,c,b,a對應于1B(8位)的D7、D6、D5、D4、D3、D2、D1、D0

59、,于是用8位二進制碼就可以表示欲顯示字符的字形碼。例如,對于共陰極LED顯示器,當共陰極接地(位0電平),而陽極dp,g,f,e,d,c,b,a各段為01110011時,顯示器顯示“P”字符,即對于共陰極LED顯示器,”P”字符的字形碼是0*73。如果是共陽極LED顯示器,共陽極接高電平,顯示“P”字符的字形代碼為10001100(0X8C)。</p><p>  由于LED顯示器是以LED為基礎的,所以它的光、

60、電特性及極限參數(shù)意義大部分與發(fā)光二極管相同。但由于LED顯示器內(nèi)含多個發(fā)光二極管,所以需要如下參數(shù):</p><p><b>  發(fā)光強度比</b></p><p>  由于數(shù)碼管各段在同樣驅(qū)動電壓時,各段正向電流不相同,所以各段發(fā)光強度不同。所有段的發(fā)光強度中最大值與最小值之比。比值可以在1.5到2.3間,最大不超過2.5。</p><p>

61、<b>  脈沖正向電流</b></p><p>  若筆畫顯示器每段典型正向直流工作電流IF,則在脈沖下,正向電流可以遠大于IF。脈沖占空比越小,脈沖正向電流可以越大。</p><p>  由于采用4位共陽數(shù)碼管。用單片機吸收電流驅(qū)動,列掃描驅(qū)動使用三極管,按每段6mA電流算,全顯示字型“8”時,每個數(shù)碼管需6mA×8=48mA。由于四位數(shù)碼管的驅(qū)動電流相

62、同,4組需192mA,因此設計中采用功率三極管S9012驅(qū)動。由于單片機每個段碼輸出口需吸收48mA電流,因此在電路設計中要在P0口加一個上拉電阻。其顯示驅(qū)動電路如圖12所示。</p><p><b>  圖13顯示電路</b></p><p>  4.3繼電器控制電路設計</p><p>  控制驅(qū)動電路主要電動機、繼電器及相應的元件構成,它

63、根據(jù)液位檢測電路的實際需要控制電機的啟動、停止,從而能自動地控制液位的高度。</p><p>  圖14 繼電器控制電路</p><p><b>  4 .4報警電路</b></p><p>  報警電路主要有一蜂鳴器及其驅(qū)動電路構成。通過單片機產(chǎn)生控制信號,控制驅(qū)動電路,然后在驅(qū)動蜂鳴器發(fā)聲。</p><p>  圖

64、 15 報警電路電路圖</p><p><b>  5 系統(tǒng)軟件設計</b></p><p>  軟件編程是系統(tǒng)完全控制的一個重要部分。系統(tǒng)軟件程序主要完成初始化工作,輸入輸出控制,是否需要報警,以及處理完成顯示部分與調(diào)節(jié)電機運轉的信號輸出。在該系統(tǒng)的軟件部分的設計中,主要是系統(tǒng)工作編程內(nèi)容,在這里對程序流程做介紹,源程序添加在附錄中。</p>&l

65、t;p><b>  5.1設計軟件簡介</b></p><p>  Keil C51的V8. xx是目前世界上最好的51單片機的匯編和C語言的開發(fā)工具。它支持匯編、C語言以及混合編程,同時具備強大的軟件仿真和硬件仿真功能。在此次設計中采用開發(fā)環(huán)境的正是此項。[3] (1)創(chuàng)建項目:執(zhí)行[Project]|[NewμVision Project]菜單命令,將新創(chuàng)建一個項目。為項目建

66、一個單獨的文件夾,然后選擇子文件夾并鍵入項目的名稱。在項目創(chuàng)建之前,需要為新建的項目選擇一個CPU。在命名項目名稱后,彈出的對話框,其中顯示的是器件數(shù)據(jù)庫,用戶只要選擇所需要的MCU就可以了。選擇AT89S52之后,右邊一欄是對這個單片機的基本的說明,然后單擊[確定]按鈕。2、添加配置啟動代碼:啟動文件STARTUP.C中包含了目標啟動代碼,可在每個project中加入這個文件。 (2)項目設置:μVision 3允許用戶為目標硬

67、件設置選項,可以通過工具條圖標打開,也可以用鼠標右擊項目窗口中的Files標簽頁中的Target1,在右鍵菜單中選擇[Options for Targe1]命令:          Output:定義Keil工具的輸出文件,并定義生成處理</p><p>  5.2軟件設計應用環(huán)境簡介</p><p> ?。?)Target標簽:單擊Target標簽,其中各參數(shù)設置如下:①Xtal(M

68、Hz):設置單片機的工作的頻率,默認值是24.0MHz。②Use On-chip ROM(0x0~0x1FFF): Flash ROM。單片機的EA引腳接高電平,則一定需要選中這個選項。③Memory Model:變量存儲空間。(2)Output標簽:①Select Folder for Objects:選擇編譯之后的目標文件存儲在哪個目錄。②Name of Executable:設置生成的目標文件的名字。③Create E

69、xecutable:生成omf以及hex文件。④Create Hex File:要生成hex文件一定要選中該選項。⑤Create Library:生成lib庫文件。(3)Listing標簽:Keil C51在編譯之后除了聲稱目標文件之外,還生成*.lst、*.m51的文件。用戶可以在Listing標簽中設置*.lst、*.m51文件的各種選項。(4)C51標簽:用戶通過C51標簽來設置C51編譯器的特別的工具選項。(5)A51

70、標簽:A51標簽用來設置匯編器的特別工</p><p>  5.3系統(tǒng)程序設計說明</p><p>  通過軟件控制單片機的功能是單片機的主要特點和優(yōu)點,程序的設計要考慮合理性和可讀性,遵循模塊化設計的原則,采用自頂向下的設計方法。模塊化設計使程序的可讀性好、修改及完善方便。</p><p>  軟件設計包括主程序、按鍵掃描子程序、延時子程序、中斷服務子程序、顯示子

71、程序、報警程序等等。</p><p>  液位位采集子程序是將傳感器產(chǎn)生的信號經(jīng)單片機處理之后,經(jīng)顯示子程序可以顯示出來。延子程序時MCS-51的工作頻率為2-12MHZ,我們選用的89S52單片機的工作頻率為12MHZ。機器周期與主頻有關,機器周期是主頻的12倍,所以一個機器周期的時間為12*(1/12M)=1us。我們可以知道具體每條指令的周期數(shù),這樣我們就可以通過指令的執(zhí)行條數(shù)來確定1秒的時間。中斷服務子程

72、序用來實現(xiàn)數(shù)碼管的動態(tài)掃描。顯示子程序是將數(shù)據(jù)處理的結果送顯示器顯示。</p><p>  本軟件流程圖設計簡易合理,方便易于操控,能夠針對不同狀態(tài)和不同外界條件進行控制,控制品質(zhì)良好、控制效果明顯改善,同時大大提高了控制的抗干擾能力,保證了穩(wěn)定運行。</p><p><b>  系統(tǒng)調(diào)試</b></p><p>  6.1系統(tǒng)原理圖設計<

73、;/p><p>  利用Altium designer6.9軟件來進行原理圖的繪制,先將原理圖做出,然后將其轉化成相應的PCB圖,布繪制過程中要注意布置線要求:銅箔厚度為0.0 5mm、寬度為1~1. 5mm時,通過2A的電流,溫度不會高于3℃,因此導線寬度為1. 5mm (60mil)可滿址要求。對于集成電路,尤其是數(shù)字電路,通常選0. 02~0.3mm(0.8~12mil)導線寬度。當然,只要允許,還是盡可能用寬

74、線.尤其是電源線和地線。導線的最小間距主要由最壞情況下的線間絕緣電阻利擊穿電壓決定。對于集成電路,尤其是數(shù)字電路,只要工藝允許,可使問距至5~8mm。</p><p><b>  6.2 軟件的調(diào)試</b></p><p>  軟件的設計與調(diào)試實行分模塊實現(xiàn)方法。本設計軟件調(diào)試中的分模塊包括顯示功能模塊、搶答功能模塊以報警功能模塊。各個獨立模塊功能調(diào)試成功后,將這些模

75、塊程序通過主程序合并在一起,最后再對合并后的總程序進行調(diào)試。,再燒寫進單片機看能否在實際電路板上正常工作。編程語言的軟件設計采用C語言編寫.</p><p>  首先對程序進行調(diào)試,沒有芯片的支持,系統(tǒng)將無法正常運行,而一個程序是否能正常運行,首先要檢查它的語法上有沒有錯誤,檢查程序語法的錯誤。利用Keil uVision4軟件對程序進行調(diào)試。首先將程序在程序編輯器中編輯,因為在調(diào)試時沒有實驗箱,所以在調(diào)試時只能

76、看有沒有錯誤,即只能對程序進行編譯連接,如果有編譯連接錯誤,將鼠標指向窗口內(nèi)的錯誤提示信息,雙擊左鍵,光標將自動跳到編輯窗口源程序文件發(fā)生錯誤的地方,對程序進行修改。在修改正確之后就可以產(chǎn)生一個HEX文件,該文件就是程序的代碼文件。將程序燒入電路,按功能要求對電路進行調(diào)試,并反復對程序進行修改調(diào)試,以達到基本功能要求。然后把程序燒制程序成功之后,開始進行硬件調(diào)試。</p><p>  LED顯示問題:本次設計的最

77、終方案是采用LED顯示屏實現(xiàn)顯示功能,最初數(shù)碼管顯示不正常,出現(xiàn)閃爍現(xiàn)象。通過調(diào)試發(fā)現(xiàn)這是由于延時時間選擇不當會使人眼產(chǎn)生視覺暫留效果,每一次顯示時都必須加入適當?shù)臅r間延時。由于一開始所選用的延時時間太短,因此出現(xiàn)閃爍現(xiàn)象,在增加顯示延時之后,數(shù)碼管顯示正常。</p><p>  按鍵消抖問題:在最初編寫程序時,鍵盤控制部分按照常例加入了按鍵消抖程序。在實際調(diào)試中,發(fā)現(xiàn)按鍵出現(xiàn)反應不靈敏現(xiàn)象。這是因為在鍵盤控制程

78、序中,除了消抖程序外,還加入了按鍵提示音程序(每次按壓鍵盤時,蜂鳴器發(fā)出“嗶”的一聲提示音)。由于在調(diào)用提示音子程序時,實際上已實現(xiàn)了一次時間的延時,因此再加入按鍵消抖程序的延時后,致使延時時間過長而出現(xiàn)按鍵反應不靈敏問題。通過調(diào)試發(fā)現(xiàn)提示音子程序本身所產(chǎn)生的延時已能夠滿足按鍵消抖時間延遲的要求,因此在鍵盤控制程序中無需再加入專門的按鍵消抖程序。在去除按鍵消抖程序后,按鍵控制靈敏度恢復正常。</p><p>&l

79、t;b>  6.3 硬件調(diào)試</b></p><p>  硬件的調(diào)試是對硬件電路電氣性能的調(diào)試,它的目的是驗證制作者在焊接電路板時是否出現(xiàn)失誤。首先整個電路先不上電利用萬用表R×1檔測量各芯片電源腳與電源輸出端阻值是否為0。然后利用萬用表R×1檔測量各芯片地與電源輸出端看阻值是否為0。接著用R×1檔測電源與地是否短路。最后不插芯片,接通電源,黑表筆接地,紅表筆分別

80、測各電源引腳,看是否有5V供電。經(jīng)過這一系列測試之后則可說明硬件電路在焊接方面沒有問題,于是將單片機接入電路中,然而當我給單片機拷入驅(qū)動程序時,發(fā)現(xiàn)問題層出不窮,按鍵有時不靈敏,特別是紅外使能按鍵,有時按下之后照樣可以接收紅外信號,于是重新對電路進行檢查,后來換了一個按鍵問題得以解決。</p><p><b>  結束語</b></p><p>  本設計是采用一個單

81、片機系統(tǒng)來進行洗衣機控制器設計與制作,它具有全集成化,智能化,高精度,高性能,高可靠性和低價格等優(yōu)點,是一個值得推廣的一種方法。</p><p>  在設計本作品時,我通過查閱網(wǎng)絡與圖書館搜集到的資料,再加上指導老師的耐心指導與資料提供,設計出了這一套洗衣機控制系統(tǒng)的主要硬件結構和軟件結構,基本完成了任務書的要求,但是由于設計的理論基礎尚淺,對課題的研究經(jīng)驗還不成熟,使得在技術的解決與運用上顯得粗糙了一些,在某些

82、技術關鍵上的敘述不能達到詳細、精辟。但是這個系統(tǒng)的設計卻不缺乏自己的特點和創(chuàng)新點,特歸納為以下幾點:</p><p>  (1)該產(chǎn)品的互換性好,響應速度快,抗干擾能力強,外圍電路簡單易懂,體積小。</p><p> ?。?)該系統(tǒng)能用軟件的方式設計硬件,所以用軟件方式設計的系統(tǒng)向硬件系統(tǒng)的轉換是由有關開發(fā)軟件自動完成的。</p><p>  (3)設計過程中可以對

83、有關軟件進行各種仿真,且系統(tǒng)可現(xiàn)場編程,在線升級,所以有不同的功能可以實現(xiàn)。</p><p>  (4)可以從以前的組合設計轉向真正的自由設計,所以設計的移植性好,效率高??蛇m合大規(guī)模的現(xiàn)場操作。</p><p> ?。?)因為整個系統(tǒng)可集成在一個芯片上,因此體積小,外圍電路簡單、功耗低,可靠邊性更高。在軟件上,充分利用了AT89C52的強大功能,實現(xiàn)了信息的快速處理和控制、顯示功能,能精

84、確監(jiān)測。更進一步實現(xiàn)了自動化,高效率。 由于本人的水平有限,設計當中,難免會有不少的缺點和不足之處,懇請教導老師批評并改正。本設計通過采用AT89S52單片機,通過水位檢測機構,LED數(shù)碼顯示器,LED發(fā)光二極管,獨立鍵盤,繼電器,電動機等硬件實現(xiàn)了上述功能要求。 應用表明該系統(tǒng)具有時間設置,緊急停止,到時報警等功能。其性能可靠,提到了效率,降低了能耗,減少了噪音。</p><p><b>  參考文獻

85、</b></p><p>  [1]蔡美琴,張為民,何金兒.MCS-51系列單片機系統(tǒng)及其應用[M].高等教育出版社,2009</p><p>  [2]毛謙敏,洪潭元,肖艷萍.單片機原理及應用設計[M].國防工業(yè)出版社,社,2005</p><p>  [3]雷思孝,馮育長.單片機系統(tǒng)設計及工程應用[M].西安電子科技大學出版社,2005</p&

86、gt;<p>  [4]何宏,龔威,志宏.單片機原理與接口技術[M].國防工業(yè)出版社,2006</p><p>  [5]張樹江,王成安.模擬電子技術[M].大連理工大學出版社,2009</p><p>  [6]劉峰,孫艷萍.電力電子技術[M].大連理工大學出版社,2007</p><p>  [7]陳小忠,黃寧.單片機接口技術實用子程序[M].人民

87、郵電出版社,2005:2-8</p><p>  [8]Charles K.Alexander,Matthew N.O.Sandiku.Fundamentals of electric circuit[M].清華大學出版社,2009:78-82 </p><p>  [9]Janice Mazidi.8051 Microcontroller and Embedded Systems[M].

88、Prentice Hall,2009:82-84</p><p>  [10]Brian W.Kernighan.The C Programming Language[M].Prentice Hall PTR,2009:6</p><p>  [11] 張立民,隋燕,李維祥.現(xiàn)代信息技術實驗[M].清華大學出版社,2008.</p><p>  [12] 康華光.電

89、子技術基礎數(shù)字部分[M].第四版,北京:高等教育出版社,2000.</p><p>  [13] 蔡美琴. MCS-51系列單片機系統(tǒng)及其應用[M].北京:高等教育出版社,1992.</p><p>  [14] 周興華.手把手教你學單片機C語言程序設計[M].北京:北京航空航天大學出版社,2007.</p><p>  [15] 陳明熒.8051單片機課程設計實訓

90、教材[M].北京:清華大學出版社,2004.</p><p><b>  附錄</b></p><p><b>  程序清單</b></p><p>  /*************************************************</p><p>  按鍵從左到右順序功能依次

91、是:分加 秒加 開始 停止 清零(這個我接的是復位)</p><p>  開機數(shù)碼管顯示“0000” 按第一個鍵是時間分加 第二個鍵是時間分減 設定好后按第三個鍵程序開始運行時間倒計時</p><p>  按第四個鍵停止,時間保持,在按開始時間能繼續(xù)走;第五個鍵復位清零</p><p>  **********************************

92、*****/</p><p>  #include<reg52.h></p><p>  #include<intrins.h></p><p>  #define uint unsigned int</p><p>  #define uchar unsigned char</p><p> 

93、 uchar code tab[]={0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x79,0x71,0x80,0x00};</p><p>  /* 0 1 2 3 4 5 6 7 8 9 a b c d e f .

94、無*/</p><p>  sbit fenup=P3^3;</p><p>  sbit fendn=P3^4;</p><p>  sbit star=P3^5;</p><p>  sbit stop=P3^6;</p><p>  sbit BUZ=P3^7;</p><p>  uch

95、ar temp=0xfe,temp1=0x7f,a=0xfe,num=0,num0=0;</p><p>  uchar disbuf[4];</p><p>  bit flag,flag_timer30ms,led_change,time_over; </p><p>  int fen=0;</p><p>  void disp

96、lay();</p><p>  /*************************************************</p><p>  延時函數(shù) z=1,大約延時1ms</p><p>  ***************************************/</p><p>  void delay(uint

97、z)</p><p><b>  {</b></p><p><b>  uint i,j;</b></p><p>  for(i=0;i<z;i++)</p><p>  for(j=0;j<125;j++)</p><p><b>  {}<

98、/b></p><p><b>  }</b></p><p>  /*************************************************</p><p><b>  初始化函數(shù) </b></p><p>  *************************

99、**************/</p><p>  void init()</p><p><b>  {</b></p><p><b>  BUZ=1;</b></p><p>  TMOD=0x01;</p><p>  TH0=65536-50000/256;

100、//定時50ms中斷一次</p><p>  TL0=65536-50000%256;</p><p><b>  EA=1;</b></p><p><b>  ET0=1;</b></p><p><b>  TR0=0;</b></p><p>&

101、lt;b>  }</b></p><p>  /*************************************************</p><p><b>  按鍵處理函數(shù) </b></p><p>  ***************************************/</p>

102、<p>  void key()</p><p><b>  {</b></p><p>  if(fenup==0)</p><p><b>  {</b></p><p>  delay(10);</p><p>  if(fenup==0)</p>

103、<p><b>  {</b></p><p>  while(!fenup);</p><p>  delay(10);</p><p>  while(!fenup);</p><p><b>  fen++;</b></p><p>  if(fen>

104、;=99)</p><p><b>  fen=99;</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  if(fendn==0)</p><p><b>  {</b>&l

105、t;/p><p>  delay(10);</p><p>  if(fendn==0)</p><p><b>  {</b></p><p>  while(!fendn);</p><p>  delay(10);</p><p>  while(!fendn);<

106、/p><p><b>  fen++;</b></p><p>  if(fen==59)</p><p><b>  {</b></p><p><b>  fen=0;</b></p><p><b>  }</b></p&g

107、t;<p><b>  }</b></p><p><b>  }</b></p><p>  if(star==0)</p><p><b>  {</b></p><p>  delay(10);</p><p>  if(star==

108、0)</p><p><b>  {</b></p><p>  while(!star);</p><p>  delay(10);</p><p>  while(!star);</p><p><b>  TR0=1;</b></p><p> 

109、 display();</p><p><b>  }</b></p><p><b>  }</b></p><p>  if(stop==0)</p><p><b>  {</b></p><p>  delay(10);</p>&

110、lt;p>  if(stop==0)</p><p><b>  {</b></p><p>  while(!stop);</p><p>  delay(10);</p><p>  while(!stop);</p><p><b>  TR0=0;</b><

111、;/p><p><b>  P1=0xff;</b></p><p><b>  }</b></p><p><b>  }</b></p><p><b>  }</b></p><p>  /********************

112、*****************************</p><p><b>  數(shù)據(jù)處理函數(shù) </b></p><p>  ***************************************/</p><p>  void deal()</p><p><b>  {</b>

113、</p><p>  disbuf[0]=fen/10;</p><p>  disbuf[1]=fen%10;</p><p><b>  }</b></p><p>  /*************************************************</p><p><

114、;b>  顯示函數(shù) </b></p><p>  ***************************************/</p><p>  void display()</p><p><b>  {</b></p><p><b>  uint i;</b><

115、;/p><p>  for(i=0;i<4;i++)</p><p><b>  {</b></p><p>  P0=tab[disbuf[i]];</p><p><b>  P2=a;</b></p><p><b>  deal();</b>&

116、lt;/p><p>  a=_crol_(a,1);</p><p><b>  }</b></p><p><b>  }</b></p><p>  void main()</p><p><b>  {</b></p><p>

117、<b>  init();</b></p><p><b>  P1=0xff;</b></p><p><b>  while(1)</b></p><p><b>  {</b></p><p><b>  key();</b>

溫馨提示

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

評論

0/150

提交評論