畢業(yè)設(shè)計(jì)-基于AT89C51單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).docx
《畢業(yè)設(shè)計(jì)-基于AT89C51單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).docx》由會(huì)員分享,可在線閱讀,更多相關(guān)《畢業(yè)設(shè)計(jì)-基于AT89C51單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn).docx(38頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。
1、華中師范大學(xué)2011屆自考本科論文答辯題目:基于AT89C51單片機(jī)的直流電機(jī)調(diào)速系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)學(xué)生姓名:李達(dá)所在院系:機(jī)械電子工程學(xué)院所學(xué)專業(yè):機(jī)電一體化系統(tǒng)設(shè)計(jì)指導(dǎo)老師:盧麗君完成時(shí)間:2013-03-10目 錄摘要1Abstract2項(xiàng)目一 直流電機(jī)3一 直流電機(jī)的發(fā)展3二 直流電機(jī)的控制方法和工作原理3項(xiàng)目二 單片機(jī)最小系統(tǒng)4一 單片機(jī)及微處理器控制系統(tǒng)的發(fā)展4二 整體設(shè)計(jì)51 硬件電路設(shè)計(jì)62 單片機(jī)最小系統(tǒng)的設(shè)計(jì)6三 單片機(jī)AT89S5261復(fù)位電路及時(shí)鐘電路72 AT89C51各個(gè)管腳說(shuō)明83 振蕩器特性104 芯片擦除10項(xiàng)目三 直流電機(jī)驅(qū)動(dòng)電路10一 H橋10二 H橋驅(qū)動(dòng)電
2、路11三 使能控制和方向邏輯12項(xiàng)目四 PWM脈寬調(diào)制原理15一 PWM調(diào)速原理15二 PWM調(diào)速方法15三 PWM實(shí)現(xiàn)方式16四 顯示模塊16五 控制模塊17項(xiàng)目五 C語(yǔ)言軟件編程18項(xiàng)目六 系統(tǒng)調(diào)試與分析19一 系統(tǒng)功能調(diào)試與仿真191 調(diào)試軟件介紹192 系統(tǒng)調(diào)試193 仿真圖形20結(jié)束語(yǔ)22附錄 單片機(jī)控制程序23參考文獻(xiàn)30摘 要本文是對(duì)直流電機(jī)PWM調(diào)速器設(shè)計(jì)的研究,主要實(shí)現(xiàn)對(duì)電機(jī)的控制。本課程設(shè)計(jì)主要是實(shí)現(xiàn)PWM調(diào)速器的正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停止等操作。并實(shí)現(xiàn)電路的仿真。為實(shí)現(xiàn)系統(tǒng)的微機(jī)控制,在設(shè)計(jì)中,采用了AT89C51單片機(jī)作為整個(gè)控制系統(tǒng)的控制電路的核心部分,配以各種顯示
3、、驅(qū)動(dòng)模塊,實(shí)現(xiàn)對(duì)電動(dòng)機(jī)轉(zhuǎn)速參數(shù)的顯示和測(cè)量;由命令輸入模塊、光電隔離模塊及H型驅(qū)動(dòng)模塊組成。采用帶中斷的獨(dú)立式鍵盤作為命令的輸入,單片機(jī)在程序控制下,不斷給光電隔離電路發(fā)送PWM波形,H型驅(qū)動(dòng)電路完成電機(jī)正反轉(zhuǎn)控制.在設(shè)計(jì)中,采用PWM調(diào)速方式,通過(guò)改變PWM的占空比從而改變電動(dòng)機(jī)的電樞電壓,進(jìn)而實(shí)現(xiàn)對(duì)電動(dòng)機(jī)的調(diào)速。設(shè)計(jì)的整個(gè)控制系統(tǒng),在硬件結(jié)構(gòu)上采用了大量的集成電路模塊,大大簡(jiǎn)化了硬件電路,提高了系統(tǒng)的穩(wěn)定性和可靠性,使整個(gè)系統(tǒng)的性能得到提高。關(guān)鍵詞:AT89C51單片機(jī);PWM調(diào)速;正反轉(zhuǎn)控制;仿真。AbstractThis article is a DC motor PWM speed
4、 control design study, the main achievement of motor control. This course is primarily designed to achieve PWM speed controller for forward and reverse, acceleration, deceleration, and stop such an operation. And to achieve the circuit simulation. To achieve system, microcomputer control, in the des
5、ign, using AT89C51 microcontroller control system as a whole, the core of the control circuit, accompanied by a variety of shows, drive module enables the motor speed parameter display and measurement; from the command input module, Optical isolation module and H-drive module. With the stand-alone k
6、eyboard with a break as a command input, single-chip in the process control, continuing to the optical isolation circuit to send PWM waveform, H-type motor driving circuit to complete positive inversion control. In the design, using PWM speed mode, by changing the PWM duty cycle to change the motor
7、armature voltage, so as to realize the speed of the motor. Design of the control system hardware structure with a large number of integrated circuit modules, greatly simplifying the hardware circuitry to improve stability and reliability of the system so that the whole system performance is improved
8、.Key words: AT89C51 microcontroller; PWM speed; positive inversion control; Simulation。項(xiàng)目一 直流電機(jī)一 直流電機(jī)的發(fā)展直流電動(dòng)機(jī)在冶金、礦山、化工、交通、機(jī)械、紡織、航空等領(lǐng)域中已經(jīng)得到廣泛的應(yīng)用。而以往直流電動(dòng)機(jī)的控制只是簡(jiǎn)單的控制,很難進(jìn)行調(diào)速,不能實(shí)現(xiàn)智能化。如今,直流電動(dòng)機(jī)的調(diào)速控制已經(jīng)離不開(kāi)單片機(jī)的支持,單片機(jī)應(yīng)用技術(shù)的飛速發(fā)展促進(jìn)了自動(dòng)控制技術(shù)的發(fā)展,使人類社會(huì)步入了自動(dòng)化時(shí)代,單片機(jī)應(yīng)用技術(shù)與其他學(xué)科領(lǐng)域交叉融合,促進(jìn)了學(xué)科發(fā)展和專業(yè)更新,引發(fā)了新興交叉學(xué)科與技術(shù)的不斷涌現(xiàn)。現(xiàn)代科學(xué)技術(shù)的飛
9、速發(fā)展,改變了世界,也改變了人類的生活。由于單片機(jī)的體積小、重量輕、功能強(qiáng)、抗干擾能力強(qiáng)、控制靈活、應(yīng)用方便、價(jià)格低廉等特點(diǎn),計(jì)算機(jī)性能的不斷提高,單片機(jī)的應(yīng)用也更加廣泛特別是在各種領(lǐng)域的控制、自動(dòng)化等方面。在實(shí)際應(yīng)用中,電動(dòng)機(jī)作為把電能轉(zhuǎn)換為機(jī)械能的主要設(shè)備,一是要具有較高的能量轉(zhuǎn)換效率;二是應(yīng)能根據(jù)生產(chǎn)工藝的要求調(diào)整轉(zhuǎn)速。電動(dòng)機(jī)的調(diào)速性能如何對(duì)提高產(chǎn)品質(zhì)量、提高勞動(dòng)生產(chǎn)率和節(jié)省電能有著直接的決定性影響。因此,調(diào)速技術(shù)一直是研究的熱點(diǎn)。二 直流電機(jī)的控制方法和工作原理直流電動(dòng)機(jī)轉(zhuǎn)速的控制方法可分為兩類:勵(lì)磁控制法與電樞電壓控制法。勵(lì)磁控制法控制磁通,其控制功率雖然小但低速時(shí)受到磁場(chǎng)飽和的限制
10、,高速時(shí)受到換向火花和轉(zhuǎn)向器結(jié)構(gòu)強(qiáng)度的限制,而且由于勵(lì)磁線圈電感較大動(dòng)態(tài)響應(yīng)較差。所以常用的控制方法是改變電樞端電壓調(diào)速的電樞電壓控制法。傳統(tǒng)的改變端電壓的方法是通過(guò)調(diào)節(jié)電阻來(lái)實(shí)現(xiàn)的,但這種調(diào)壓方法效率低。隨著電力電子技術(shù)的發(fā)展,創(chuàng)造了許多新的電樞電壓控制方法。其中脈寬調(diào)制(Pulse Width Modulation,PWM)是常用的一種調(diào)速方法。其基本原理是用改變電機(jī)電樞電壓的接通和斷開(kāi)的時(shí)間比(即占空比)來(lái)控制馬達(dá)的速度,在脈寬調(diào)速系統(tǒng)中當(dāng)電機(jī)通電時(shí),其速度增加,電機(jī)斷電時(shí)其速度降低。只要按照一定的規(guī)律改變通斷電的時(shí)間,就可使電機(jī)的速度保持在一穩(wěn)定值上。直流電機(jī)可按其結(jié)構(gòu)、工作原理和用途
11、等進(jìn)行分類,其中根據(jù)直流電機(jī)的用途可分為以下幾種:直流發(fā)電機(jī)(將機(jī)械能轉(zhuǎn)化為直流電能)、直流電動(dòng)機(jī)(將直流電能轉(zhuǎn)化為機(jī)械能)、直流測(cè)速發(fā)電機(jī)(將機(jī)械信號(hào)轉(zhuǎn)換為電信號(hào))、直流伺服電動(dòng)機(jī)(將控制信號(hào)轉(zhuǎn)換為機(jī)械信號(hào))。直流電機(jī)電路模型如圖1-1所示,磁極N、S間裝著一個(gè)可以轉(zhuǎn)動(dòng)的鐵磁圓柱體,圓柱體的表面上固定著一個(gè)線圈abcd。當(dāng)線圈中流過(guò)電流時(shí),線圈受到電磁力作用,從而產(chǎn)生旋轉(zhuǎn)。根據(jù)左手定則可知,當(dāng)流過(guò)線圈中電流改變方向時(shí),線圈的方向也將改變,因此通過(guò)改變線圈電路的方向?qū)崿F(xiàn)改變電機(jī)的方向。直流電機(jī)模型見(jiàn)圖1。圖1 直流電動(dòng)機(jī)電路模型項(xiàng)目二 單片機(jī)最小系統(tǒng)一 單片機(jī)及微處理器控制系統(tǒng)的發(fā)展單片微型計(jì)
12、算機(jī)的誕生是計(jì)算機(jī)發(fā)展史上的一個(gè)新的里程碑。近年來(lái),隨著技術(shù)的發(fā)展和進(jìn)步,以及市場(chǎng)對(duì)產(chǎn)品功能和性能的要求不斷提高,直流電動(dòng)機(jī)的應(yīng)用更加廣泛,尤其是在智能機(jī)器人中的應(yīng)用。直流電動(dòng)機(jī)的起動(dòng)和調(diào)速性能、過(guò)載能力強(qiáng)等特點(diǎn)顯得十分重要,為了能夠適應(yīng)發(fā)展的要求,單閉環(huán)直流電動(dòng)機(jī)的調(diào)速控制系統(tǒng)得到了很大的發(fā)展。而作為單片嵌入式系統(tǒng)的核心單片機(jī),正朝著多功能、多選擇、高速度、低功耗、低價(jià)格、大存儲(chǔ)容量和強(qiáng)I/O功能等方向發(fā)展。隨著計(jì)算機(jī)檔次的不斷提高,功能的不斷完善,單片機(jī)已越來(lái)越廣泛地應(yīng)用在各種領(lǐng)域的控制、自動(dòng)化、智能化等方面,特別是在直流電動(dòng)機(jī)的調(diào)速控制系統(tǒng)中。這是因?yàn)閱纹瑱C(jī)具有很多優(yōu)點(diǎn):體積小,功能全,
13、抗干擾能力強(qiáng),可靠性高,結(jié)構(gòu)合理,指令豐富,控制功能強(qiáng),造價(jià)低等。所以選用單片機(jī)作為控制系統(tǒng)的核心以提高整個(gè)系統(tǒng)的可靠性和可行性。早期直流傳動(dòng)的控制系統(tǒng)采用模擬分離器件構(gòu)成,由于模擬器件有其固有的缺點(diǎn),如存在溫漂、零漂電壓,構(gòu)成系統(tǒng)的器件較多,使得模擬直流傳動(dòng)系統(tǒng)的控制精度及可靠性較低。隨著計(jì)算機(jī)控制技術(shù)的發(fā)展,微處理器已經(jīng)廣泛使用于直流傳動(dòng)系統(tǒng),實(shí)現(xiàn)了全數(shù)字化控制。由于微處理器以數(shù)字信號(hào)工作,控制手段靈活方便,抗干擾能力強(qiáng)。所以,全數(shù)字直流調(diào)速控制精度、可靠性和穩(wěn)定性比模擬直流調(diào)速系統(tǒng)大大提高。所以,直流傳動(dòng)控制采用微處理器實(shí)現(xiàn)全數(shù)字化,使直流調(diào)速系統(tǒng)進(jìn)入一個(gè)嶄新的階段。微處理器誕生于上個(gè)世
14、紀(jì)七十年代,隨著集成電路大規(guī)模及超大規(guī)模集成電路制造工藝的迅速發(fā)展,微處理器的性價(jià)比越來(lái)越高。此外,由于電力電子技術(shù)的發(fā)展,制作工藝的提升,使得大功率電子器件的性能迅速提高。為微處理器普遍用于控制電機(jī)提供了可能,利用微處理器控制電機(jī)完成各種新穎的、高性能的控制策略,使電機(jī)的各種潛在能力得到充分的發(fā)揮,使電機(jī)的性能更符合工業(yè)生產(chǎn)使用要求,還促進(jìn)了電機(jī)生產(chǎn)商研發(fā)出各種如步進(jìn)電機(jī)、無(wú)刷直流電機(jī)、開(kāi)關(guān)磁阻電動(dòng)機(jī)等便于控制且實(shí)用的新型電機(jī),使電機(jī)的發(fā)展出現(xiàn)了新的變化。對(duì)于簡(jiǎn)單的微處理器控制電機(jī),只需利用用微處理器控制繼電器、電子開(kāi)關(guān)元器件,使電路開(kāi)通或關(guān)斷就可實(shí)現(xiàn)對(duì)電機(jī)的控制。現(xiàn)在帶微處理器的可編程控制
15、器,已經(jīng)在各種的機(jī)床設(shè)備和各種的生產(chǎn)流水線中普遍得到應(yīng)用,通過(guò)對(duì)可編程控制器進(jìn)行編程就可以實(shí)現(xiàn)對(duì)電機(jī)的規(guī)律化控制。對(duì)于復(fù)雜的微處理器控制電機(jī),則要利用微處理器控制電機(jī)的電壓、電流、轉(zhuǎn)矩、轉(zhuǎn)速、轉(zhuǎn)角等,使電機(jī)按給定的指令準(zhǔn)確工作。通過(guò)微處理器控制,可使電機(jī)的性能有很大的提高。目前相比直流電機(jī)和交流電機(jī)他們各有所長(zhǎng),如直流電機(jī)調(diào)速性能好,但帶有機(jī)械換向器,有機(jī)械磨損及換向火花等問(wèn)題;交流電機(jī),不論是異步電機(jī)還是同步電機(jī),結(jié)構(gòu)都比直流電機(jī)簡(jiǎn)單,工作也比直流電機(jī)可靠,但在頻率恒定的電網(wǎng)上運(yùn)行時(shí),它們的速度不能方便而經(jīng)濟(jì)地調(diào)節(jié)2。高性能的微處理器如DSP (DIGITAL SIGNAL PROCESSO
16、R即數(shù)字信號(hào)處理器)的出現(xiàn),為采用新的控制理論和控制策略提供了良好的物質(zhì)基礎(chǔ),使電機(jī)傳動(dòng)的自動(dòng)化程度大為提高。在先進(jìn)的數(shù)控機(jī)床等數(shù)控位置伺服系統(tǒng),已經(jīng)采用了如DSP等的高速微處理器,其執(zhí)行速度可達(dá)數(shù)百萬(wàn)兆以上每秒,且具有適合的矩陣運(yùn)算。二 整體設(shè)計(jì)89S52單片機(jī)為核心的直流電機(jī)控制系統(tǒng)控制簡(jiǎn)圖如圖1所示,由軟件轉(zhuǎn)換成PWM 信號(hào),并由P3.0、P3.1輸出,經(jīng)驅(qū)動(dòng)電路輸出給電機(jī),從而控制電機(jī)得電與失電。軟件采用定時(shí)中斷進(jìn)行設(shè)計(jì)。單片機(jī)上電后,系統(tǒng)進(jìn)入準(zhǔn)備狀態(tài)。當(dāng)按動(dòng)啟動(dòng)按鈕后,根據(jù)P3.0為高電平實(shí)現(xiàn)電機(jī)正轉(zhuǎn),P3.1為高電平時(shí)實(shí)現(xiàn)電機(jī)反轉(zhuǎn)。根據(jù)不同的加減速按鈕,調(diào)整P3.0/ P3.1輸出
17、高低電平時(shí)的預(yù)定值,從而可以控制P3.0/ P3.1輸出高低電平時(shí)的占空比,進(jìn)而控制電壓的大小。控制程序應(yīng)用于電機(jī)的加減速。在電動(dòng)機(jī)驅(qū)動(dòng)信號(hào)方面,我們采用了占空比可調(diào)的周期矩形信號(hào)控制。脈沖頻率對(duì)電動(dòng)機(jī)轉(zhuǎn)速有影響,脈沖頻率高連續(xù)性好,但帶帶負(fù)載能力差脈沖頻率低則反之。經(jīng)實(shí)驗(yàn)發(fā)現(xiàn),脈沖頻率在40Hz以上,電動(dòng)機(jī)轉(zhuǎn)動(dòng)平穩(wěn),但加負(fù)載后,速度下降明顯,低速時(shí)甚至?xí)^D(zhuǎn);脈沖頻率在10Hz以下,電動(dòng)機(jī)轉(zhuǎn)動(dòng)有明顯跳動(dòng)現(xiàn)象。實(shí)驗(yàn)證明,脈沖頻率在15Hz-30Hz時(shí)效果最佳。而具體采用的頻率可根據(jù)個(gè)別電動(dòng)機(jī)性能在此范圍內(nèi)調(diào)節(jié)。通過(guò) P3.0輸入高電平信號(hào)P3.1輸入低電平與P3.0輸入低電平P3.1輸入信號(hào)分
18、別實(shí)現(xiàn)電動(dòng)機(jī)的正轉(zhuǎn)與反轉(zhuǎn)功能。通過(guò)對(duì)信號(hào)占空比的調(diào)整來(lái)對(duì)直流電機(jī)進(jìn)行調(diào)節(jié)。AT89C52顯示模塊驅(qū)動(dòng)模塊電源模塊輸入 入模塊圖2 系統(tǒng)硬件框圖1 硬件電路設(shè)計(jì)由單片機(jī)硬件設(shè)計(jì)原理可知:(1)盡可能采用功能強(qiáng)的芯片,以簡(jiǎn)化電路;(2)留有余地。在設(shè)計(jì)硬件電路時(shí),要考慮到將來(lái)修改、擴(kuò)展的方便。2 單片機(jī)最小系統(tǒng)的設(shè)計(jì)單片機(jī)最小系統(tǒng):所謂最小系統(tǒng)就是指由單片機(jī)和一些基本的外圍電路所組成的一個(gè)可以工作的單片機(jī)系統(tǒng)。一般來(lái)說(shuō),它包括單片機(jī),晶振電路和復(fù)位電路。如圖3所示:三 單片機(jī)AT89S52AT89S52 8位單片機(jī)是MSC-51系列產(chǎn)品的升級(jí)版,有世界著名半導(dǎo)體公司ATMEL在購(gòu)買MSC-51設(shè)計(jì)
19、結(jié)構(gòu)后,利用自身優(yōu)勢(shì)技術(shù)(掉電不丟數(shù)據(jù))閃存生產(chǎn)技術(shù)對(duì)舊技術(shù)進(jìn)行改進(jìn)和擴(kuò)展,同時(shí)使用新的半導(dǎo)體生產(chǎn)工藝,最終得到成型產(chǎn)品。與此同時(shí),世界上其他的著名公司也通過(guò)基本的51內(nèi)核,結(jié)合公司自身技術(shù)進(jìn)行改進(jìn)生產(chǎn),推廣一批如51F020等高性能單片機(jī)。AT89S52片內(nèi)集成256字節(jié)程序運(yùn)行空間、8K字節(jié)Flash存儲(chǔ)空間,支持最大64K外部存儲(chǔ)擴(kuò)展。根據(jù)不同的運(yùn)行速度和功耗的要求,時(shí)鐘頻率可以設(shè)置在0-33M之間。片內(nèi)資源有4組I/O控制端口、3個(gè)定時(shí)器、8個(gè)中斷、軟件設(shè)置低能耗模式、看門狗和斷電保護(hù)。可以在4V到5.5V寬電壓范圍內(nèi)正常工作。不斷發(fā)展的半導(dǎo)體工藝也讓該單片機(jī)的功耗不斷降低。同時(shí),該單
20、片機(jī)支持計(jì)算機(jī)并口下載,簡(jiǎn)單的數(shù)字芯片就可以制成下載線,僅僅幾塊錢的價(jià)格讓該型號(hào)單片機(jī)暢銷10年不衰。根據(jù)不同場(chǎng)合的要求,這款單片機(jī)提供了多種封裝,本次設(shè)計(jì)根據(jù)最小系統(tǒng)有時(shí)需要更換單片機(jī)的具體情況,使用雙列直插DIP-40的封裝。 DIP-40封裝89S52引腳圖如圖4所示。1復(fù)位電路及時(shí)鐘電路復(fù)位電路和時(shí)鐘電路是維持單片機(jī)最小系統(tǒng)運(yùn)行的基本模塊。復(fù)位電路通常分為兩種:上電復(fù)位和手動(dòng)復(fù)位,如圖5,圖6所示。 圖5 上電復(fù)位 圖6 手動(dòng)復(fù)位有時(shí)系統(tǒng)在運(yùn)行過(guò)程中出現(xiàn)程序跑飛的情況,在程序開(kāi)發(fā)過(guò)程中,經(jīng)常需要手動(dòng)復(fù)位。所以本次設(shè)計(jì)選用手動(dòng)復(fù)位。高頻率的時(shí)鐘有利于程序更快的運(yùn)行,也有可以實(shí)現(xiàn)更高的信號(hào)
21、采樣率,從而實(shí)現(xiàn)更多的功能。但是告訴對(duì)系統(tǒng)要求較高,而且功耗大,運(yùn)行環(huán)境苛刻??紤]到單片機(jī)本身用在控制,并非高速信號(hào)采樣處理,所以選取合適的頻率即可。合適頻率的晶振對(duì)于選頻信號(hào)強(qiáng)度準(zhǔn)確度都有好處,本次設(shè)計(jì)選取12.000M無(wú)源晶振接入XTAL1和XTAL2引腳。并聯(lián)2個(gè)30pF陶瓷電容幫助起振。最小系統(tǒng)如圖7所示。2 AT89C51各個(gè)管腳說(shuō)明VCC:供電電壓。 -i.bm hxy0:m GND:接地。 )U GR&QR %BI;(w9 P0口:P0口為一個(gè)8位漏級(jí)開(kāi)路雙向I/O口,每腳可吸收8TTL門電流。當(dāng)P1口的管腳第一次寫1時(shí),被定義為高阻輸入。P0能夠用于外部程序數(shù)據(jù)存儲(chǔ)器,它可以被
22、定義為數(shù)據(jù)/地址的第八位。在FIASH編程時(shí),P0 口作為原碼輸入口,當(dāng)FIASH進(jìn)行校驗(yàn)時(shí),P0輸出原碼,此時(shí)P0外部必須被拉高。 xqdee :RD n&4xR3|z P1口:P1口是一個(gè)內(nèi)部提供上拉電阻的8位雙向I/O口,P1口緩沖器能接收輸出4TTL門電流。P1口管腳寫入1后,被內(nèi)部上拉為高,可用作輸入,P1口被外部下拉為低電平時(shí),將輸出電流,這是由于內(nèi)部上拉的緣故。在FLASH編程和校驗(yàn)時(shí),P1口作為第八位地址接收。 p?o0&Z L#-V6. P2口:P2口為一個(gè)內(nèi)部上拉電阻的8位雙向I/O口,P2口緩沖器可接收,輸出4個(gè)TTL門電流,當(dāng)P2口被寫“1”時(shí),其管腳被內(nèi)部上拉電阻拉高
23、,且作為輸入。并因此作為輸入時(shí),P2口的管腳被外部拉低,將輸出電流。這是由于內(nèi)部上拉的緣故。P2口當(dāng)用于外部程序存儲(chǔ)器或16位地址外部數(shù)據(jù)存儲(chǔ)器進(jìn)行存取時(shí),P2口輸出地址的高八位。在給出地址“1”時(shí),它利用內(nèi)部上拉優(yōu)勢(shì),當(dāng)對(duì)外部八位地址數(shù)據(jù)存儲(chǔ)器進(jìn)行讀寫時(shí),P2口輸出其特殊功能寄存器的內(nèi)容。P2口在FLASH編程和校驗(yàn)時(shí)接收高八位地址信號(hào)和控制信號(hào)。 &eF qLT: 2LzI2 Dn P3口:P3口管腳是8個(gè)帶內(nèi)部上拉電阻的雙向I/O口,可接收輸出4個(gè)TTL門電流。當(dāng)P3口寫入“1”后,它們被內(nèi)部上拉為高電平,并用作輸入。作為輸入,由于外部下拉為低電平,P3口將輸出電流(ILL)這是由于上拉
24、的緣故。 h v9PGg6 1qh*5s P3口也可作為AT89C51的一些特殊功能口,如下表所示: ,1-jf* CeNWlM=W口管腳 備選功能 v6w8=T- 6.T/Kj$DWa P3.0 RXD(串行輸入口) W8.oLh m38*s x P3.1 TXD(串行輸出口) EOBh0$!e -?MpHSho$ P3.2 /INT0(外部中斷0) #!Id %=P2 WE+Vs P3.3 /INT1(外部中斷1) ,9o4%I tI(39P3.4 T0(記時(shí)器0外部輸入) s_o)MyCVC )Z2p Pmx P3.5 T1(記時(shí)器1外部輸入) zN;u.8)h0 (;g!)P3.6 /
25、WR(外部數(shù)據(jù)存儲(chǔ)器寫選通) z= IkMktD l?uo/u P3.7 /RD(外部數(shù)據(jù)存儲(chǔ)器讀選通) gh;6t*a (ddtRfXUN P3口同時(shí)為閃爍編程和編程校驗(yàn)接收一些控制信號(hào)。 5V/y(4 /Uw% 4sI/O口作為輸入口時(shí)有兩種工作方式即所謂的讀端口與讀引腳讀端口時(shí)實(shí)際上并不從外部讀入數(shù)據(jù)而是把端口鎖存器的內(nèi)容讀入到內(nèi)部總線經(jīng)過(guò)某種運(yùn)算或變換后再寫回到端口鎖存器只有讀端口時(shí)才真正地把外部的數(shù)據(jù)讀入到內(nèi)部總線上面圖中的兩個(gè)三角形表示的就是輸入緩沖器CPU將根據(jù)不同的指令分別發(fā)出讀端口或讀引腳信號(hào)以完成不同的操作這是由硬件自動(dòng)完成的不需要我們操心 :Hs6?00 hw(M 讀引腳
26、時(shí)也就是把端口作為外部輸入線時(shí)首先要通過(guò)外部指令把端口鎖存器置1然后再實(shí)行讀引腳操作否則就可能讀入出錯(cuò)為什么看上面的圖如果不對(duì)端口置1端口鎖存器原來(lái)的狀態(tài)有可能為0Q端為0Q為1加到場(chǎng)效應(yīng)管柵極的信號(hào)為1該場(chǎng)效應(yīng)管就導(dǎo)通對(duì)地呈現(xiàn)低阻抗,此時(shí)即使引腳上輸入的信號(hào)為1也會(huì)因端口的低阻抗而使信號(hào)變低使得外加的1信號(hào)讀入后不一定是1若先執(zhí)行置1操作則可以使場(chǎng)效應(yīng)管截止引腳信號(hào)直接加到三態(tài)緩沖器中實(shí)現(xiàn)正確的讀入由于在輸入操作時(shí)還必須附加一個(gè)準(zhǔn)備動(dòng)作所以這類I/O口被稱為準(zhǔn)雙向口89C51的P0/P1/P2/P3口作為輸入時(shí)都是準(zhǔn)雙向口接下來(lái)讓我們?cè)倏戳硪粋€(gè)問(wèn)題從圖中可以看出這四個(gè)端口還有一個(gè)差別除了P1
27、口外P0P2P3口都還有其他的功能 w%o)Q+ !nt2(eRST:復(fù)位輸入。當(dāng)振蕩器復(fù)位器件時(shí),要保持RST腳兩個(gè)機(jī)器周期的高電平時(shí)間。 g|)DXz/ K?2yiDmc bNIX%r%7 /PSEN:外部程序存儲(chǔ)器的選通信號(hào)。在由外部程序存儲(chǔ)器取指期間,每個(gè)機(jī)器周期兩次/PSEN有效。但在訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次有效的/PSEN信號(hào)將不出現(xiàn)。 Jx e|w h3 M=Vrr D /EA/VPP:當(dāng)/EA保持低電平時(shí),則在此期間外部程序存儲(chǔ)器(0000H-FFFFH),不管是否有內(nèi)部程序存儲(chǔ)器。注意加密方式1時(shí),/EA將內(nèi)部鎖定為RESET;當(dāng)/EA端保持高電平時(shí),此間內(nèi)部程序存儲(chǔ)器。
28、在FLASH編程期間,此引腳也用于施加12V編程電源(VPP)。 2 pvyNYGV _Ko| IXTAL1:反向振蕩放大器的輸入及內(nèi)部時(shí)鐘工作電路的輸入。 :d#o0, 249V.XTAL2:來(lái)自反向振蕩器的輸出。3 振蕩器特性XTAL1和XTAL2分別為反向放大器的輸入和輸出。該反向放大器可以配置為片內(nèi)振蕩器。石晶振蕩和陶瓷振蕩均可采用。如采用外部時(shí)鐘源驅(qū)動(dòng)器件,XTAL2應(yīng)不接。有余輸入至內(nèi)部時(shí)鐘信號(hào)要通過(guò)一個(gè)二分頻觸發(fā)器,因此對(duì)外部時(shí)鐘信號(hào)的脈寬無(wú)任何要求,但必須保證脈沖的高低電平要求的寬度。4 芯片擦除整個(gè)PEROM陣列和三個(gè)鎖定位的電擦除可通過(guò)正確的控制信號(hào)組合,并保持ALE管腳處
29、于低電平10ms 來(lái)完成。在芯片擦操作中,代碼陣列全被寫“1”且在任何非空存儲(chǔ)字節(jié)被重復(fù)編程以前,該操作必須被執(zhí)行。 kZ4;Psp AIAL g 此外,AT89C51設(shè)有穩(wěn)態(tài)邏輯,可以在低到零頻率的條件下靜態(tài)邏輯,支持兩種軟件可選的掉電模式。在閑置模式下,CPU停止工作。但RAM,定時(shí)器,計(jì)數(shù)器,串口和中斷系統(tǒng)仍在工作。在掉電模式下,保存RAM的內(nèi)容并且凍結(jié)振蕩器,禁止所用其他芯片功能,直到下一個(gè)硬件復(fù)位為止。項(xiàng)目三 直流電機(jī)驅(qū)動(dòng)電路一 H橋由兩個(gè)三極管,一個(gè)可以對(duì)正極導(dǎo)通實(shí)現(xiàn)上拉,另一個(gè)可以對(duì)負(fù)極導(dǎo)通實(shí)現(xiàn)下拉。 由兩套這樣的電路,在同一個(gè)電路中,同時(shí)一個(gè)上拉,另一個(gè)下拉,或相反,兩者總是保
30、持相反的輸出,這樣可以在單電源的情況下使負(fù)載的極性倒過(guò)來(lái)。由于這樣的接法加上中間的負(fù)載畫(huà)出來(lái)經(jīng)常會(huì)像一個(gè)H的字樣,故得名H橋。二 H橋驅(qū)動(dòng)電路圖8中所示為一個(gè)典型的直流電機(jī)控制電路。電路得名于“H橋驅(qū)動(dòng)電路”是因?yàn)樗男螤羁崴谱帜窰。4個(gè)三極管組成H的4條垂直腿,而電機(jī)就是H中的橫杠(注意:圖8及隨后的兩個(gè)圖都只是示意圖,而不是完整的電路圖,其中三極管的驅(qū)動(dòng)電路沒(méi)有畫(huà)出來(lái))。 如圖所示,H橋式電機(jī)驅(qū)動(dòng)電路包括4個(gè)三極管和一個(gè)電機(jī)。要使電機(jī)運(yùn)轉(zhuǎn),必須導(dǎo)通對(duì)角線上的一對(duì)三極管。根據(jù)不同三極管對(duì)的導(dǎo)通情況,電流可能會(huì)從左至右或從右至左流過(guò)電機(jī),從而控制電機(jī)的轉(zhuǎn)向。圖8 H橋驅(qū)動(dòng)電路要使電機(jī)運(yùn)轉(zhuǎn),必須
31、使對(duì)角線上的一對(duì)三極管導(dǎo)通。例如,如圖9所示,當(dāng)Q1管和Q4管導(dǎo)通時(shí),電流就從電源正極經(jīng)Q1從左至右穿過(guò)電機(jī),然后再經(jīng)Q4回到電源負(fù)極。按圖中電流箭頭所示,該流向的電流將驅(qū)動(dòng)電機(jī)順時(shí)針轉(zhuǎn)動(dòng)。當(dāng)三極管Q1和Q4導(dǎo)通時(shí),電流將從左至右流過(guò)電機(jī),從而驅(qū)動(dòng)電機(jī)按特定方向轉(zhuǎn)動(dòng)(電機(jī)周圍的箭頭指示為順時(shí)針?lè)较颍?。圖9 H橋電路驅(qū)動(dòng)電機(jī)順時(shí)針轉(zhuǎn)動(dòng)圖10所示為另一對(duì)三極管Q2和Q3導(dǎo)通的情況,電流將從右至左流過(guò)電機(jī)。當(dāng)三極管Q2和Q3導(dǎo)通時(shí),電流將從右至左流過(guò)電機(jī),從而驅(qū)動(dòng)電機(jī)沿另一方向轉(zhuǎn)動(dòng)(電機(jī)周圍的箭頭表示為逆時(shí)針?lè)较颍D10 H橋驅(qū)動(dòng)電機(jī)逆時(shí)針轉(zhuǎn)動(dòng)三 使能控制和方向邏輯驅(qū)動(dòng)電機(jī)時(shí),保證H橋上兩個(gè)同側(cè)的
32、三極管不會(huì)同時(shí)導(dǎo)通非常重要。如果三極管Q1和Q2同時(shí)導(dǎo)通,那么電流就會(huì)從正極穿過(guò)兩個(gè)三極管直接回到負(fù)極。此時(shí),電路中除了三極管外沒(méi)有其他任何負(fù)載,因此電路上的電流就可能達(dá)到最大值(該電流僅受電源性能限制),甚至燒壞三極管?;谏鲜鲈颍趯?shí)際驅(qū)動(dòng)電路中通常要用硬件電路方便地控制三極管的開(kāi)關(guān)。 圖11 所示就是基于這種考慮的改進(jìn)電路,它在基本H橋電路的基礎(chǔ)上增加了4個(gè)與門和2個(gè)非門。4個(gè)與門同一個(gè)“使能”導(dǎo)通信號(hào)相接,這樣,用這一個(gè)信號(hào)就能控制整個(gè)電路的開(kāi)關(guān)。而2個(gè)非門通過(guò)提供一種方向輸人,可以保證任何時(shí)候在H橋的同側(cè)腿上都只有一個(gè)三極管能導(dǎo)通。(與本節(jié)前面的示意圖一樣,圖11所示也不是一個(gè)完整
33、的電路圖,特別是圖中與門和三極管直接連接是不能正常工作的。)圖11 具有使能控制和方向邏輯的H橋電路采用以上方法,電機(jī)的運(yùn)轉(zhuǎn)就只需要用三個(gè)信號(hào)控制:兩個(gè)方向信號(hào)和一個(gè)使能信號(hào)。如果DIRL信號(hào)為0,DIRR信號(hào)為1,并且使能信號(hào)是1,那么三極管Q1和Q4導(dǎo)通,電流從左至右流經(jīng)電機(jī)(如圖12所示);如果DIRL信號(hào)變?yōu)?,而DIRR信號(hào)變?yōu)?,那么Q2和Q3將導(dǎo)通,電流則反向流過(guò)電機(jī)。圖12 使能信號(hào)與方向信號(hào)的使用實(shí)際使用的時(shí)候,用分立元件制作H橋是很麻煩的,好在現(xiàn)在市面上有很多封裝好的H橋集成電路,接上電源、電機(jī)和控制信號(hào)就可以使用了,在額定的電壓和電流內(nèi)使用非常方便可靠。比如常用的L293
34、D、L298N、TA7257P、SN754410等。 附兩張分立元件的H橋驅(qū)動(dòng)電路:項(xiàng)目四 PWM脈寬調(diào)制原理一 PWM調(diào)速原理PWM(脈沖寬度調(diào)制)是通過(guò)控制固定電壓的直流電源開(kāi)關(guān)頻率,改變負(fù)載兩端的電壓,從而達(dá)到控制要求的一種電壓調(diào)整方法。PWM可以應(yīng)用在許多方面,比如:電機(jī)調(diào)速、溫度控制、壓力控制等等。在PWM驅(qū)動(dòng)控制的調(diào)整系統(tǒng)中,按一個(gè)固定的頻率來(lái)接通和斷開(kāi)電源,并且根據(jù)需要改變一個(gè)周期內(nèi)“接通”和“斷開(kāi)”時(shí)間的長(zhǎng)短。通過(guò)改變直流電機(jī)電樞上電壓的“占空比”來(lái)達(dá)到改變平均電壓大小的目的,從而來(lái)控制電動(dòng)機(jī)的轉(zhuǎn)速。也正因?yàn)槿绱?,PWM又被稱為“開(kāi)關(guān)驅(qū)動(dòng)裝置”,見(jiàn)圖13所示。圖13 PWM信號(hào)
35、的占空比設(shè)電機(jī)始終接通電源時(shí),電機(jī)轉(zhuǎn)速最大為Vmax,設(shè)占空比為D= t1 / T,則電機(jī)的平均速度為Va = Vmax * D,其中Va指的是電機(jī)的平均速度;Vmax 是指電機(jī)在全通電時(shí)的最大速度;D = t1 / T是指占空比。由上面的公式可見(jiàn),當(dāng)我們改變占空比D=t1/T時(shí),就可以得到不同的電機(jī)平均速度Va,從而達(dá)到調(diào)速的目的。嚴(yán)格來(lái)說(shuō),平均速度Va與占空比D并非嚴(yán)格的線性關(guān)系,但是在一般的應(yīng)用中,我們可以將其近似的看成是線性關(guān)系。二 PWM調(diào)速方法基于單片機(jī)類由軟件來(lái)實(shí)現(xiàn)PWM:在PWM調(diào)速系統(tǒng)中占空比D是一個(gè)重要參數(shù)在電源電壓Ud不變的情況下,電樞端電壓的平均值取決于占空比D的大小,
36、改變D的值可以改變電樞端電壓的平均值從而達(dá)到調(diào)速的目的。改變占空比D的值有三種方法:A、定寬調(diào)頻法:保持t1不變,只改變t2,這樣使周期(或頻率)也隨之改變。B、調(diào)寬調(diào)頻法:保持t2不變,只改變t1,這樣使周期(或頻率)也隨之改變。C、定頻調(diào)寬法:保持周期T(或頻率)不變,同時(shí)改變t1和t。前兩種方法在調(diào)速時(shí)改變了控制脈沖的周期(或頻率),當(dāng)控制脈沖的頻率與系統(tǒng)的固有頻率接近時(shí),將會(huì)引起振蕩,因此常采用定頻調(diào)寬法來(lái)改變占空比從而改變直流電動(dòng)機(jī)電樞兩端電壓。利用單片機(jī)的定時(shí)計(jì)數(shù)器外加軟件延時(shí)等方式來(lái)實(shí)現(xiàn)脈寬的自由調(diào)整,此種方式可簡(jiǎn)化硬件電路,操作性強(qiáng)等優(yōu)點(diǎn)。三 PWM實(shí)現(xiàn)方式方案一:采用定時(shí)器做
37、為脈寬控制的定時(shí)方式,這一方式產(chǎn)生的脈沖寬度極其精確,誤差只在幾個(gè)us。方案二:采用軟件延時(shí)方式,這一方式在精度上不及方案一,特別是在引入中斷后,將有一定的誤差。故采用方案一。四 顯示模塊在本設(shè)計(jì)課題中采用的是7段4位共陽(yáng)極LED數(shù)碼管,它的引腳圖如圖14所示。7段LED數(shù)碼管是利用7個(gè)LED(發(fā)光二極管)外加一個(gè)小數(shù)點(diǎn)的LED組合而成的顯示設(shè)備,7段數(shù)碼管分共陰和共陽(yáng)兩種顯示方式,本設(shè)計(jì)中采用共陽(yáng)極顯示器。共陽(yáng)極顯示器的發(fā)光二極管的陽(yáng)極連接在一起,當(dāng)公共陽(yáng)極接電源+5V時(shí),當(dāng)某個(gè)發(fā)光二極管的陰極接低電平時(shí),發(fā)光二極管被點(diǎn)亮,相應(yīng)的段被顯示。通常將控制發(fā)光二極管發(fā)光的8位字節(jié)數(shù)據(jù)編碼稱為L(zhǎng)ED
38、顯示的段選碼,要構(gòu)成多位LED顯示時(shí),除需要段選線外,還需要位選線,以確定段選碼對(duì)應(yīng)的顯示位,位選線控制第幾個(gè)LED顯示。段選線控制顯示字形。8個(gè)陰極分別與8個(gè)限流電阻相連,在接到相應(yīng)的電路中(發(fā)光二極管的工作電流選取在10-20ma,限流電阻太大,數(shù)碼管會(huì)太亮),其連接圖如圖15所示。圖15 7段共陽(yáng)極LED連接圖因?yàn)閱纹瑱C(jī)的輸出端口輸出的電流小,點(diǎn)亮數(shù)碼管的能力不大,所以需要采用三極管放大輸出電流,此次三極管采用的是C9013,具體放大電路如圖16所示。圖16 數(shù)碼管放大電路五 控制模塊正轉(zhuǎn)、反轉(zhuǎn)、急停、加速、減速五個(gè)開(kāi)關(guān)分別與單片機(jī)的P1.0,P1.1,P1.2,P1.3,P1.4相連,
39、然后再與地相連。急停實(shí)現(xiàn)直流電機(jī)的停轉(zhuǎn),正轉(zhuǎn)實(shí)現(xiàn)直流電機(jī)的正轉(zhuǎn),反轉(zhuǎn)實(shí)現(xiàn)直流電機(jī)的反轉(zhuǎn),加速實(shí)現(xiàn)直流電機(jī)的加速,減速實(shí)現(xiàn)直流電機(jī)的減速,其電路如圖17所示。圖17 按鍵電路項(xiàng)目五 C語(yǔ)言軟件編程在單片機(jī)系統(tǒng)的程序的設(shè)計(jì)開(kāi)發(fā)中,單片機(jī)就如同整個(gè)系統(tǒng)的交通中樞,而程序就是組成交通中樞的條條大道,各個(gè)部分的模塊化的程序就是整個(gè)系統(tǒng)的組成成份。軟件編寫的好壞,語(yǔ)句運(yùn)用的是否簡(jiǎn)潔直接關(guān)系單片機(jī)的工作效率。在各個(gè)模塊化的程序中盡量用最少的語(yǔ)句作最多的事情,不讓語(yǔ)句出現(xiàn)歧義,這樣就可以使整個(gè)程序可以在系統(tǒng)中更好的運(yùn)行,使單片機(jī)工作效率大大的提高。該課題的軟件設(shè)計(jì)采用了模塊化設(shè)計(jì)的思想即將程序劃分為若干個(gè)相對(duì)
40、獨(dú)立的功能模塊,畫(huà)出每一個(gè)功能模塊的詳細(xì)流程圖,并根據(jù)流程圖編寫程序,最后按照軟件設(shè)計(jì)的總體結(jié)構(gòu)框圖,將各模塊連接成一個(gè)完整的主程序。在主程序的設(shè)計(jì)中要合理地調(diào)用各模塊程序。模塊化設(shè)計(jì)的優(yōu)點(diǎn)是:無(wú)論是硬件還是軟件,每一個(gè)模塊都相對(duì)獨(dú)立,故能獨(dú)立地進(jìn)行設(shè)計(jì)、研制、調(diào)試和修改,從而使復(fù)雜的工作得以簡(jiǎn)化。模塊之間的相互獨(dú)立也有助于研制任務(wù)的分解和設(shè)計(jì)人員之間的分工合作,這樣可提高工作效率和儀表的研制速度。本利用P3口,編制程序輸出一串脈沖,經(jīng)放大后驅(qū)動(dòng)直流電機(jī),改變輸出脈沖的電平的持續(xù)時(shí)間,達(dá)到使電機(jī)正轉(zhuǎn)、反轉(zhuǎn)、加速、減速、停轉(zhuǎn)等目的10-11。由軟件編程從P3.0/P3.1管腳產(chǎn)生PWM 信號(hào),經(jīng)
41、驅(qū)動(dòng)電路輸出給電機(jī),從而控制電機(jī)得電與失電。軟件采用延時(shí)法進(jìn)行設(shè)計(jì)。單片機(jī)上電后,系統(tǒng)進(jìn)入準(zhǔn)備狀態(tài)。當(dāng)按動(dòng)啟動(dòng)按鈕后,根據(jù)P3.0為高電平時(shí)實(shí)現(xiàn)電機(jī)正轉(zhuǎn),P3.1為高電平時(shí)實(shí)現(xiàn)電機(jī)反轉(zhuǎn)。根據(jù)不同的加減速按鈕,調(diào)整P3.0/ P3.1輸出高低電平時(shí)的占空比,從而可以控制P3.0/ P3.1輸出高低電平時(shí)的有效值,進(jìn)而控制電機(jī)的加減速。項(xiàng)目六 系統(tǒng)調(diào)試與分析一 系統(tǒng)功能調(diào)試與仿真1 調(diào)試軟件介紹KeilC51軟件提供豐富的庫(kù)函數(shù)和功能強(qiáng)大的集成開(kāi)發(fā)調(diào)試工具,全Windows界面。另外重要的一點(diǎn),只要看一下編譯后生成的匯編代碼,就能體會(huì)到KeilC51生成的目標(biāo)代碼效率非常之高,多數(shù)語(yǔ)句生成的匯編代
42、碼很緊湊,容易理解。在開(kāi)發(fā)大型軟件時(shí)更能體現(xiàn)高級(jí)語(yǔ)言的優(yōu)勢(shì)。KEIL C51編譯器由uVision2集成開(kāi)發(fā)環(huán)境與編輯器和調(diào)試器以及C51編譯器組成。其中uVision2集成開(kāi)發(fā)環(huán)境中的工程(project)是由源文件、開(kāi)發(fā)工具選項(xiàng)以及編程說(shuō)明三部分組成的;編輯器和調(diào)試器包括源代碼編輯器、斷點(diǎn)設(shè)置、調(diào)試函數(shù)語(yǔ)言、變量和存儲(chǔ)器。Proteus軟件是一種低投資的電子設(shè)計(jì)自動(dòng)化軟件,提供可仿真數(shù)字和模擬、交流和直流等數(shù)千種元器件和多達(dá)30多個(gè)元件庫(kù)。Proteus軟件提供多種現(xiàn)實(shí)存在的虛擬儀器儀表。此外,Proteus還提供圖形顯示功能,可以將線路上變化的信號(hào),以圖形的方式實(shí)時(shí)地顯示出來(lái)。這些虛擬儀
43、器儀表具有理想的參數(shù)指標(biāo),例如極高的輸入阻抗、極低的輸出阻抗,盡可能減少儀器對(duì)測(cè)量結(jié)果的影響,Proteus軟件提供豐富的測(cè)試信號(hào)用于電路的測(cè)試。這些測(cè)試信號(hào)包括模擬信號(hào)和數(shù)字信號(hào)。提供Schematic Drawing、SPICE仿真與PCB設(shè)計(jì)功能,同時(shí)可以仿真單片機(jī)和周邊設(shè)備,可以仿真51系列、AVR、PIC等常用的MCU,并提供周邊設(shè)備的仿真,例如373、led、示波器等。Proteus提供了大量的元件庫(kù),有RAM、ROM、鍵盤、馬達(dá)、LED、LCD、AD/DA、部分SPI器件、部分IIC器件,編譯方面支持Keil和MPLAB等編譯器。一臺(tái)計(jì)算機(jī)、一套電子仿真軟件,在加上一本虛擬實(shí)驗(yàn)教
44、程,就可相當(dāng)于一個(gè)設(shè)備先進(jìn)的實(shí)驗(yàn)室。以虛代實(shí)、以軟代硬,就建立一個(gè)完善的虛擬實(shí)驗(yàn)室。在計(jì)算機(jī)上學(xué)習(xí)電工基礎(chǔ),模擬電路、數(shù)字電路、單片機(jī)應(yīng)用系統(tǒng)等課程,并進(jìn)行電路設(shè)計(jì)、仿真、調(diào)試等。當(dāng)電路設(shè)計(jì)完成之后,為了減少在電路板上調(diào)試時(shí)的難度,保證電路設(shè)計(jì)的正確性,將Keil c51編譯生成的*.HEX 文件載入Proteus軟件,實(shí)現(xiàn)電路仿真。2 系統(tǒng)調(diào)試在程序編寫的過(guò)程中,出現(xiàn)了很多問(wèn)題,包括PWM信號(hào)發(fā)生電路的控制、以及單片機(jī)控制直流電機(jī)的轉(zhuǎn)動(dòng)方向等問(wèn)題,雖然問(wèn)題不是很大,但是也讓我研究了好長(zhǎng)時(shí)間,在解決這些問(wèn)題的時(shí)候,我不斷向老師和同學(xué)請(qǐng)教,希望能通過(guò)大家一塊的努力把軟件編寫的更完整,讓系統(tǒng)的功能
45、更完備。經(jīng)過(guò)多天的努力探索,也經(jīng)過(guò)老師的指導(dǎo),大部分問(wèn)題都已經(jīng)解決,就是程序還是不能實(shí)現(xiàn)應(yīng)該實(shí)現(xiàn)的功能,這讓我很著急。后來(lái)經(jīng)過(guò)一點(diǎn)一點(diǎn)的調(diào)試,并認(rèn)真總結(jié),發(fā)現(xiàn)了問(wèn)題其實(shí)在編寫中斷處理程序時(shí)出現(xiàn)了錯(cuò)誤,修改后即可實(shí)現(xiàn)直流電機(jī)調(diào)速的目的。總結(jié)這次軟件調(diào)試,讓我認(rèn)識(shí)到了做軟件調(diào)試的基本方法與流程:(1)認(rèn)真檢查源代碼,看是否有文字或語(yǔ)法錯(cuò)誤(2)逐段子程序進(jìn)行設(shè)計(jì),找出錯(cuò)誤出現(xiàn)的部分,重點(diǎn)排查(3)找到合適的方法,仔細(xì)檢查程序,分步調(diào)試直到運(yùn)行成功3 仿真圖形初始狀態(tài),直流電機(jī)有如圖示18運(yùn)行效果圖18 電機(jī)半速運(yùn)轉(zhuǎn)按下急停鍵,直流電機(jī)有圖19的停止運(yùn)行結(jié)果。圖19 電機(jī)停轉(zhuǎn)按下加速鍵,直流電機(jī)有圖
46、20的正向加速運(yùn)行結(jié)果。圖20 電機(jī)正轉(zhuǎn)加速按下減速鍵,直流電機(jī)有圖21正向減速運(yùn)行結(jié)果。圖21 電機(jī)正轉(zhuǎn)減速按下反轉(zhuǎn)鍵,直流電機(jī)有圖22反向加速運(yùn)行結(jié)果。圖22 電機(jī)反轉(zhuǎn)加速結(jié)束語(yǔ)該課題的主要任務(wù)是設(shè)計(jì)一個(gè)以89C51單片機(jī)為核心的直流電機(jī)調(diào)速系統(tǒng)。通過(guò)聯(lián)調(diào),實(shí)驗(yàn)驗(yàn)證了系統(tǒng)的可行,能滿足設(shè)計(jì)要求,達(dá)到設(shè)計(jì)的指標(biāo),最后實(shí)現(xiàn)了對(duì)轉(zhuǎn)速的控制和LED顯示轉(zhuǎn)速。這個(gè)開(kāi)發(fā)過(guò)程主要包括了硬件電路仿真設(shè)計(jì)和軟件編程兩個(gè)部分。從確定課設(shè)題目,到查閱質(zhì)料確定總體方案設(shè)計(jì),硬件電路仿真的設(shè)計(jì),硬件電路的優(yōu)化,軟件的設(shè)計(jì),軟件的優(yōu)化,檢驗(yàn)仿真電路,調(diào)試軟件程序,到最后的軟硬件聯(lián)調(diào),其中的每一個(gè)過(guò)程都是精心設(shè)計(jì)、仔細(xì)
47、完成的。附錄 單片機(jī)控制程序/* 單片機(jī)控制直流電機(jī)* 李達(dá)* 2013.03.09* Keil uVision3 調(diào)試通過(guò)/*/#include #include #define uint unsigned int#define uchar unsigned char/*/uchar led_code10 = 0 xa0, 0 xf9, 0 xc4, 0 xd0, 0 x99, 0 x92, 0 x82, 0 xf8, 0 x80, 0 x90;/段碼 0,1,2,3,4,5, 6, 7, 8, 9uchar led_bit4 = 1, 2, 4, 8; /位碼uchar led_buf4;
48、 /顯示緩存uchar key_buf4;int num =50; /顯示數(shù)據(jù)int n = 0; / 當(dāng)前顯示位int i = 4; /位消隱參數(shù)int m = 0; /按鍵次數(shù)uchar key_code;sbit MOTOR0=P30;sbit MOTOR1=P31;int MOTORPORT0=0;uint MOTORPORT1;int MOTORDIR=0;int MOTORSTOP=0;int counter=0;sbit p10=P10;sbit p11=P11;sbit p12=P12;sbit p13=P13;/* *名 稱:delayms *說(shuō) 明:延時(shí)子程序 *功 能:產(chǎn)
49、生一定時(shí)間的延時(shí) *輸 入:ms 延時(shí)時(shí)間1ms的倍數(shù) *返回值:無(wú) */void delayms(uint ms) uint a, b; for (a = 0; a ms; a+) for (b = 0; b = 1000) /數(shù)據(jù)在于等于10000 i = 4; /顯示4位 else if (num = 100) / 數(shù)所小于1000大于100 i = 3; /顯示3位 else if (num = 10) /數(shù)據(jù)小于100大于10 i = 2; /顯示兩位 else if (num 10) /數(shù)據(jù)小10 i = 1; /顯示1位 /*顯示輸出*/ numToBuf(); P2 = led
50、_bitn; /調(diào)用位碼 P0 = led_bufn; /調(diào)用段碼 n+; /移位 n = n % i;/* *名 稱:int_1 *說(shuō) 明:定時(shí)器1中斷服務(wù)程序 *功 能:鍵盤掃描 *輸 入:無(wú) *返回值:無(wú) */void int_1(void)interrupt 3 TH1 = 0 xfe; TL1 = 0 x0c; /定時(shí)器0賦初值 if(counter=num) MOTORPORT1=1;else if(counternum) MOTORPORT1=0; counter+;counter=counter%100;/* *名稱:Key_Scan *說(shuō)明: *功能:鍵盤掃描 *輸入: *返
51、回值:按鍵對(duì)應(yīng)值(015);無(wú)鍵按下返回0 x7f */unsigned char Key_Scan(void) / unsigned char i, n; unsigned char key_temp; P1 = 0 xf0; if (P1 &0 xf0) != 0 xf0) if (P1 &0 xf0) != 0 xf0) delayms(100); for (i = 0; i 4; i+) P1 = (1 i); n = P1; n &= 0 xf0; if (n != 0 xf0) switch (n) case (0 xe0): key_temp = i * 4; break; ca
52、se (0 xd0): key_temp = 1+i * 4; break; case (0 xb0): key_temp = 2+i * 4; break; case (0 x70): key_temp = 3+i * 4; break; default: key_temp = 0 x7f; return key_temp; return 0 x7f; /如果未按任何鍵/* *名 稱:key_dectde *說(shuō) 明: *功 能:按鍵釋放檢測(cè) *輸 入: *返回值: */unsigned char key_dectde(void) unsigned char temp1, temp2; tem
53、p1 = Key_Scan(); if (temp1 = 0 x7f) return 0 x7f; do temp2 = Key_Scan(); while (temp1 = temp2); return temp1;/*主程序*/void main() /* 初始化*/ TMOD = 0 x11; TH0 = 0 xD8; /定時(shí)器T0為方式1 TL0 = 0 xf0; /定時(shí)器0的時(shí)間常數(shù)(10ms,12MHZ) TR0 = 1; /啟動(dòng)定時(shí)器0 TH1 = 0 xff; /定時(shí)器T0為方式1 TL1 = 0 x9c;/啟動(dòng)定時(shí)器0 TR1=1; IE = 0 x8a; /允許定時(shí)器0/1中斷 /* 鍵盤程序*/ while (1) /循環(huán) if(p10=0) delayms(100); if(p10=0) num+
- 溫馨提示:
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. 裝配圖網(wǎng)僅提供信息存儲(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 植樹(shù)問(wèn)題講課
- 小小圖書(shū)館賈世喜
- 小班數(shù)學(xué):變得一樣多
- 蘇教版三年級(jí)數(shù)學(xué)上冊(cè)教學(xué)ppt課件58:解決問(wèn)題的策略復(fù)習(xí)
- 小學(xué)科學(xué)六下《拓展與應(yīng)用》-公開(kāi)課一等獎(jiǎng)ppt課件
- 高中英語(yǔ)人教版選修七Unit-2-Robots-ppt課件
- 第九章長(zhǎng)期負(fù)債課件
- 皮膚免疫系統(tǒng)課件
- 辦公樓施工現(xiàn)場(chǎng)消防安全管理要求規(guī)范課件
- freeroi在功能磁共振roi分析中的應(yīng)用
- 《永遇樂(lè)·京口北固亭懷古》用典講解課件
- 《秋天的雨》微課課件
- 護(hù)患溝通技巧-課件
- 《高等數(shù)學(xué)B》第十章___微分方程與差分方程__第6節(jié)__差分與差分方程的概念_、……課件
- 英語(yǔ)(人教版)九年級(jí)總復(fù)習(xí)題型訓(xùn)練補(bǔ)全對(duì)話(含最新原創(chuàng)題)課件