基于單片機(jī)的洗衣機(jī)控制系統(tǒng)的設(shè)計(jì)_第1頁(yè)
基于單片機(jī)的洗衣機(jī)控制系統(tǒng)的設(shè)計(jì)_第2頁(yè)
基于單片機(jī)的洗衣機(jī)控制系統(tǒng)的設(shè)計(jì)_第3頁(yè)
基于單片機(jī)的洗衣機(jī)控制系統(tǒng)的設(shè)計(jì)_第4頁(yè)
基于單片機(jī)的洗衣機(jī)控制系統(tǒng)的設(shè)計(jì)_第5頁(yè)
已閱讀5頁(yè),還剩33頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

摘要本文詳細(xì)介紹了國(guó)內(nèi)洗衣機(jī)控制系統(tǒng)的開(kāi)展現(xiàn)狀,開(kāi)展中所面臨的問(wèn)題。從產(chǎn)品質(zhì)量、性能及應(yīng)用方面看洗衣機(jī)機(jī)的差距,同時(shí)也詳盡的介紹了此次設(shè)計(jì)中最重要的組成部件單片機(jī)的概念、工作原理及設(shè)備總體結(jié)構(gòu),其中包括MCS-51的開(kāi)展歷程,選型依據(jù)。根據(jù)洗衣機(jī)的控制要求,從功能要求、硬件設(shè)計(jì)、軟件設(shè)計(jì)三個(gè)方面描述了一個(gè)以51單片機(jī)為核心的洗衣機(jī)控制系統(tǒng)?;贛CS-51單片機(jī)的洗衣控制系統(tǒng),控制面板由按鍵、指示燈組成.按鍵選擇洗衣機(jī)工作方式,指示燈配合按鍵工作。洗衣機(jī)的整體電路模塊包括鍵盤(pán)矩陣、指示燈、電動(dòng)機(jī)控制及電源電路.控制程序設(shè)計(jì)包括定時(shí)中斷效勞程序、外中斷效勞程序及主程序。關(guān)鍵詞:洗衣機(jī);單片機(jī);控制面板AbstractThisarticleintroducedindetailthedomesticwashercontrolsystem'sdevelopmentpresentsituation,inthedevelopmentfacesquestion.Simultaneouslyalsoinexhaustiveintroductionthisdesignmostimportantbuildingblockmonolithicintegratedcircuit'sconcept,principleofworkandequipmentgrossstructure,includingMCS-51thedevelopmentprocess,shapingbasis.Accondingtothewashingmachinecontrolrequirements,acontrolsystemwiththe51SCMasthecoreaboutwashingmachinesweredescribedinthefolloeingthreeaspectsoffunctionalrequirements,hardwaredesign,softwaredesign.BasedontheMCS-51microcontrollerlaundrycontrolsystem,controlpanelfromthebutton.Indicatorcomponents.buttontochoosewashingmachineswork,withakeyindicator.washingmachines,theoverallcircuitmoduleincludingkeyboardmatrix,lamp,motorcontrolandpowersupplycircuit.controlproceduresdesignedtimerinterruptserviceprocedures,externalinterruptserviceproceduresandthemainprogram.keyword:Washer;SingleChipMicyoco;controlpanel目錄第一章緒論11.1課題背景11.2洗衣機(jī)的開(kāi)展歷史21.3洗衣機(jī)的分類(lèi)41.4本課題的設(shè)計(jì)目標(biāo)和意義4第二章單片機(jī)概論62.180C51單片機(jī)根底知識(shí)62.2單片機(jī)的分類(lèi)122.3單片機(jī)特點(diǎn)12第三章洗衣機(jī)控制系統(tǒng)的硬件設(shè)計(jì)143.1核心單元153.2按鍵和開(kāi)關(guān)163.3進(jìn)/排水閥163.4特殊功能電路183.5電機(jī)控制193.6電源23第四章洗衣機(jī)控制系統(tǒng)的軟件設(shè)計(jì)254.1軟件構(gòu)思254.2程序的執(zhí)行264.3子程序流程圖27附錄一29附錄二43參考文獻(xiàn)44致謝45第一章緒論1.1課題背景洗衣機(jī)是一種在家庭中不可缺少的家用電器,開(kāi)展非常快,全自動(dòng)式洗衣機(jī)因使用方便得到大家的青睞,全自動(dòng)即進(jìn)水、洗滌、漂洗、脫水等一系列過(guò)程自動(dòng)完成,控制器通常設(shè)有幾種洗滌程序,對(duì)不同的衣物可以選擇不同洗滌程序。隨著科學(xué)計(jì)數(shù)的開(kāi)展,洗衣機(jī)的性能將會(huì)不斷完善。全自動(dòng)洗衣機(jī)由于具有對(duì)衣物的磨損小、洗滌量大、節(jié)水等特點(diǎn),越來(lái)越得到廣闊家庭的青睞。隨著社會(huì)的進(jìn)步和生活水平的提高,人們對(duì)全自動(dòng)洗衣機(jī)的功能多樣化、操作簡(jiǎn)單化也提出了更高的要求。為適應(yīng)這種變化,全自動(dòng)洗衣機(jī)控制器已由機(jī)械式、混合式逐步過(guò)渡到全電子控制。單片機(jī)又稱(chēng)微控制器,或稱(chēng)嵌入式控制器。而現(xiàn)在的智能家電無(wú)一例外是采用微控制器來(lái)實(shí)現(xiàn)的,所以家用電器是單片機(jī)應(yīng)用最多的領(lǐng)域之一。它是家用電實(shí)現(xiàn)智能化的心臟和大腦。由于家用電器體積小,故要求其控制器體積更小以便能嵌入其結(jié)構(gòu)之中。而家用電器品種多,功能差異也大,所以又要求其控制器有靈活的控制功能。單片機(jī)以微小的體積和編程的靈活性而產(chǎn)生多種控制功能,完全可以滿(mǎn)足家用電器的需求。單片機(jī)是一個(gè)單芯片形態(tài),面向控制對(duì)象的嵌入式應(yīng)用計(jì)算機(jī)系統(tǒng)。它的出現(xiàn)及開(kāi)展使計(jì)算機(jī)技術(shù)從通用型數(shù)值計(jì)算領(lǐng)域進(jìn)入到智能化的控制領(lǐng)域.從此,計(jì)算機(jī)技術(shù)在兩個(gè)重要領(lǐng)域——通用計(jì)算機(jī)領(lǐng)域和嵌入式計(jì)算機(jī)領(lǐng)域都得到了極其重要的開(kāi)展,并正在深深地改變著我們的社會(huì)。單片機(jī)的結(jié)構(gòu)特征是將組成計(jì)算機(jī)的根本部件集成在一塊晶體芯片上,構(gòu)成一臺(tái)功能獨(dú)特的,完整的單片微型計(jì)算機(jī)。單片機(jī)獨(dú)特的結(jié)構(gòu)決定了它具有如下特點(diǎn)?!?〕高集成度,高可靠性單片機(jī)將各功能部件集成在一塊晶體芯片上,集成度很高,體積自然也是最小的。芯片本身是按工業(yè)測(cè)控環(huán)境要求設(shè)計(jì)的,內(nèi)部布線(xiàn)很短,其抗工業(yè)噪音性能優(yōu)于一般通用的CPU。單片機(jī)程序指令,常數(shù)及表格等固化在ROM中不易破壞,許多信號(hào)通道均在一個(gè)芯片內(nèi),故可靠性高。〔2〕控制功能強(qiáng)為了滿(mǎn)足對(duì)對(duì)象的控制要求,單片機(jī)的指令系統(tǒng)均有極豐富的條件:分支轉(zhuǎn)移能力,I/O口的邏輯操作及位處理能力,非常適用于專(zhuān)門(mén)的控制功能?!?〕低電壓,低功耗為了滿(mǎn)足廣泛使用于便攜式系統(tǒng),許多單片機(jī)內(nèi)的工作電壓僅為1.8V~3.6V,而工作電流僅為數(shù)百微安?!?〕優(yōu)異的性能價(jià)格比單片機(jī)的性能極高。為了提高速度和運(yùn)行效率,單片機(jī)已開(kāi)始使用RISC流水線(xiàn)和DSP等技術(shù)。單片機(jī)的尋址能力也已突破64KB的限制,有的已可到達(dá)1MB和16MB,片內(nèi)的ROM容量可達(dá)62MB,RAM容量那么可達(dá)2MB.由于單片機(jī)的廣泛使用,因而銷(xiāo)量極大,各大公司的商業(yè)競(jìng)爭(zhēng)更使價(jià)格十分低廉,其性能價(jià)格比極高。由于單片機(jī)功能的飛速開(kāi)展,它的應(yīng)用范圍日益廣泛,已遠(yuǎn)遠(yuǎn)超出了計(jì)算機(jī)科學(xué)的領(lǐng)域.小到玩具,信用卡,大到航天器,機(jī)器人,從實(shí)現(xiàn)數(shù)據(jù)采集,過(guò)程控制,模糊控制等智能系統(tǒng)到人類(lèi)的日常生活,到處都離不開(kāi)單片機(jī)。其主要的應(yīng)用領(lǐng)如下〔1〕在測(cè)控系統(tǒng)中的應(yīng)用單片機(jī)可以用于構(gòu)成各種工業(yè)控制系統(tǒng),自適應(yīng)控制系統(tǒng),數(shù)據(jù)采集系統(tǒng)等。例如,工業(yè)上的鍋爐控制,電機(jī)控制,車(chē)輛檢測(cè)系統(tǒng),水閘自動(dòng)控制,數(shù)控機(jī)床及軍事上的雷達(dá),導(dǎo)彈系統(tǒng)等?!?〕在智能化儀器儀表中的應(yīng)用單片機(jī)應(yīng)用于儀器儀表設(shè)備中促使儀器儀表向數(shù)字化,智能化,多功能化和綜合化等方向開(kāi)展。單片機(jī)的軟件編程技術(shù)使長(zhǎng)期以來(lái)測(cè)量?jī)x表中的誤差修正,線(xiàn)性化的處理等難題迎刃而解〔3〕在機(jī)電一體化中的應(yīng)用單片機(jī)與傳統(tǒng)的機(jī)械產(chǎn)品結(jié)合使傳統(tǒng)的機(jī)械產(chǎn)品結(jié)構(gòu)簡(jiǎn)化,控制走向智能化,構(gòu)成新一代的機(jī)電一體化產(chǎn)品,這是機(jī)械工業(yè)開(kāi)展的方向。〔4〕在智能接口中的應(yīng)用計(jì)算機(jī)系統(tǒng),特別是較大型的工業(yè)測(cè)控系統(tǒng)中采用單片機(jī)進(jìn)行接口的控制管理,單片機(jī)與主機(jī)并行工作,可大大提高系統(tǒng)的運(yùn)行速度。例如,在大型數(shù)據(jù)采集系統(tǒng)中,用單片機(jī)對(duì)模/數(shù)轉(zhuǎn)換接口進(jìn)行控制不僅可提高采集速度,還可以對(duì)數(shù)據(jù)進(jìn)行預(yù)處理。如數(shù)字濾波,誤差修正,線(xiàn)性化處理等?!?〕在人類(lèi)生活中的應(yīng)用單片機(jī)由于其價(jià)格低廉,體積小巧,被廣泛應(yīng)用在人類(lèi)生活的諸多場(chǎng)合,如洗衣機(jī),電冰箱,空調(diào)器,電飯煲,視聽(tīng)音響設(shè)備,大屏幕顯示系統(tǒng),電子玩具,信用卡,樓宇防盜系統(tǒng)等,單片機(jī)將使人類(lèi)的生活更加方便舒適,豐富多彩。1.2洗衣機(jī)的開(kāi)展歷史1858年,一個(gè)叫漢密爾頓?史密斯的美國(guó)人在匹茨堡制成了世界上第一臺(tái)洗衣機(jī)。該洗衣機(jī)的主件是一只圓桶,桶內(nèi)裝有一根帶有槳狀葉子的直軸。軸是通過(guò)搖動(dòng)和它相連的曲柄轉(zhuǎn)動(dòng)的。同年史密斯取得了這臺(tái)洗衣機(jī)的專(zhuān)利權(quán)。但這臺(tái)洗衣機(jī)使用費(fèi)力,且損傷衣服,因而沒(méi)被廣泛使用,但這卻標(biāo)志了用機(jī)器洗衣的開(kāi)端。次年在德國(guó)出現(xiàn)了一種用搗衣杵作為攪拌器的洗衣機(jī),當(dāng)搗衣杵上下運(yùn)動(dòng)時(shí),裝有彈簧的木釘便連續(xù)作用于衣服。19世紀(jì)末期的洗衣機(jī)已開(kāi)展到一只用手柄轉(zhuǎn)動(dòng)的八角形洗衣缸,洗衣時(shí)缸內(nèi)放入熱肥皂水,衣服洗凈后,由軋液裝置把衣服擠干。1874年,“手洗時(shí)代〞受到了前所未有的挑戰(zhàn),美國(guó)人比爾?布萊克斯創(chuàng)造了木制手搖洗衣機(jī)。布萊克斯的洗衣機(jī)構(gòu)造極為簡(jiǎn)單,是在木筒里裝上6塊葉片,用手柄和齒輪傳動(dòng),使衣服在筒內(nèi)翻轉(zhuǎn),從而到達(dá)“凈衣〞的目的。這套裝置的問(wèn)世,讓那些為提高生活效率而冥思苦想的人士大受啟發(fā),洗衣機(jī)的改良過(guò)程開(kāi)始大大加快.1910年,美國(guó)的費(fèi)希爾在芝加哥試制成功世界上第一臺(tái)電動(dòng)洗衣機(jī)。電動(dòng)洗衣機(jī)的問(wèn)世,標(biāo)志著人類(lèi)家務(wù)勞動(dòng)自動(dòng)化的開(kāi)端。1922年,美國(guó)瑪塔依格公司改造了洗衣機(jī)的洗滌結(jié)構(gòu),把拖動(dòng)式改為攪拌式,使洗衣機(jī)的結(jié)構(gòu)固定下來(lái),這也就是第一臺(tái)攪拌式洗衣機(jī)的誕生。這種洗衣機(jī)是在筒中心裝上一個(gè)立軸,在立軸下端裝有攪拌翼,電動(dòng)機(jī)帶動(dòng)立軸,進(jìn)行周期性的正反擺動(dòng),使衣物和水流不斷翻滾,相互摩擦,以此滌蕩污垢。攪拌式洗衣機(jī)結(jié)構(gòu)科學(xué)合理,受到人們的普遍歡送。1932年,美國(guó)本德克斯航空公司宣布,他們研制成功第一臺(tái)前裝式滾筒洗衣機(jī),洗滌、漂洗、脫水在同一個(gè)滾筒內(nèi)完成。這意味著電動(dòng)洗衣機(jī)的型式躍上一個(gè)新臺(tái)階,朝自動(dòng)化又前進(jìn)了一大步!1955年,在引進(jìn)英國(guó)噴流式洗衣機(jī)的根底之上,日本研制出獨(dú)具風(fēng)格、并流行至今的波輪式洗衣機(jī)。至此,波輪式、滾筒式、攪拌式在洗衣機(jī)生產(chǎn)領(lǐng)域三分天下的局面初步形成。60年代的日本出現(xiàn)了帶干桶的雙桶洗衣機(jī),人們稱(chēng)之為“半自動(dòng)型洗衣機(jī)〞。70年代,生產(chǎn)出波輪式套桶全自動(dòng)洗衣機(jī)。70年代后期,以電腦〔實(shí)際上微處理器〕控制的全自動(dòng)洗衣機(jī)在日本問(wèn)世,開(kāi)創(chuàng)了洗衣機(jī)開(kāi)展史的新階段。80年代,“模糊控制〞的應(yīng)用使得洗衣機(jī)操作更簡(jiǎn)便,功能更完備,洗衣程序更隨人意,外觀造型更為時(shí)尚。誕生了許多新水流洗衣機(jī)。此后,隨著電機(jī)驅(qū)動(dòng)技術(shù)的開(kāi)展與提高,日本生產(chǎn)出了電機(jī)直接驅(qū)動(dòng)式洗衣機(jī),省去了齒輪傳動(dòng)和變速機(jī)構(gòu),引發(fā)了洗衣機(jī)驅(qū)動(dòng)方式的巨大革命。之后,隨著科技的進(jìn)一步開(kāi)展,滾筒90年代,由于電機(jī)調(diào)速技術(shù)的提高,洗衣機(jī)實(shí)現(xiàn)了寬范圍的轉(zhuǎn)速變換與調(diào)節(jié),洗衣機(jī)已經(jīng)成了大家耳濡目染的產(chǎn)品。伴隨著科技的進(jìn)一步開(kāi)展,相信新型更適合人們使用的洗衣時(shí)機(jī)給我們的生活帶來(lái)新的方式。1.3洗衣機(jī)的分類(lèi)當(dāng)今主流洗衣機(jī)主要有三大類(lèi),分別是波輪式洗衣機(jī),滾筒式洗衣機(jī)和攪拌式洗衣機(jī)。三種洗衣機(jī)各有所長(zhǎng),下面我們?cè)敿?xì)介紹一下三種洗衣機(jī)的特點(diǎn):〔1〕波輪式洗衣機(jī)洗衣特點(diǎn):微電腦控制洗衣及甩干功能、省時(shí)省力。缺點(diǎn):耗電、耗水、衣物易纏繞、清潔性不佳?!?〕滾筒式洗衣機(jī)洗衣特點(diǎn):微電腦控制所有功能衣物無(wú)纏繞。最不會(huì)損耗衣物的方式。缺點(diǎn):耗時(shí),時(shí)間是普通的幾倍,而且一旦關(guān)上門(mén),洗衣過(guò)程中無(wú)法翻開(kāi),潔凈力不強(qiáng)。〔3〕攪拌式洗衣機(jī)洗衣特點(diǎn):衣物潔凈力最強(qiáng),省洗衣粉。缺點(diǎn):喜歡纏繞相比前兩種方式損壞性加大,噪音最大。1.4本課題的設(shè)計(jì)目標(biāo)和意義用51系列單片機(jī)AT89C51控制全自動(dòng)洗衣機(jī)的運(yùn)行,使其自動(dòng)的完成進(jìn)水、洗滌、漂洗、脫水等功能。不同的洗衣程序洗滌、漂洗、脫水所用的時(shí)間不同,要求設(shè)計(jì)能夠?qū)崿F(xiàn)一下功能:1、洗衣工作狀態(tài)功能:強(qiáng)、弱洗滌。要求強(qiáng)洗時(shí)正反轉(zhuǎn)驅(qū)動(dòng)時(shí)間各為4S,間歇時(shí)間為1S;弱洗時(shí)正反轉(zhuǎn)驅(qū)動(dòng)時(shí)間各為3S,間歇時(shí)間為1S。2、洗衣程序功能:含4種獨(dú)立程序,即標(biāo)準(zhǔn)洗衣程序、經(jīng)濟(jì)洗衣、單獨(dú)洗衣、排水洗衣功能。標(biāo)準(zhǔn)程序是進(jìn)水-洗滌-排水-進(jìn)水-較長(zhǎng)時(shí)間漂洗-排水-進(jìn)水-較短時(shí)間漂洗-排水-脫水-報(bào)警。經(jīng)濟(jì)洗衣程序是進(jìn)水-洗滌-排水-進(jìn)水較長(zhǎng)時(shí)間漂洗-排水-報(bào)警。單獨(dú)洗衣程序是進(jìn)水-洗滌-報(bào)警。排水洗衣程序是排水-脫水-報(bào)警。3、特殊功能:故障診斷、暫停、啟動(dòng)、蓋開(kāi)關(guān)保護(hù)、聲光指示等。進(jìn)排水系統(tǒng)故障自動(dòng)診斷功能:洗衣機(jī)在進(jìn)水或排水過(guò)程中,假設(shè)在一定的時(shí)間范圍內(nèi)進(jìn)水或排水未能到達(dá)預(yù)定的水位,就說(shuō)明進(jìn)排水系統(tǒng)有故障,此故障由控制系統(tǒng)測(cè)知并通過(guò)警報(bào)程序發(fā)出警報(bào)信號(hào),提醒操作者進(jìn)行人工排除。洗衣期間平安保護(hù)功能:洗衣機(jī)在脫水期間,假設(shè)翻開(kāi)機(jī)蓋時(shí),洗衣機(jī)就會(huì)自動(dòng)停止脫水操作。暫停功能:不管洗衣機(jī)工作在什么狀態(tài),當(dāng)按下暫停鍵時(shí),洗衣機(jī)需暫停工作,待啟動(dòng)鍵按下后洗衣機(jī)又能按原來(lái)所選擇的工作方式繼續(xù)工作。聲光顯示功能:洗衣機(jī)各種工作方式的選擇和各種工作狀態(tài)均有聲光提示和顯示。基于單片機(jī)的自動(dòng)洗衣機(jī)控制系統(tǒng)具有精度高、功能強(qiáng)、經(jīng)濟(jì)性好的特點(diǎn)。無(wú)論在提高產(chǎn)品質(zhì)量還是產(chǎn)品數(shù)量,節(jié)約能源還是改善勞動(dòng)條件等方面都顯示出無(wú)比的優(yōu)越性。對(duì)基于單片機(jī)的全自動(dòng)洗衣機(jī)控制系統(tǒng)設(shè)計(jì)進(jìn)行深入研究,可使我們掌握全自動(dòng)洗衣機(jī)這種重要家電的工作原理和控制系統(tǒng),進(jìn)一步了解單片機(jī)在不同領(lǐng)域的應(yīng)用方法,學(xué)會(huì)維修全自動(dòng)洗衣機(jī)的根本技術(shù),同時(shí)也為將來(lái)從事電子信息行業(yè)打下一定根底,所以本課題具有重大的意義。第二章單片機(jī)概論2.180C51單片機(jī)根底知識(shí)AT89C51是一種帶4K字節(jié)FLASH存儲(chǔ)器〔FPEROM—FlashProgrammableandErasableReadOnlyMemory〕的低電壓、高性能CMOS8位微處理器,俗稱(chēng)單片機(jī)。AT89C2051是一種帶2K字節(jié)閃存可編程可擦除只讀存儲(chǔ)器的單片機(jī)。單片機(jī)的可擦除只讀存儲(chǔ)器可以反復(fù)擦除1000次。該器件采用ATMEL高密度非易失存儲(chǔ)器制造技術(shù)制造,與工業(yè)標(biāo)準(zhǔn)的MCS-51指令集和輸出管腳相兼容。由于將多功能8位CPU和閃爍存儲(chǔ)器組合在單個(gè)芯片中,ATMEL的AT89C51是一種高效微控制器,AT89C2051是它的一種精簡(jiǎn)版本。AT89C單片機(jī)為很多嵌入式控制系統(tǒng)提供了一種靈活性高且價(jià)廉的方案。外形及引腳排列如圖2-1所示:圖2-1單片機(jī)的外形及引腳主要特性:與MCS-51兼容4K字節(jié)可編程FLASH存儲(chǔ)器壽命:1000寫(xiě)/擦循環(huán)數(shù)據(jù)保存時(shí)間:10年全靜態(tài)工作:0Hz-24MHz三級(jí)程序存儲(chǔ)器鎖定128×8位內(nèi)部RAM32可編程I/O線(xiàn)兩個(gè)16位定時(shí)器/計(jì)數(shù)器5個(gè)中斷源可編程串行通道低功耗的閑置和掉電模式片內(nèi)振蕩器和時(shí)鐘電路特性概述:AT89C51提供以下標(biāo)準(zhǔn)功能:4k字節(jié)Flash閃速存儲(chǔ)器,128字節(jié)內(nèi)部RAM,32個(gè)I/O口線(xiàn),兩個(gè)16位定時(shí)/計(jì)數(shù)器,一個(gè)5向量?jī)杉?jí)中斷結(jié)構(gòu),一個(gè)全雙工串行通信口,片內(nèi)振蕩器及時(shí)鐘電路。同時(shí),AT89C51可降至0Hz的靜態(tài)邏輯操作,并支持兩種軟件可選的節(jié)電工作模式??臻e方式停止CPU的工作,但允許RAM,定時(shí)/計(jì)數(shù)器,串行通信口及中斷系統(tǒng)繼續(xù)工作。掉電方式保存RAM中的內(nèi)容,但振蕩器停止工作并禁止其它所有部件工作直到下一個(gè)硬件復(fù)位。內(nèi)部結(jié)構(gòu)如圖2-2所示:圖2-280C51的內(nèi)部結(jié)構(gòu)引腳功能說(shuō)明Vcc:電源電壓GND:地P0口:P0口是一組8位漏極開(kāi)路型雙向I/O口,也即地址/數(shù)據(jù)總線(xiàn)復(fù)位口。作為輸出口用時(shí),每位能吸收電流的方式驅(qū)動(dòng)8個(gè)邏輯門(mén)電路,對(duì)端口寫(xiě)“1”在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器或程序存儲(chǔ)器時(shí),這組口線(xiàn)分時(shí)轉(zhuǎn)換地址〔低8位〕和數(shù)據(jù)總線(xiàn)復(fù)用,在訪問(wèn)期間激活內(nèi)部上拉電阻。P1口:P1是一個(gè)帶內(nèi)部上拉電阻的8位雙向I/O口,P1的輸出緩沖級(jí)可驅(qū)動(dòng)〔吸收或輸出電流〕4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”Flash編程和程序校驗(yàn)期間,P1接受低8位地址。P2口:P2是一個(gè)帶有內(nèi)部上拉電阻的8位雙向I/O口,P2的輸出緩沖級(jí)可驅(qū)動(dòng)〔吸收或輸出電流〕4個(gè)TTL邏輯門(mén)電路。對(duì)端口寫(xiě)“1”在訪問(wèn)外部程序存儲(chǔ)器獲16位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口送出高8位地址數(shù)據(jù)。在訪問(wèn)8位地址的外部數(shù)據(jù)存儲(chǔ)器時(shí),P2口線(xiàn)上的內(nèi)容〔也即特殊功能存放器〔SFR〕區(qū)中R2存放器的內(nèi)容〕,在整個(gè)訪問(wèn)期間不改變。P3口:P3口是一組帶有內(nèi)部上拉電阻的8位雙向I/O口。P3口輸出緩沖級(jí)可驅(qū)動(dòng)〔吸收或輸出電流〕4個(gè)TTL邏輯門(mén)電路。對(duì)P3口寫(xiě)入“1”時(shí),他們被內(nèi)部上拉電阻拉高并可作為輸出口。做輸出端時(shí),被外部拉低的P3口將用上拉電阻輸出電流〔Iil〕。P3口除了作為一般的I/O口線(xiàn)外,更重要的用途是它的第二功能,如下表2-1表2-1P3口各引腳的作用端口引腳第二功能P3.0RXD(串行輸入口)P3.1TXD(串行輸出口)P3.2INT0(外中斷0)P3.3INT1(外中斷1)P3.4T0(定時(shí)/計(jì)數(shù)器0)P3.5T1(定時(shí)/計(jì)數(shù)器1)P3.6WR(外部數(shù)據(jù)存儲(chǔ)器寫(xiě)選通)P3.7RD(外部數(shù)據(jù)存儲(chǔ)器讀選通)P3口還接收一用于flash閃速存儲(chǔ)器編程和程序校驗(yàn)的控制信號(hào)。RST:復(fù)位輸入。當(dāng)振蕩器工作時(shí),RST引腳出現(xiàn)兩個(gè)機(jī)器周期以上高電平將使單片機(jī)復(fù)位。ALE/PROG:當(dāng)訪問(wèn)外部程序存儲(chǔ)器或數(shù)據(jù)存儲(chǔ)器時(shí),ALE〔地址所存允許〕輸出脈沖用于所存地址的低8位字節(jié)。即使不訪問(wèn)外部存儲(chǔ)器,ALE仍以時(shí)鐘振蕩頻率的1/6輸出固定的正脈沖信號(hào),因此它可對(duì)外輸出時(shí)鐘或用于定時(shí)目的。要注意的是:每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí)將跳過(guò)一個(gè)ALE脈沖。對(duì)flash存儲(chǔ)器編程期間,該引腳還用于輸入編程脈沖〔^PROG〕。如有不要,可通過(guò)對(duì)特殊功能存放器〔SFR〕區(qū)中的8EH單元的D0位置位,可禁止ALE操作。該外置位后,只要一條MOVX和MOVC指令A(yù)LE才會(huì)被激活。此外,該引腳會(huì)被微弱拉高,單片機(jī)執(zhí)行外部程序時(shí),應(yīng)設(shè)置ALE無(wú)效。PSEN:程序存儲(chǔ)允許〔^PSEN〕輸出是外部程序存儲(chǔ)器的讀選通信號(hào),當(dāng)AT89C51由外部程序存儲(chǔ)器取指令〔或數(shù)據(jù)〕時(shí),每個(gè)機(jī)器周期兩個(gè)^PSEN有效,即輸出兩個(gè)脈沖。在此期間,當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器,這兩次有效的^PSEN信號(hào)不出現(xiàn)。EA/VPP:外部訪問(wèn)允許。欲使CPU僅訪問(wèn)外部程序存儲(chǔ)器〔地址為0000HFFFFH〕,EA端必須保持低電平〔接地〕。需注意的是;如果加密位LB1被編程,復(fù)位時(shí)內(nèi)部會(huì)鎖存EA端狀態(tài)。如EA端為高電平〔接VCC端〕,CPU那么執(zhí)行內(nèi)部程序存儲(chǔ)器中的指令。Flash存儲(chǔ)器編程時(shí),該引腳加上+12V的編程允許電源VPP,當(dāng)然這必須是該器件是使用12V編程電壓VPP.XTAL1:振蕩器反相放大器的及內(nèi)部時(shí)鐘發(fā)生器的輸出端。XTAL2:振蕩器反相放大器的輸出端。時(shí)鐘振蕩器:AT89C51中有一個(gè)用于構(gòu)成內(nèi)部振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是該放大器的輸入端和輸出端。這個(gè)放大器與作為反響的片外石英晶體或陶瓷諧振器一起構(gòu)成自激振蕩器,振蕩電路參見(jiàn)圖5。外接石英晶體〔或陶瓷諧振器〕及電容C1、C2接在放大器的反響回路中構(gòu)成并聯(lián)振蕩電路。對(duì)外接電容C1、C2雖然沒(méi)有十分嚴(yán)格的要求,但電容容量的大小會(huì)輕微影響振蕩頻率的上下、振蕩器的穩(wěn)定性、起振的難易程度及溫度穩(wěn)定性,如果使用石英晶體,我們推薦電容使用30PF+10PF,而如使用陶瓷諧振器建議選擇40PF+10PF。用戶(hù)也可以采用外部時(shí)鐘。采用外部時(shí)鐘的電路如圖5右所示。這種情況下,外部時(shí)鐘脈沖接到XTAL1端,即內(nèi)部時(shí)鐘發(fā)生器的輸入端,XTAL2那么懸空由于外部時(shí)鐘信號(hào)是通過(guò)一個(gè)2分頻觸發(fā)器后作為內(nèi)部時(shí)鐘信號(hào)的,所以對(duì)外部時(shí)鐘信號(hào)的占空比沒(méi)有特殊要求,但最小高電平持續(xù)時(shí)間和最大的低電平持續(xù)時(shí)間應(yīng)符合產(chǎn)品技術(shù)要求??臻e模式在空閑工作模式狀態(tài),CPU保持睡眠狀態(tài)而所有片內(nèi)的外設(shè)仍保持激活狀態(tài),這種方式由軟件產(chǎn)生。此時(shí),片內(nèi)RAM和所有特殊功能存放器的內(nèi)容保持不變。空閑模式可由任何允許的中斷請(qǐng)求或硬件復(fù)位終止。終止空閑工作模式的方法有兩種,其一是任何一條被允許中斷的事件被激活,即可終止空閑工作模式。程序會(huì)首先響應(yīng)中斷,進(jìn)入中斷效勞程序,執(zhí)行完中斷效勞程序并僅隨終端返回指令,下一條要執(zhí)行的指令就是使單片機(jī)進(jìn)入空閑模式那條指令后面的一條指令。其二是通過(guò)硬件復(fù)位也可將空閑工作模式終止,需要注意的是,當(dāng)由硬件復(fù)位來(lái)終止空閑模式時(shí),CPU通常是從激活空閑模式那條指令的下一條指令開(kāi)始繼續(xù)執(zhí)行程序的,要完成內(nèi)部復(fù)位操作,硬件復(fù)位脈沖要保持兩個(gè)機(jī)器周期〔24個(gè)時(shí)鐘周期〕有效,在這種情況下,內(nèi)部禁止CPU訪問(wèn)片內(nèi)RAM,而允許訪問(wèn)其它端口。為了防止可能對(duì)端口產(chǎn)生以外寫(xiě)入,激活空閑模式的那條指令后一條指令不應(yīng)該是一條對(duì)端口或外部存儲(chǔ)器的寫(xiě)入指令,如圖2-3所示:圖2-3振蕩電路表2-2空閑和掉電模式外部引腳狀態(tài)模式程序存儲(chǔ)器ALE^PSENPORT0PORT1PORT2PORT3空閑模式內(nèi)部11數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)空閑模式外部11浮空數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)掉電模式內(nèi)部00數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)掉電模式外部00浮空數(shù)據(jù)數(shù)據(jù)數(shù)據(jù)掉電模式在掉電模式下,震蕩器停止工作,進(jìn)入掉電模式的指令是最后一條被執(zhí)行的指令,片內(nèi)RAM和特殊功能存放器的內(nèi)容在終止掉電模式前被凍結(jié)。退出掉電模式的唯一方法是硬件復(fù)位,復(fù)位后將重新定義全部特殊功能存放器但不改變RAM中的內(nèi)容,在VCC恢復(fù)到正常工作電平前,復(fù)位應(yīng)無(wú)效,且必須保持一定時(shí)間以使振蕩器重啟動(dòng)并穩(wěn)定工作。程序存儲(chǔ)器的加密:AT89C51可使用對(duì)芯片上的3個(gè)加密位進(jìn)行編程〔P〕或不編程〔U〕來(lái)得到如下表2-3所示的功能:表2-3加密位保護(hù)功能表程序加密位保護(hù)類(lèi)型LB1LB2LB31UUU沒(méi)有程序保護(hù)功能2PUU禁止從外部程序存儲(chǔ)器中執(zhí)行MOVC指令讀取內(nèi)部程序存儲(chǔ)器的內(nèi)容3PPU除上表功能外,還禁止程序校驗(yàn)4PPP除以上功能外,同時(shí)禁止外部執(zhí)行當(dāng)加密位LB1被編程時(shí),在復(fù)位期間,EA端的邏輯電平被采樣并鎖存,如果單片機(jī)上電后一直沒(méi)有復(fù)位,那么鎖存起的初始值是一個(gè)隨機(jī)數(shù),且這個(gè)隨機(jī)數(shù)會(huì)一直保持到真正復(fù)位為止。為使單片機(jī)能正常工作,被鎖存的EA電平值必須與該引腳當(dāng)前的邏輯電平一致。此外,加密位只能通過(guò)整片擦除的方法去除。FLASH閃速存儲(chǔ)器的編程:AT89C51單片機(jī)內(nèi)部有4K字節(jié)的FLASHPEROM,這個(gè)FLASH存儲(chǔ)陣列出廠時(shí)已處于擦除狀態(tài)〔即所有存儲(chǔ)單元的內(nèi)容均為FFH〕,用戶(hù)隨時(shí)可對(duì)其進(jìn)行編程。編程接口可接收高電平〔+12V〕或低電平〔VCC〕的允許編程信號(hào),低電平編程模式適合于用戶(hù)再線(xiàn)編程系統(tǒng),而高電平編程模式可與通用EPROM編程器兼容。AT89C51單片機(jī)中,有些屬于低電壓編程方式,而有些那么是高電平編程方式,用戶(hù)可從芯片上的型號(hào)和讀取芯片內(nèi)的簽名字節(jié)獲得該信息,見(jiàn)下表2-4。表2-4芯片及信息Vpp=12vVpp=5v芯片頂面標(biāo)識(shí)AT89C51xxxxyywwAT89C51xxxx-5yyww簽名字節(jié)(030H)=1EH(031H)=51H(032H)=FFH(030H)=1EH(031H)=51H(032H)=05HAT89C51的程序存儲(chǔ)器陣列是采用字節(jié)寫(xiě)入方式編程的,每次寫(xiě)入一個(gè)字節(jié),要對(duì)整個(gè)芯片內(nèi)的PEROM程序存儲(chǔ)器寫(xiě)入一個(gè)非空字節(jié),必須使用片擦除的方式將整個(gè)存儲(chǔ)器的內(nèi)容去除。2.2單片機(jī)的分類(lèi)單片機(jī)作為計(jì)算機(jī)開(kāi)展的一個(gè)重要領(lǐng)域,應(yīng)用一個(gè)較科學(xué)的分類(lèi)方法。根據(jù)目前開(kāi)展情況,從不同角度單片機(jī)大致可以分為通用型/專(zhuān)用型、總線(xiàn)型/非總線(xiàn)型及工控型/家電型?!?〕通用型/專(zhuān)用型這是按單片機(jī)適用范圍來(lái)區(qū)分的。例如,80C51是通用型單片機(jī),它不是為某種專(zhuān)用途設(shè)計(jì)的;專(zhuān)用型單片機(jī)是針對(duì)一類(lèi)產(chǎn)品甚至某一個(gè)產(chǎn)品設(shè)計(jì)生產(chǎn)的,例如為了滿(mǎn)足電子體溫計(jì)的要求,在片內(nèi)集成ADC接口等功能的溫度測(cè)量控制電路。〔2〕總線(xiàn)型/非總線(xiàn)型這是按單片機(jī)是否提供并行總線(xiàn)來(lái)區(qū)分的??偩€(xiàn)型單片機(jī)普遍設(shè)置有并行地址總線(xiàn)、數(shù)據(jù)總線(xiàn)、控制總線(xiàn),這些引腳用以擴(kuò)展并行外圍器件都可通過(guò)串行口與單片機(jī)連接,另外,許多單片機(jī)已把所需要的外圍器件及外設(shè)接口集成一片內(nèi),因此在許多情況下可以不要并行擴(kuò)展總線(xiàn),大大減省封裝本錢(qián)和芯片體積,這類(lèi)單片機(jī)稱(chēng)為非總線(xiàn)型單片機(jī)。〔3〕控制型/家電型這是按照單片機(jī)大致應(yīng)用的領(lǐng)域進(jìn)行區(qū)分的。一般而言,工控型尋址范圍大,運(yùn)算能力強(qiáng);用于家電的單片機(jī)多為專(zhuān)用型,通常是小封裝、低價(jià)格,外圍器件和外設(shè)接口集成度高。顯然,上述分類(lèi)并不是惟一的和嚴(yán)格的。例如,80C51類(lèi)單片機(jī)既是通用型又是總線(xiàn)型,還可以作工控用。2.3單片機(jī)特點(diǎn)單片機(jī)除了體積小、價(jià)格低、性能強(qiáng)、速度快、用途廣、靈活性強(qiáng)、可靠性高等優(yōu)點(diǎn)外,它與通用計(jì)算機(jī)相比,在硬件結(jié)構(gòu)和指令設(shè)置上還具有以下獨(dú)特之處:1、存儲(chǔ)器ROM和RAM是嚴(yán)格分工的。ROM用做程序存儲(chǔ)器,只放程序、常數(shù)和數(shù)據(jù)表格,而RAM用做數(shù)據(jù)存儲(chǔ)器,用來(lái)臨時(shí)存放數(shù)據(jù)和變量。這樣的設(shè)計(jì)方案使單片機(jī)更適用于實(shí)時(shí)控制系統(tǒng)。配置較大程序存儲(chǔ)空間的ROM。將已調(diào)試好的程序固化,這樣不僅掉電時(shí)程序不喪失,還防止了程序被破壞,從而確保了程序的平安性。實(shí)時(shí)控制僅需容量較小的RAM,用于存放少量隨機(jī)數(shù)據(jù),這樣有利于提高單片機(jī)的操作速度。2、采用面向控制的指令系統(tǒng)。在實(shí)時(shí)控制方面,尤其是在位控制方面單片機(jī)有著不俗的表現(xiàn)。3、輸入/輸出端口引腳通常設(shè)計(jì)有多種功能。在設(shè)計(jì)時(shí),究竟使用多功能引腳的哪一種功能,可以由用戶(hù)編程確定。4、品種規(guī)格的系列化。屬于同一個(gè)產(chǎn)品系列、不同型號(hào)的單片機(jī),通常具有相同的內(nèi)核、相同或者兼容的指令系統(tǒng),其主要的差距僅在于片內(nèi)配置了一些不同種類(lèi)或者不同數(shù)量的功能部件,以適用不同的被控對(duì)象。5、單片機(jī)的硬件功能具有廣泛的通用性。同一種單片機(jī)可以用在不同的控制系統(tǒng)中,只是其中所配置的軟件不同而已。換言之,給單片機(jī)固化上不同的軟件,便可形成用途不同的專(zhuān)用智能芯片,有時(shí)將這種芯片稱(chēng)為固件。第三章洗衣機(jī)控制系統(tǒng)的硬件設(shè)計(jì)洗衣機(jī)是一種在家庭中不可缺少的家用電器,開(kāi)展非???全自動(dòng)式洗衣機(jī)因使用方便得到大家的青睞,全自動(dòng)即進(jìn)水、洗滌、漂洗、脫水等一系列過(guò)程自動(dòng)完成,控制器通常設(shè)有幾種洗滌程序,對(duì)不同的衣物可供用戶(hù)選擇。那么先來(lái)說(shuō)說(shuō)它的硬件設(shè)計(jì)。硬件電路框圖如圖3-1所示,在該硬件系統(tǒng)中主要由核心單元電路、進(jìn)/排水閥控制電路、電機(jī)控制電路、按鍵和開(kāi)關(guān)電路、輸出控制電路、特殊功能電路、電源電路等單元組成。CPUCPU〔AT89C51〕按鍵和開(kāi)關(guān)電路特殊功能電路進(jìn)/排水閥電路電機(jī)控制電路輸出控制電路電源電路圖3-1硬件電路框圖3.1核心單元單芯片微處理器是屬于EmbeddedSystem(嵌入系統(tǒng)),此系統(tǒng)的是把CPU加上一些少量的記憶體和輸出入組件(I/O),都嵌入在一顆芯片內(nèi),再使用特定的組譯和編譯軟體編輯程序,利用燒錄器把程序儲(chǔ)存到單芯片,如此加上一些簡(jiǎn)單的周邊電路。即可變成一個(gè)控制系統(tǒng),所以單芯片又稱(chēng)為微程控器〔microcontroller〕。8051是由INTEL公司開(kāi)展出來(lái)的8bitMCU(微處理器),目前在工業(yè)界的應(yīng)用相當(dāng)?shù)钠占盎?,目前已有相?dāng)多家的公司也制造與8051兼容的單晶片,除的根本的構(gòu)造相同外,更增加其周邊的控制功能,例如DALLAS公司生產(chǎn)的DS87C550,已經(jīng)內(nèi)建A/D轉(zhuǎn)換和PWM,如此可減少周邊組件和布線(xiàn)的本錢(qián),而國(guó)內(nèi)的華邦電子公司也推出了40MHZW78C51/52/54/58ATMEL半導(dǎo)體公司的AT89C51系列的產(chǎn)品,不需紫外線(xiàn)的去除,而是用電子式抹除,比一般的51系列更為方便,目前在一般的學(xué)校實(shí)習(xí),大都采用此系列產(chǎn)品。PHILIPS半導(dǎo)體公司出產(chǎn)的P87C552家族,除了51本身的UART外,更增加的I2C(Inter-integratedCircuit)的功能,這是利用SDA和SCL兩條傳輸線(xiàn),和周邊的IC互相溝通、傳送資料,而且這些IC都必須有I2C的編號(hào),這使得選購(gòu)IC時(shí),受到一些限制,所一在目前的工業(yè)應(yīng)用上,還不是相當(dāng)?shù)钠占盎?。由?1家族繁多,所以在設(shè)計(jì)之前,必須針對(duì)51家族功能有相當(dāng)?shù)恼J(rèn)識(shí)如此才能夠選擇自己所需,而且價(jià)格廉價(jià)的MCU。采用AT89C51作為控制核心。其中P1.0到P2.0分別控制標(biāo)準(zhǔn)、經(jīng)濟(jì)、單獨(dú)、排水、強(qiáng)洗、弱洗、洗滌、漂洗、脫水的LED指示燈。由于AT89C2051每根I/O線(xiàn)的低電平驅(qū)動(dòng)電流到達(dá)20mA,所有I/O線(xiàn)的總驅(qū)動(dòng)電流達(dá)80mA,而這7個(gè)燈最多只有3個(gè)燈同時(shí)亮,每個(gè)燈只需3.5mA左右的電流,再算上其它I/O線(xiàn)的驅(qū)動(dòng)電流,總電流也不會(huì)超過(guò)80mA,所以可這樣直接驅(qū)動(dòng)LED發(fā)亮;P3.0接程序選擇鍵,P3.1接強(qiáng)弱選擇鍵,P3.2接暫停/啟動(dòng)/解除警報(bào)鍵,P3.6接水位開(kāi)關(guān),用于進(jìn)/排水過(guò)程中的水位控制,為CPU提供洗衣機(jī)水位信息,P3.7接蓋開(kāi)關(guān),這是平安保護(hù)措施,P2.1來(lái)控制蜂鳴器,P2.2引腳來(lái)控制進(jìn)水閥和進(jìn)水狀態(tài)顯示燈,P2.3引腳來(lái)控制排水閥和排水狀態(tài)顯示燈,單片機(jī)的復(fù)位引腳RST接洗衣機(jī)的強(qiáng)制復(fù)位鍵。3.2按鍵和開(kāi)關(guān)如圖3-2所示:圖3-2按鍵和開(kāi)關(guān)〔1〕強(qiáng)弱洗選擇鍵K3:洗衣機(jī)的強(qiáng)弱洗可以通過(guò)該鍵來(lái)循環(huán)選擇,系統(tǒng)默認(rèn)下為強(qiáng)洗狀態(tài)。〔2〕程序選擇鍵K2:通過(guò)該鍵可以選擇不同的洗衣程序,可以選擇的洗衣程序有標(biāo)準(zhǔn)洗衣、經(jīng)濟(jì)洗衣、單獨(dú)洗衣、排水洗衣。系統(tǒng)默認(rèn)下為標(biāo)準(zhǔn)洗衣。〔3〕暫停/啟動(dòng)/解除警報(bào)鍵K4:在洗衣機(jī)未進(jìn)入工作狀態(tài)或處于暫停狀態(tài)期間,該鍵用來(lái)啟動(dòng)洗衣機(jī)進(jìn)入工作狀態(tài)或恢復(fù)到原來(lái)的工作狀態(tài);在進(jìn)入工作狀態(tài)后,按觸該鍵那么進(jìn)入暫停狀態(tài);報(bào)警期間,按該鍵停止報(bào)警,并回到初始的待命狀態(tài)?!?〕強(qiáng)制復(fù)位鍵K1:按K1鍵,洗衣機(jī)將回到初始的設(shè)置,即程序直接回到標(biāo)準(zhǔn)強(qiáng)洗狀態(tài)?!?〕水位開(kāi)關(guān):水滿(mǎn)時(shí)開(kāi)關(guān)閉合。在進(jìn)水期間,系統(tǒng)不斷檢測(cè)該開(kāi)關(guān),假設(shè)在4分鐘之內(nèi)檢測(cè)到該開(kāi)關(guān)閉合,那么停止進(jìn)水。否那么認(rèn)進(jìn)水出故障,關(guān)閉進(jìn)水閥,并警報(bào)提示;在排水期間,系統(tǒng)不斷檢測(cè)該開(kāi)關(guān),假設(shè)在1分鐘內(nèi)檢測(cè)不到該開(kāi)關(guān)斷開(kāi),那么認(rèn)為排水出故障,關(guān)閉排水閥,并警報(bào)提示,否那么按正常處理?!?〕蓋開(kāi)關(guān):脫水期間假設(shè)翻開(kāi)機(jī)蓋那么該開(kāi)關(guān)閉合,引起中斷,洗衣機(jī)就會(huì)自動(dòng)停止脫水操作,合上蓋后又繼續(xù)脫水。3.3進(jìn)/排水閥進(jìn)/排水閥電路圖如圖3-3所示:圖3-3進(jìn)/排水閥電路圖在控制系統(tǒng)中,分別用P2.2和P2.3兩引腳控制進(jìn)水閥和排水閥的開(kāi)啟和關(guān)閉。當(dāng)引腳被設(shè)置為高電平,電磁閥開(kāi)啟:當(dāng)引腳被設(shè)置為低電平,電磁閥關(guān)閉。〔1〕進(jìn)水電磁閥主要包括電磁線(xiàn)圈、鐵芯、橡皮膜和彈簧等功能部件。當(dāng)P3.2引腳為低電平,進(jìn)水電磁閥的線(xiàn)圈不通電,鐵芯受彈簧力和自身的重力下壓其頂端的橡膠膜壓住橡皮膜的導(dǎo)流孔。此時(shí),自來(lái)水進(jìn)入到橡皮膜的上方,膜片受到水壓而把出水口堵住。當(dāng)P3.2引腳為高電平時(shí),進(jìn)水電磁閥的線(xiàn)圈通電,電磁力克服彈簧和鐵芯的重力將鐵芯向上提升,膜片中心的導(dǎo)流孔經(jīng)出水口向洗地桶注水〔2〕排水電磁閥主要包括電磁和排水閥兩個(gè)局部電磁鐵的主要作用是控制進(jìn)水閥的開(kāi)啟和關(guān)閉,在排水電磁鐵吸合排水閥開(kāi)啟的同時(shí),控制減速離合器制動(dòng)臂動(dòng)作來(lái)轉(zhuǎn)換洗衣機(jī)的工作狀態(tài)〔即控制洗衣機(jī)在洗滌和脫水中的轉(zhuǎn)速〕洗衣機(jī)排水時(shí),置P3.3引腳為高電平,電磁鐵線(xiàn)圈通電而吸合銜鐵,通過(guò)閥桿拉開(kāi)排水閥體,排水開(kāi)始。排水時(shí)間終了,置P3.3為低電平,電磁鐵線(xiàn)圈斷電而將銜鐵釋放,排水閥復(fù)位,排水結(jié)束。輸出全部采用固態(tài)繼電器SAI2403控制,包括控制電機(jī)正反轉(zhuǎn)、控制進(jìn)水閥和排水閥開(kāi)啟或關(guān)閉。SAI2403的控制電流6~30mA,在這里取10mA,加上指示燈的電流〔取3~4mA〕,總共需要14mA的驅(qū)動(dòng)電流,所以采用7406來(lái)提高驅(qū)動(dòng)能力。7406是集電極開(kāi)路的緩沖/驅(qū)動(dòng)器,其低電平驅(qū)動(dòng)能力到達(dá)40mA。另外,還在可控硅輸出回路上增加了阻容吸收回路來(lái)保護(hù)可控硅。3.4特殊功能電路特殊功能電路圖如圖3-4所示:圖3-4特殊功能電路〔1〕LED指示局部:用10個(gè)LED指示各狀態(tài)的運(yùn)行。LED1指示電源狀態(tài),LED2到LED5分別用來(lái)指示標(biāo)準(zhǔn)程序、經(jīng)濟(jì)程序、單獨(dú)程序、排水程序四種洗衣工作程序,LED6用于指示強(qiáng)洗狀態(tài),LED7用于指示弱洗狀態(tài),LED8用于指示洗滌狀態(tài),LED9用于指示漂洗狀態(tài),LED10用于指示脫水狀態(tài)。〔2〕蜂鳴器控制局部:通過(guò)CPU的P2.1輸出頻率為1KHz的脈沖信號(hào)來(lái)控制喇叭。當(dāng)洗衣機(jī)出現(xiàn)故障或者當(dāng)執(zhí)行完洗衣機(jī)設(shè)定的程序后也會(huì)出現(xiàn)報(bào)警省聲,提醒操作者執(zhí)行人為操作。蜂鳴器的設(shè)計(jì)如下圖,使用了一支PNP三極管S8850來(lái)驅(qū)動(dòng)蜂鳴器,當(dāng)單片機(jī)的P2.1為高電平時(shí),三極管不導(dǎo)通;當(dāng)P2.1為低電平時(shí),三極管導(dǎo)通,蜂鳴器獲得了一個(gè)高電平信號(hào),發(fā)出報(bào)警聲音。在不發(fā)音的時(shí)候,置P2.1為高電平,阻止三極管導(dǎo)通,如圖3-5所示圖3-5蜂鳴器電路3.5電機(jī)控制電機(jī)的選取:交、直流兩用電動(dòng)機(jī)現(xiàn)在比擬常用的步進(jìn)電機(jī)包括反響式步進(jìn)電機(jī)、永磁式步進(jìn)電機(jī)、混合式步進(jìn)電機(jī)和單相式步進(jìn)電機(jī)等。其中反響式步進(jìn)電機(jī)的轉(zhuǎn)子磁路由軟磁材料制成,定子上有多相勵(lì)磁繞組,利用磁導(dǎo)的變化產(chǎn)生轉(zhuǎn)矩?,F(xiàn)階段,反響式步進(jìn)電機(jī)獲得最多的應(yīng)用。常用單相交流感應(yīng)電動(dòng)機(jī)種類(lèi)在家用電器設(shè)備中,常配有小型單相交流感應(yīng)電動(dòng)機(jī)。交流感應(yīng)電動(dòng)機(jī)因應(yīng)用類(lèi)別的差異,一般可分為分相式電動(dòng)機(jī)、電容啟動(dòng)式電動(dòng)機(jī)、永久分相式電容電動(dòng)機(jī)、罩極式電動(dòng)機(jī)、永磁直流電動(dòng)機(jī)及交直流電動(dòng)機(jī)等類(lèi)型。一般的三相交流感應(yīng)電動(dòng)機(jī)在接通三相交流電后,電機(jī)定子繞組通過(guò)交變電流后產(chǎn)生旋轉(zhuǎn)磁場(chǎng)并感應(yīng)轉(zhuǎn)子,從而使轉(zhuǎn)子產(chǎn)生電動(dòng)勢(shì),并相互作用而形成轉(zhuǎn)矩,使轉(zhuǎn)子轉(zhuǎn)動(dòng)。但單相交流感應(yīng)電動(dòng)機(jī),只能產(chǎn)生極性和強(qiáng)度交替變化的磁場(chǎng),不能產(chǎn)生旋轉(zhuǎn)磁場(chǎng),因此單相交流電動(dòng)機(jī)必須另外設(shè)計(jì)使它產(chǎn)生旋轉(zhuǎn)磁場(chǎng),轉(zhuǎn)子才能轉(zhuǎn)動(dòng),所以常見(jiàn)單相交流電機(jī)有分相啟動(dòng)式、罩極式、電容啟動(dòng)式等種類(lèi)?!?〕分相啟動(dòng)式電動(dòng)機(jī)分相式電動(dòng)機(jī)廣泛應(yīng)用于電冰箱、洗衣機(jī)、空調(diào)等家用電器中。該電機(jī)有一個(gè)鼠籠式轉(zhuǎn)子和主、副兩個(gè)定子繞組。兩個(gè)繞組相差一個(gè)很大的相位角,使副繞組中的電流和磁通到達(dá)最大值的時(shí)間比主繞組早一些,因而能產(chǎn)生一個(gè)環(huán)繞定子旋轉(zhuǎn)的磁通。這個(gè)旋轉(zhuǎn)磁通切割轉(zhuǎn)子上的導(dǎo)體,使轉(zhuǎn)子導(dǎo)體感應(yīng)一個(gè)較大的電流,電流所產(chǎn)生的磁通與定子磁通相互作用,轉(zhuǎn)子便產(chǎn)生啟動(dòng)轉(zhuǎn)矩。當(dāng)電機(jī)一旦啟動(dòng),轉(zhuǎn)速上升至額定轉(zhuǎn)速70%時(shí),離心開(kāi)關(guān)脫開(kāi)副繞組即斷電,電機(jī)即可正常運(yùn)轉(zhuǎn)?!?〕罩極式電動(dòng)機(jī)罩極式單相交流電動(dòng)機(jī),它的結(jié)構(gòu)簡(jiǎn)單,其電氣性能略差于其他單相電機(jī),但由于制作本錢(qián)低,運(yùn)行噪聲較小,對(duì)電器設(shè)備干擾小,所以被廣泛應(yīng)用在電風(fēng)扇、電吹風(fēng)、吸塵器等小型家用電器中。罩極式電動(dòng)機(jī)只有主繞組,沒(méi)有副繞級(jí)〔啟動(dòng)繞組〕,它在電機(jī)定子的兩極處各設(shè)有一副短路環(huán),也稱(chēng)為電極罩極圈。當(dāng)電動(dòng)機(jī)通電后,主磁極局部的磁場(chǎng)產(chǎn)生的脈動(dòng)磁場(chǎng)感應(yīng)短路而產(chǎn)生二次電流,從而使磁極上被罩局部的磁場(chǎng),比未罩住局部的磁場(chǎng)滯后些,因而磁極構(gòu)成旋轉(zhuǎn)磁場(chǎng),電動(dòng)機(jī)轉(zhuǎn)子便旋轉(zhuǎn)啟開(kāi)工作。罩極式單相電動(dòng)機(jī)還有一個(gè)特點(diǎn),即可以很方便地轉(zhuǎn)換成二極或四極轉(zhuǎn)速,以適應(yīng)不同轉(zhuǎn)速電器配套使用?!?〕電容式啟動(dòng)電動(dòng)機(jī)該類(lèi)電動(dòng)機(jī)可分為電容分相啟動(dòng)電機(jī)和永久分相電容電機(jī)。這種電機(jī)結(jié)構(gòu)簡(jiǎn)單,啟動(dòng)快速,轉(zhuǎn)速穩(wěn)定,被廣泛應(yīng)用在電風(fēng)扇、排風(fēng)扇、抽油煙機(jī)等家用電器中。電容分相式電動(dòng)機(jī)在定子繞組上設(shè)有主繞組和副繞組〔啟動(dòng)繞組〕,并在啟動(dòng)繞組中串聯(lián)大容量啟動(dòng)電容器,使通電后主、副繞組的電相角成90°,從而能產(chǎn)生較大的啟動(dòng)轉(zhuǎn)矩,使轉(zhuǎn)子啟動(dòng)運(yùn)轉(zhuǎn)。對(duì)于永久分相電容電動(dòng)機(jī)來(lái)說(shuō),均與啟動(dòng)繞組串接。由于永久分相電機(jī)其啟動(dòng)的轉(zhuǎn)矩較小,因此很適于排風(fēng)機(jī)、抽風(fēng)機(jī)等要求啟動(dòng)力矩低的電器設(shè)備中應(yīng)用。電容式啟動(dòng)電動(dòng)機(jī),由于其運(yùn)行繞組分正、反相繞制設(shè)定,所以只要切換運(yùn)行繞組和啟動(dòng)繞組的串接方向,即可方便實(shí)現(xiàn)電機(jī)逆、順?lè)较蜻\(yùn)轉(zhuǎn)?!?〕交、直流兩用電動(dòng)機(jī)一般常用單相交流電動(dòng)機(jī),在交流50Hz電源中運(yùn)行時(shí),電動(dòng)機(jī)轉(zhuǎn)速較高的也只能達(dá)每分鐘3000轉(zhuǎn)。而交直流兩用電動(dòng)機(jī)在交流或直流供電下,其電機(jī)轉(zhuǎn)速可高達(dá)20000轉(zhuǎn),同時(shí)其電機(jī)的輸出啟動(dòng)力矩也大,所以盡管電機(jī)體積小,但由于轉(zhuǎn)速高輸出功率大,因此交直流兩用電動(dòng)機(jī)在洗衣機(jī)、吸塵器、排風(fēng)扇等家用電器中得以應(yīng)用。此外,在直流電動(dòng)機(jī)中還有一種結(jié)構(gòu)更為簡(jiǎn)單、用在玩具上的電機(jī),這種電機(jī)是用永久磁鐵作固定磁場(chǎng)的電動(dòng)機(jī),在電子玩具、電動(dòng)剃須刀、微型按摩器等日用小電器中得以廣泛應(yīng)用。直流電動(dòng)機(jī)按勵(lì)磁方式不同可分為他勵(lì)、并勵(lì)、串勵(lì)和復(fù)勵(lì)四種。下面一常用的他勵(lì)和并勵(lì)電動(dòng)機(jī)為例介紹其機(jī)械特性、起動(dòng)、反轉(zhuǎn)和調(diào)速,他勵(lì)和并勵(lì)電動(dòng)機(jī)只是連接方式上的不同,兩者的特性是一樣的,如圖3-6所示。圖3-6洗衣機(jī)電機(jī)控制由于電動(dòng)機(jī)一般是在額定狀態(tài)下運(yùn)行的,它的磁路已接近于飽和,所以在一定負(fù)載下,通常是減小磁通調(diào)速〔Φ<ΦN〕,轉(zhuǎn)速上調(diào)〔n>nN〕。調(diào)磁調(diào)速是恒功率調(diào)速,即轉(zhuǎn)速升高后,輸出轉(zhuǎn)距必須減小,否那么電樞電流Ia會(huì)超過(guò)原來(lái)的額定電流,使電動(dòng)機(jī)發(fā)熱燒壞。調(diào)磁調(diào)速的優(yōu)點(diǎn):1.調(diào)速平滑,可得到無(wú)級(jí)調(diào)速;2.調(diào)速經(jīng)濟(jì),控制方便;3.機(jī)械特性較硬,穩(wěn)定性較好。對(duì)專(zhuān)門(mén)生產(chǎn)的調(diào)磁調(diào)速的電動(dòng)機(jī),其調(diào)速幅度可到達(dá)3~4倍改變電壓U〔調(diào)壓調(diào)速〕當(dāng)保持他勵(lì)直流電動(dòng)機(jī)的勵(lì)磁電流If為額定值時(shí),降低電樞電壓U,使轉(zhuǎn)速n降低。由式可見(jiàn),在一定負(fù)載下,U愈低,轉(zhuǎn)速n愈小,但機(jī)械特性的硬度不變,見(jiàn)圖3-7圖3-7電壓調(diào)速曲線(xiàn)一般電動(dòng)機(jī)都處在額定狀態(tài)下運(yùn)行,再進(jìn)行調(diào)壓調(diào)速時(shí),為保證電動(dòng)機(jī)的絕緣,一般是將電動(dòng)機(jī)的電壓下調(diào)U<UN,而轉(zhuǎn)速也下調(diào)n<nN。調(diào)壓調(diào)速是在額定電流下調(diào)速,是恒轉(zhuǎn)距調(diào)速。調(diào)壓調(diào)速的優(yōu)點(diǎn):1.機(jī)械特性較硬,電壓降低后硬度不變,穩(wěn)定性較好。2.調(diào)速幅度較大,其調(diào)速幅度可到達(dá)6~10倍。3.可均勻調(diào)節(jié)電樞電壓,得到平滑的無(wú)級(jí)調(diào)速。這里采用電壓調(diào)節(jié)方式實(shí)現(xiàn)對(duì)直流伺服電機(jī)的調(diào)速。交流電機(jī)M2控制系統(tǒng)目前較常用的交流電動(dòng)機(jī)有兩種:1、三相異步電動(dòng)機(jī)。2、單相交流電動(dòng)機(jī)。第一種多用在工業(yè)上,而第二種多用在民用電器上。三相異步電動(dòng)機(jī)的旋轉(zhuǎn)原理三相異步電動(dòng)機(jī)要旋轉(zhuǎn)起來(lái)的先決條件是具有一個(gè)旋轉(zhuǎn)磁場(chǎng),三相異步電動(dòng)機(jī)的定子繞組就是用來(lái)產(chǎn)生旋轉(zhuǎn)磁場(chǎng)的。我們知道,但相電源相與相之間的電壓在相位上是相差120度的,三相異步電動(dòng)機(jī)定子中的三個(gè)繞組在空間方位上也互差120度,這樣,當(dāng)在定子繞組中通入三相電源時(shí),定子繞組就會(huì)產(chǎn)生一個(gè)旋轉(zhuǎn)磁場(chǎng),其產(chǎn)生的過(guò)程如圖1所示。圖中分四個(gè)時(shí)刻來(lái)描述旋轉(zhuǎn)磁場(chǎng)的產(chǎn)生過(guò)程。電流每變化一個(gè)周期,旋轉(zhuǎn)磁場(chǎng)在空間旋轉(zhuǎn)一周,即旋轉(zhuǎn)磁場(chǎng)的旋轉(zhuǎn)速度與電流的變化是同步的。旋轉(zhuǎn)磁場(chǎng)的轉(zhuǎn)速為:n=60f/P式中f為電源頻率、P是磁場(chǎng)的磁極對(duì)數(shù)、n的單位是:每分鐘轉(zhuǎn)數(shù)。根據(jù)此式我們知道,電動(dòng)機(jī)的轉(zhuǎn)速與磁極數(shù)和使用電源的頻率有關(guān),為此,控制交流電動(dòng)機(jī)的轉(zhuǎn)速有兩種方法:1、改變磁極法;2、變頻法。以往多用第一種方法,現(xiàn)在那么利用變頻技術(shù)實(shí)現(xiàn)對(duì)交流電動(dòng)機(jī)的無(wú)級(jí)變速控制。圖3-8三相異步電機(jī)工作圖觀察圖還可發(fā)現(xiàn),旋轉(zhuǎn)磁場(chǎng)的旋轉(zhuǎn)方向與繞組中電流的相序有關(guān)。相序A、B、C順時(shí)針排列,磁場(chǎng)順時(shí)針?lè)较蛐D(zhuǎn),假設(shè)把三根電源線(xiàn)中的任意兩根對(duì)調(diào),例如將B相電流通入C相繞組中,C相電流通入B相繞組中,那么相序變?yōu)椋篊、B、A,那么磁場(chǎng)必然逆時(shí)針?lè)较蛐D(zhuǎn)。利用這一特性我們可很方便地改變?nèi)嚯妱?dòng)機(jī)的旋轉(zhuǎn)方向。定子繞組產(chǎn)生旋轉(zhuǎn)磁場(chǎng)后,轉(zhuǎn)子導(dǎo)條〔鼠籠條〕將切割旋轉(zhuǎn)磁場(chǎng)的磁力線(xiàn)而產(chǎn)生感應(yīng)電流,轉(zhuǎn)子導(dǎo)條中的電流又與旋轉(zhuǎn)磁場(chǎng)相互作用產(chǎn)生電磁力,電磁力產(chǎn)生的電磁轉(zhuǎn)矩驅(qū)動(dòng)轉(zhuǎn)子沿旋轉(zhuǎn)磁場(chǎng)方向以n1的轉(zhuǎn)速旋轉(zhuǎn)起來(lái)。一般情況下,電動(dòng)機(jī)的實(shí)際轉(zhuǎn)速n1低于旋轉(zhuǎn)磁場(chǎng)的轉(zhuǎn)速n。因?yàn)榧僭O(shè)n=n1,那么轉(zhuǎn)子導(dǎo)條與旋轉(zhuǎn)磁場(chǎng)就沒(méi)有相對(duì)運(yùn)動(dòng),就不會(huì)切割磁力線(xiàn),也就不會(huì)產(chǎn)生電磁轉(zhuǎn)矩,所以轉(zhuǎn)子的轉(zhuǎn)速n1必然小于n。為此我們稱(chēng)三相電動(dòng)機(jī)為異步電動(dòng)機(jī)單相交流電動(dòng)機(jī)的旋轉(zhuǎn)原理單相交流電動(dòng)機(jī)只有一個(gè)繞組,轉(zhuǎn)子是鼠籠式的。當(dāng)單相正弦電流通過(guò)定子繞組時(shí),電動(dòng)機(jī)就會(huì)產(chǎn)生一個(gè)交變磁場(chǎng),這個(gè)磁場(chǎng)的強(qiáng)弱和方向隨時(shí)間作正弦規(guī)律變化,但在空間方位上是固定的,所以又稱(chēng)這個(gè)磁場(chǎng)是交變脈動(dòng)磁場(chǎng)。這個(gè)交變脈動(dòng)磁場(chǎng)可分解為兩個(gè)以相同轉(zhuǎn)速、旋轉(zhuǎn)方向互為相反的旋轉(zhuǎn)磁場(chǎng),當(dāng)轉(zhuǎn)子靜止時(shí),這兩個(gè)旋轉(zhuǎn)磁場(chǎng)在轉(zhuǎn)子中產(chǎn)生兩個(gè)大小相等、方向相反的轉(zhuǎn)矩,使得合成轉(zhuǎn)矩為零,所以電動(dòng)機(jī)無(wú)法旋轉(zhuǎn)。當(dāng)我們用外力使電動(dòng)機(jī)向某一方向旋轉(zhuǎn)時(shí)〔如順時(shí)針?lè)较蛐D(zhuǎn)〕,這時(shí)轉(zhuǎn)子與順時(shí)針旋轉(zhuǎn)方向的旋轉(zhuǎn)磁場(chǎng)間的切割磁力線(xiàn)運(yùn)動(dòng)變??;轉(zhuǎn)子與逆時(shí)針旋轉(zhuǎn)方向的旋轉(zhuǎn)磁場(chǎng)間的切割磁力線(xiàn)運(yùn)動(dòng)變大。這樣平衡就打破了,轉(zhuǎn)子所產(chǎn)生的總的電磁轉(zhuǎn)矩將不再是零,轉(zhuǎn)子將順著推動(dòng)方向旋轉(zhuǎn)起來(lái)。

要使單相電動(dòng)機(jī)能自動(dòng)旋轉(zhuǎn)起來(lái),我們可在定子中加上一個(gè)起動(dòng)繞組,起動(dòng)繞組與主繞組在空間上相差90度,起動(dòng)繞組要串接一個(gè)適宜的電容,使得與主繞組的電流在相位上近似相差90度,即所謂的分相原理。這樣兩個(gè)在時(shí)間上相差90度的電流通入兩個(gè)在空間上相差90度的繞組,將會(huì)在空間上產(chǎn)生〔兩相〕旋轉(zhuǎn)磁場(chǎng)。在這個(gè)旋轉(zhuǎn)磁場(chǎng)作用下,轉(zhuǎn)子就能自動(dòng)起動(dòng),起動(dòng)后,待轉(zhuǎn)速升到一定時(shí),借助于一個(gè)安裝在轉(zhuǎn)子上的離心開(kāi)關(guān)或其他自動(dòng)控制裝置將起動(dòng)繞組斷開(kāi),正常工作時(shí)只有主繞組工作。因此,起動(dòng)繞組可以做成短時(shí)工作方式。但有很多時(shí)候,起動(dòng)繞組并不斷開(kāi),我們稱(chēng)這種電動(dòng)機(jī)為電容式單相電動(dòng)機(jī),要改變這種電動(dòng)機(jī)的轉(zhuǎn)向,可由改變電容器串接的位置來(lái)實(shí)現(xiàn)。3.6電源除了220V的電源,我們還選擇了LM7805三端穩(wěn)壓器產(chǎn)生一個(gè)+5V的電源。其電路如圖3-9所示。圖3-9+5V電源電路三端固定輸出集成穩(wěn)壓器,它是一種串連調(diào)整式穩(wěn)壓器。它將全部電路集成在單塊硅片上,整個(gè)集成穩(wěn)壓電路只有輸入、輸出和公共三個(gè)引出端,使用非常方便。典型的有78××正電壓輸出系列,79××負(fù)電壓輸出系列。當(dāng)輸入的電壓VI、輸出電流IO或溫度變化時(shí),輸出電壓VO可保持不變;另外,當(dāng)輸出短路。可使輸出電流IO限制為一定值;假設(shè)穩(wěn)壓器過(guò)熱,那么它就停止工作,以免穩(wěn)壓器遭到損壞。三端固定輸出電壓集成穩(wěn)壓器,因內(nèi)部有過(guò)熱、過(guò)流保護(hù)電路,因此它的性能優(yōu)良、可靠性高。有因這種穩(wěn)壓器具有體積小、使用方便、價(jià)格低廉等優(yōu)點(diǎn),所以我們選用了這種芯片。第四章洗衣機(jī)控制系統(tǒng)的軟件設(shè)計(jì)4.1軟件構(gòu)思根據(jù)硬件設(shè)計(jì)要求,控制主程序流程圖如圖4-1所示。洗衣機(jī)通上電以后,單片機(jī)上電,首先進(jìn)行程序的初始化,包括定時(shí)器,外部中斷等初始化,以及各參數(shù)初始值的設(shè)定。默認(rèn)洗衣方式為標(biāo)準(zhǔn)強(qiáng)洗,漂洗次數(shù)兩次。然后掃描剩余鍵盤(pán)的狀態(tài)。確定強(qiáng)度和漂洗次數(shù)。當(dāng)啟動(dòng)鍵按下以后,洗衣機(jī)進(jìn)入待命狀態(tài),完成進(jìn)水——洗滌——漂洗——脫水——報(bào)警的循環(huán)過(guò)程。當(dāng)洗衣機(jī)結(jié)束時(shí)候,蜂鳴器發(fā)聲。上電復(fù)位上電復(fù)位初始化掃描K2、K3進(jìn)水程序啟動(dòng)否是否4分鐘內(nèi)水位開(kāi)關(guān)是否閉合是洗滌程序漂洗、脫水程序排水程序1分鐘內(nèi)水位開(kāi)關(guān)是否斷開(kāi)是結(jié)束人工故障處理否否圖4-1主程序流程圖4.2程序的執(zhí)行從主程序框圖中可以看出程序的根本流程,系統(tǒng)上電復(fù)位后,首先進(jìn)行初始化,默認(rèn)標(biāo)準(zhǔn)洗衣工作程序和強(qiáng)洗方式,然后掃描K2、K3鍵和啟動(dòng)鍵K4,這時(shí)洗衣機(jī)出于待命狀態(tài),通過(guò)K2、K3可以改變洗衣工作程序和強(qiáng)/弱洗衣方式。掃描過(guò)程中發(fā)現(xiàn)啟動(dòng)鍵K4按下時(shí),洗衣機(jī)從待命狀態(tài)變?yōu)楣ぷ鳡顟B(tài)。洗衣機(jī)進(jìn)入工作程序后,系統(tǒng)根據(jù)flag_SEL_ChengXu的值來(lái)判斷程序的選擇,按下K2鍵flag_SEL_ChengXu的值自加1,flag_SEL_ChengXu的值為0時(shí)表示標(biāo)準(zhǔn)洗衣,flag_SEL_ChengXu的值為1時(shí),表示經(jīng)濟(jì)洗衣,flag_SEL_ChengXu的值為2時(shí),表示單獨(dú)洗衣,flag_SEL_ChengXu的值為3時(shí),表示排水,這時(shí)程序直接跳至排水操作程序段,執(zhí)行單獨(dú)排水操作,否那么進(jìn)入進(jìn)水操作程序。進(jìn)水操作將P3.2引腳為高電平時(shí),進(jìn)水電磁閥的線(xiàn)圈通電,電磁力克服彈簧和鐵芯的重力將鐵芯向上提升,膜片中心的導(dǎo)流孔經(jīng)出水口向洗地桶注水。進(jìn)水期間系統(tǒng)不斷檢測(cè)水位開(kāi)關(guān)的狀態(tài),當(dāng)檢測(cè)到水位開(kāi)關(guān)閉合時(shí),說(shuō)明進(jìn)水已到達(dá)預(yù)定水位了,如果在規(guī)定的時(shí)間內(nèi)沒(méi)能檢測(cè)到水位開(kāi)關(guān)閉合的話(huà),,那就說(shuō)明進(jìn)水系統(tǒng)發(fā)生了故障,此時(shí)洗衣機(jī)退出洗衣工作狀態(tài),程序跳轉(zhuǎn)到報(bào)警程序進(jìn)行報(bào)警,提醒操作者進(jìn)行故障處理。正常情況下,進(jìn)水期間檢測(cè)到水位開(kāi)關(guān)閉合時(shí),說(shuō)明水位已經(jīng)到達(dá)預(yù)定水位,這時(shí)洗衣機(jī)將進(jìn)入下一個(gè)程序即洗滌程序。因?yàn)殡姍C(jī)在洗滌或者漂洗工作狀態(tài)時(shí)有正、反轉(zhuǎn)和間歇三種狀態(tài),所以用Motors這個(gè)變量來(lái)控制電機(jī)的這三種狀態(tài),當(dāng)Motors=0時(shí)電機(jī)正轉(zhuǎn),當(dāng)Motors=1時(shí)電機(jī)停止,當(dāng)Motors=2時(shí)電機(jī)反轉(zhuǎn)。到達(dá)預(yù)定的洗滌時(shí)間后,系統(tǒng)進(jìn)入下一條指令,進(jìn)入排水操作,在排水過(guò)程中系統(tǒng)會(huì)不斷檢測(cè)水位開(kāi)關(guān),在規(guī)定時(shí)間內(nèi)檢測(cè)不到水位開(kāi)關(guān)斷開(kāi)的話(huà),說(shuō)明排水系統(tǒng)有故障,程序跳轉(zhuǎn)到報(bào)警程序進(jìn)行報(bào)警,提醒操作者進(jìn)行故障處理。排水結(jié)束后,洗衣機(jī)接著執(zhí)行脫水操作,P2.3維持置位狀態(tài),保持排水閥開(kāi)啟,利用Motors來(lái)控制電機(jī)的正轉(zhuǎn)、反轉(zhuǎn)和停止。當(dāng)執(zhí)行完脫水程序后,系統(tǒng)會(huì)判斷是否會(huì)有下一步驟,如果沒(méi)有那就說(shuō)明洗衣程序終止,此時(shí)觸發(fā)警報(bào),提醒操作者程序執(zhí)行完畢。洗衣機(jī)的暫停中斷在洗衣機(jī)進(jìn)入工作狀態(tài)后,中斷請(qǐng)求即被設(shè)為允許,中斷請(qǐng)求有效,而蓋開(kāi)關(guān)只有在洗衣機(jī)進(jìn)入高速脫水的工作進(jìn)程時(shí),中斷請(qǐng)求才被設(shè)置為允許,請(qǐng)求信號(hào)有效。4.3子程序流程圖〔1〕洗滌過(guò)程流程圖:按下啟動(dòng)按扭,開(kāi)始進(jìn)水,進(jìn)水到規(guī)定高度,使水位開(kāi)關(guān)接通,實(shí)現(xiàn)洗滌正轉(zhuǎn),并停止進(jìn)水。在強(qiáng)洗狀態(tài)下洗滌正轉(zhuǎn)4S后,停止1S,開(kāi)始反轉(zhuǎn)4S〔弱洗狀態(tài)下是正轉(zhuǎn)3S后,停止1S,開(kāi)始反轉(zhuǎn)3S〕,直到規(guī)定的洗滌時(shí)間結(jié)束,開(kāi)始排水,由于排水,水位降低,當(dāng)水位低于規(guī)定下限水位時(shí),低水位開(kāi)關(guān)接通,排水結(jié)束后并判斷是否重復(fù)進(jìn)行洗滌,假設(shè)不需要,洗滌程序結(jié)束如圖4-2所示:在規(guī)定時(shí)間內(nèi)檢測(cè)到水位開(kāi)關(guān)閉合,開(kāi)始洗滌在規(guī)定時(shí)間內(nèi)檢測(cè)到水位開(kāi)關(guān)閉合,開(kāi)始洗滌根據(jù)過(guò)程代碼獲取電機(jī)正轉(zhuǎn)-停止-反轉(zhuǎn)的時(shí)間周期啟動(dòng),開(kāi)始進(jìn)水電機(jī)動(dòng)作暫停處理是否否是是否排水是結(jié)束是否暫停是否繼續(xù)時(shí)間到否是否重復(fù)洗滌否圖4-2洗滌流程圖〔2〕脫水過(guò)程流程圖:按下脫水按鈕,洗衣機(jī)翻開(kāi)排水閥,電動(dòng)機(jī)開(kāi)始工作,在高速脫水過(guò)程中如果蓋被翻開(kāi),那洗衣機(jī)就會(huì)被強(qiáng)制停止,脫水時(shí)間結(jié)束后判定是否還要繼續(xù)脫水,假設(shè)不需要就表示脫水結(jié)束,警報(bào)提醒操作者脫水結(jié)束,如圖4-3所示:開(kāi)始開(kāi)始是觸發(fā)中斷電機(jī)停止電機(jī)動(dòng)作是否暫停處理是否是否是是是否繼續(xù)是否暫停時(shí)間到否是否重復(fù)脫水否報(bào)警平安開(kāi)關(guān)是否斷開(kāi)否平安開(kāi)關(guān)是否斷開(kāi)結(jié)束圖4-3脫水流程圖附錄一源程序/***************************頭文件***********************/#include <reg51.h>/************************數(shù)據(jù)類(lèi)型宏定義******************/#define uchar unsignedchar#define uintunsignedint/***********************使能、禁止宏定義*****************/#define Enable(); EA=1;#define Disable(); EA=0;/********************程序選擇功能標(biāo)志宏定義**************/#define BIAOZHUN 0#define JINGJI 1#define DANDU 2#define PAISHUI 3/********************強(qiáng)弱選擇功能標(biāo)志宏定義**************/#define QIANGXI 0#define RUOXI 1 /*******************進(jìn)水、排水時(shí)間限制宏定義*************/#define T_JinShui 240 //4min*60s#define T_PaiShui 60 //1min*60s#define T_XiDi 360 //6min*60s#define T_PiaoXi_1 240 //4min*60s#define T_PiaoXi_2 120 //2min*60s#define T_TuoShui 120 //2min*60s/**********************電機(jī)控制宏定義********************/#define ZHENGZHUAN 0#define STOP 1#define FANZHUAN 2#define ZhengZhuan(); PIN_Motor_A=0;PIN_Motor_B=1;#define Stop(); PIN_Motor_A=1;PIN_Motor_B=1;#define FanZhuan(); PIN_Motor_A=1;PIN_Motor_B=0;/*******************暫停、繼續(xù)控制宏定義*****************/#define ZanTing(); ET0=0;ET1=0;Stop();#define JiXu(); ET0=1;ET1=1;#define flag_Ok (flag_JinShui||flag_PaiShui||flag_XiDi||flag_PiaoXi||flag_TuoShui)/*************************管腳定義***********************/sbit LED_BiaoZhun = P1^0; sbit LED_JingJi = P1^1; sbit LED_DanDu = P1^2; sbit LED_PaiShui = P1^3; sbit LED_QiangXi = P1^4; sbit LED_RuoXi = P1^5; sbit LED_XiDi = P1^6; sbit LED_PiaoXi = P1^7; sbit LED_TuoShui = P2^0; sbit PIN_BaoJing = P2^1; sbit PIN_JinShui = P2^2; sbit PIN_PaiShui = P2^3; sbit PIN_Motor_A = P2^4; sbit PIN_Motor_B = P2^5; sbit K_SEL_ChengXu = P3^0; sbit K_SEL_QiangRuo= P3^1; sbit p32 = P3^2; sbit p33 = P3^3; sbit SW_ShuiWei = P3^6; sbit SW_AnQuan = P3^7; /************************函數(shù)申明***********************/voidProgramme_PaiShui(void);/*************************數(shù)據(jù)定義***********************/uchar flag_SEL_ChengXu; , bit flag_SEl_QiangRuo; bit flag_Run; bit flag_JinShui; bit flag_PaiShui; bit flag_XiDi; bit flag_PiaoXi; bit flag_TuoShui; bit flag_BaoJing; uchar _50ms; uint s; uint T_S; uchar T_Motor; /*************************延時(shí)程序*********************/voidDelay_10ms(uintT1) { uintt1,t2; for(t1=0;t1<T1;t1++) for(t2=0;t2<1250;t2++);//10ms}/**********************管腳初始化程序******************/voidPin_Init(void) { LED_BiaoZhun = 0; LED_JingJi = 1; LED_DanDu = 1; LED_PaiShui = 1; LED_QiangXi = 0; LED_RuoXi = 1; LED_XiDi = 1; LED_PiaoXi = 1; LED_TuoShui = 1; PIN_BaoJing = 1; PIN_JinShui = 1; PIN_PaiShui = 1; PIN_Motor_A = 1; PIN_Motor_B = 1; }/********************中斷初始化程序********************/voidExInt_Init(void) { IT0 = 1; EX0 = 1; IT1 = 1; EX1 = 1;}/*******************定時(shí)器0初始化程序******************/voidTimer0_Init(void) { TMOD = TMOD|0X01; TH0 = 0X3C; TL0 = 0XB0; TR0 = 1; _50ms = 0; s=0;}/*******************定時(shí)器1初始化程序******************/voidTimer1_Init(void) { TMOD = TMOD|0X10; TH1 = 0X3C; TL1 = 0XB0;}/********************電機(jī)初始化程序********************/voidT_Motor_Ctl(uchart1,uchart2,uchart3){ if(!flag_SEl_QiangRuo) T_Motor=t1; if(flag_SEl_QiangRuo) T_Motor=t2; if(flag_TuoShui) T_Motor=t3;}/********************電機(jī)初始化程序********************/voidMotor_Init(void){ ZhengZhuan(); T_Motor_Ctl(4,3,5);}/**********************解除報(bào)警************************/voidNo_BaoJing(void){ flag_BaoJing=0; PIN_BaoJing =1; TR1 =0;}/*******外部中斷0程序?yàn)檫\(yùn)行、解除報(bào)警或者暫停***********/voidint0(void)interrupt0 { if(!p32) { Delay_10ms(1); if(!p32) { if(!flag_Run) flag_Run=1; elseif(flag_BaoJing) No_BaoJing(); elseif(flag_Ok) { staticbitflag_ZanTing; flag_ZanTing=~flag_ZanTing; if(flag_ZanTing) {ZanTing();} else {JiXu();} } } }}/**********************報(bào)警程序************************/voidBaoJing(void){ flag_BaoJing=1; TR0 =0; TR1 =1;}/*******************時(shí)間到處理程序*********************/voidOk_Timer(void){ s=0; if(flag_JinShui||flag_PaiShui) { BaoJing(); } else { flag_XiDi =0; flag_PiaoXi =0; flag_TuoShui=0; Stop(); }}/********************電機(jī)控制程序**********************/voidMotor(void){ staticuchars_Motor; s_Motor++; if(s_Motor==T_Motor) { staticucharMotors; s_Motor=0; Motors++; if(Motors==3) Motors=0; switch(Motors) { caseZHENGZHUAN: ZhengZhuan();T_Motor_Ctl(4,3,5);break; caseSTOP : Stop();T_Motor_Ctl(1,1,2);break; caseFANZHUAN: FanZhuan();T_Motor_Ctl(4,3,5);break; default : break; } }}/*******************定時(shí)器0中斷程序********************/voidTimer0(void)interrupt1 { TR0=0; TH0=0X3C; TL0=0XB0; TR0=1; _50ms++; if(_50ms==20) { _50ms=0; s++; if(s==T_S) Ok_Timer(); if(flag_XiDi||flag_PiaoXi||flag_TuoShui) Motor(); } }/**********外部中斷1程序?yàn)樗坏交蛘呱w開(kāi)處理***********/voidint1(void)interrupt2 { if(!p33) { Delay_10ms(1); if(!p33) { } }}/************定時(shí)器1中斷程序作為閃爍及報(bào)警**************/voidTimer1(void)interrupt3 { staticuchar_50ms; TR1=0; TH1=0X3C; TL1=0XB0; TR1=1; _50ms++; if(_50ms==14) { _50ms=0; if(flag_XiDi) LED_XiDi =~LED_XiDi; if(flag_PiaoXi) LED_PiaoXi =~LED_PiaoXi; if(flag_TuoShui) LED_TuoShui=~LED_TuoShui; if(flag_BaoJing) PIN_BaoJing=~PIN_BaoJing; } }/**********************程序選擇程序********************/voidSEL_ChengXU(void) { if(!K_SEL_ChengXu) { Delay_10ms(1); if(!K_SEL_ChengXu) { while(!K_SEL_ChengXu); flag_SEL_ChengXu++; if(flag_SEL_ChengXu==5) flag_SEL_ChengXu=0; switch(flag_SEL_ChengXu) { caseBIAOZHUN : LED_BiaoZhun=0; LED_JingJi =1; LED_DanDu =1; LED_PaiShui =1; break; caseJINGJI : LED_BiaoZhun=1; LED_JingJi =0; LED_DanDu =1; LED_PaiShui =1; break; caseDANDU : LED_BiaoZhun=1; LED_JingJi =1; LED_DanDu =0; LED_PaiShui =1; break; casePAISHUI : LED_BiaoZhun=1; LED_JingJi =1; LED_DanDu =1; LED_PaiShui =0; break; default : break; } } }}/********************強(qiáng)弱選擇程序**********************/voidSEL_QiangRuo(void) { if(!K_SEL_QiangRuo) { Delay_10ms(1); if(!K_SEL_QiangRuo) { while(!K_SEL_QiangRuo); flag_SEl_QiangRuo=~flag_SEl_QiangRuo; if(!flag_SEl_QiangRuo) { LED_QiangXi =0; LED_RuoXi =1; } else { LED_QiangXi =1; LED_RuoXi =0; } } }}voidJinShui(void){ PIN_JinShui=0; flag_JinShui=1; TR1=0; Timer0_Init(); T_S=T_JinShui; while(SW_ShuiWei); PIN_JinShui=1; flag_JinShui=0; TR0=0; TF0=0; }/**********************排水程序***********************/voidPaiShui(void){ PIN_PaiShui=0; flag_PaiShui=1; TR1=0; Timer0_Init(); T_S=T_PaiShui; while(!SW_ShuiWei); TR0=0; TF0=0; Delay_10ms(500); PIN_PaiShui=1; flag_PaiShui=0; }/**********************洗滌程序***********************/voidXiDi(void){ flag_XiDi=1; TR1=1; Timer0_Init(); T_S=T_XiDi; Motor_Init(); while(flag_XiDi); TR1=0; LED_XiDi=1;}/**********************漂洗程序***********************/voidPiaoXi(uchart){ flag_PiaoXi=1; TR1=1; Timer0_Init(); T_S=t; Motor_Init(); while(flag_PiaoXi); TR=

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論