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

下載本文檔

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

文檔簡(jiǎn)介

1、<p><b>  摘 要</b></p><p>  步進(jìn)電機(jī)是一種進(jìn)行精確步進(jìn)運(yùn)動(dòng)的機(jī)電執(zhí)行元件,它廣泛地用于工業(yè)機(jī)械的數(shù)字控制。為使系統(tǒng)的可靠性,通用性,可維護(hù)性以及性價(jià)比最優(yōu),根據(jù)控制系統(tǒng)功能要求及步進(jìn)電動(dòng)機(jī)應(yīng)用環(huán)境,確定了設(shè)計(jì)系統(tǒng)硬件和軟件的功能劃分,從而實(shí)現(xiàn)了基于8051單片機(jī)的四相步進(jìn)電動(dòng)機(jī)的開環(huán)控制系統(tǒng)??刂葡到y(tǒng)通過(guò)單片機(jī)存儲(chǔ)器、I/O口、中斷、鍵盤、LED顯示器的

2、擴(kuò)展,步進(jìn)電動(dòng)機(jī)的環(huán)形分配器、驅(qū)動(dòng)及保護(hù)電路、人機(jī)接口電路、中斷系統(tǒng)及復(fù)位電路、單電壓驅(qū)動(dòng)電路等的設(shè)計(jì)。實(shí)現(xiàn)了四相步進(jìn)電動(dòng)機(jī)的正反轉(zhuǎn)、急停等功能。為實(shí)現(xiàn)單片機(jī)控制步進(jìn)電動(dòng)機(jī)系統(tǒng)在數(shù)控機(jī)床上的特殊應(yīng)用,系統(tǒng)設(shè)計(jì)了兩個(gè)外部中斷,以實(shí)現(xiàn)步進(jìn)電動(dòng)機(jī)在某段時(shí)間內(nèi)的反復(fù)正反轉(zhuǎn)功能,也即數(shù)控機(jī)床的刀架自動(dòng)進(jìn)給運(yùn)動(dòng)。</p><p>  關(guān)鍵詞:8051單片機(jī),四相步進(jìn)電動(dòng)機(jī),控制</p><p><

3、;b>  ABSTRACT</b></p><p>  The stepping motor is a precision electromechanical incremental actuator.It widely uses the digital approach for control of industrial machines.For dependable,in genera

4、l use that make system,can support sex an sex price ratio superior,divide the line according to control system funcion request and a function for entering electric motor applying environment,making sure designing system

5、hardware with softwares, from but realizes to base on single chip microcomputer 8051 of four mutually the ste</p><p>  KEYWORD:single chip microcomputer 8051;four-phase stepper motor ;control</p><

6、p><b>  目 錄</b></p><p><b>  摘要</b></p><p><b>  Abstract</b></p><p>  引言…………………………………………………………1</p><p>  1.1 課題的來(lái)源與意義…………………………………

7、………………1</p><p>  1.1.1 課題的意義……………………………………………………2</p><p>  第二章 步進(jìn)電動(dòng)機(jī)原理及其控制技術(shù)……………………………5</p><p>  2.1 步進(jìn)電動(dòng)機(jī)的原理…………………………………………………5</p><p>  2.2 步進(jìn)電動(dòng)機(jī)的速度及其加減速控制……………………

8、……………6</p><p>  2.2.1 步進(jìn)電動(dòng)機(jī)的速度控制…………………………………………6</p><p>  2.2.2 步進(jìn)電動(dòng)機(jī)的加、減速控制…………………………………… 6</p><p>  2.3 步進(jìn)電動(dòng)機(jī)的驅(qū)動(dòng)系統(tǒng)…………………………………………… 7</p><p>  第三章 系統(tǒng)總體設(shè)計(jì)簡(jiǎn)介……………………

9、…………………… 8</p><p>  3.1 系統(tǒng)功能………………………………………………………… 8</p><p>  3.2 系統(tǒng)組成及其器件選擇…………………………………………… 9</p><p>  3.2.1 系統(tǒng)組成……………………………………………………… 9</p><p>  3.2.2 器件選擇……………………

10、………………………………… 9</p><p>  3.3 系統(tǒng)的可靠性及抗干擾設(shè)計(jì)……………………………………… 10</p><p>  3.3.1 軟件的可靠性設(shè)計(jì)………………………………………………10</p><p>  3.3.2 硬件抗干擾措施……………………………………………… 10</p><p>  3.3.3 軟件

11、抗干擾措施……………………………………………… 11</p><p>  第四章 硬件的設(shè)計(jì)…………………………………………………12</p><p>  4.1 單片機(jī)控制步進(jìn)機(jī)系統(tǒng)原理圖及說(shuō)明………………………………12</p><p>  4.1.1 系統(tǒng)模塊之一—四相混合式步進(jìn)電動(dòng)機(jī)環(huán)形分配器……………12</p><p>  4.

12、1.2 系統(tǒng)模塊之二—四相步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)及保護(hù)電路………………14</p><p>  4.1.3 系統(tǒng)模塊之三—人機(jī)接口電路…………………………………14</p><p>  4.1.4 系統(tǒng)模塊之四—中斷系統(tǒng)及復(fù)位電路………………………… 14</p><p>  4.1.5 系統(tǒng)模塊之五—各檔直流電源…………………………………15</p>

13、<p>  4.2 單片機(jī)原理……………………………………………………… 16</p><p>  4.2.1 MCS—51單片機(jī)……………………………………………… 16</p><p>  4.2.2 MCS—51單片機(jī)引腳功能……………………………………… 17</p><p>  4.2.3 MCS—51單片機(jī)的存儲(chǔ)器結(jié)構(gòu)………………………

14、………… 20</p><p>  4.2.4 并行輸入及輸出端口結(jié)構(gòu)………………………………………21</p><p>  4.3 單片機(jī)的片外總線結(jié)構(gòu)…………………………………………… 25</p><p>  4.3.1 單片機(jī)的片外總線結(jié)構(gòu)…………………………………………25</p><p>  4.4 系統(tǒng)外設(shè)接口…………………

15、……………………………………27</p><p>  4.4.1 鍵盤接口原理………………………………………………… 27</p><p>  4.4.2 鍵盤的控制要求……………………………………………… 29</p><p>  4.5 譯碼器及地址鎖存器………………………………………………30</p><p>  4.5.1 3—

16、8譯碼器:74LS138………………………………………… 30</p><p>  4.5.2 地址鎖存器:74LS373………………………………………… 30</p><p>  第五章 軟件的設(shè)計(jì)………………………………………………… 32</p><p>  5.1 軟件設(shè)計(jì)流程圖……………………………………………………32</p><p

17、>  5.2 設(shè)計(jì)相關(guān)程序…………………………………………………… 34</p><p>  結(jié)論………………………………………………………………… 44</p><p>  參考文獻(xiàn)……………………………………………………………45</p><p>  致謝…………………………………………………………………47</p><p> 

18、 附錄…………………………………………………………………48</p><p><b>  第一章 引言</b></p><p>  1.1 課題的來(lái)源與意義</p><p>  早在十九世紀(jì)三十年代就出現(xiàn)了步進(jìn)電動(dòng)機(jī),那時(shí)候的步進(jìn)電動(dòng)機(jī)實(shí)際上是一種可以自由回轉(zhuǎn)的電磁鐵,工作原理同今天的反應(yīng)式步進(jìn)電動(dòng)機(jī)沒(méi)有什么區(qū)別。到上世紀(jì)初,由于戰(zhàn)爭(zhēng)的需要,造

19、船工業(yè)發(fā)展迅猛。在上世紀(jì)二十年代到三十年代間,一些雜志先后刊登了一些步進(jìn)電動(dòng)機(jī)在航海技術(shù)方面應(yīng)用的文章,介紹了步進(jìn)電動(dòng)機(jī)的設(shè)計(jì)和計(jì)算方法。直到上世紀(jì)三十年代初這些理論才被真正用于指導(dǎo)步進(jìn)電動(dòng)機(jī)的設(shè)計(jì)與生產(chǎn)。但由于其性能不能滿足速度不斷提高的艦船的要求,使得這項(xiàng)技術(shù)徘徊了數(shù)十年之久,一度幾乎被廢棄。后來(lái),由于無(wú)觸點(diǎn)式電子開關(guān)元器件的出現(xiàn),解決了步進(jìn)電動(dòng)機(jī)勵(lì)磁繞組快速換向的問(wèn)題。所以,在上世紀(jì)中期,步進(jìn)電動(dòng)機(jī)又重新崛起。</p>

20、<p>  1952年,美國(guó)麻省理工學(xué)院首先研制成三坐標(biāo)數(shù)控銑床。數(shù)控機(jī)床的出現(xiàn)提高了生產(chǎn)效率,推動(dòng)了機(jī)械制造業(yè)的發(fā)展,對(duì)于采用哪種類型的電機(jī)作為進(jìn)給機(jī)構(gòu)的驅(qū)動(dòng)元件一直是爭(zhēng)論的焦點(diǎn),經(jīng)過(guò)理論分析和現(xiàn)場(chǎng)試驗(yàn),發(fā)現(xiàn)使用步進(jìn)電動(dòng)機(jī)作為進(jìn)給機(jī)構(gòu)的驅(qū)動(dòng)元件是較理想的選擇,這一應(yīng)用使得步進(jìn)電動(dòng)機(jī)的使用范圍更加廣泛。</p><p>  1.1.1 課題的意義</p><p>  我國(guó)對(duì)

21、步進(jìn)電動(dòng)機(jī)的研制及應(yīng)用起步不算太晚,早在1958年,我國(guó)的一些科研院所就研制成功了反應(yīng)式步進(jìn)電動(dòng)機(jī),并開始應(yīng)用到數(shù)控機(jī)床中。進(jìn)入上世紀(jì)六十年代中期,結(jié)構(gòu)新穎的步進(jìn)電動(dòng)機(jī)相繼問(wèn)世,為了降低電機(jī)功耗以及提高效率,人們發(fā)明了永磁式和混合式步進(jìn)電動(dòng)機(jī)。到上世紀(jì)七十年代,步進(jìn)電動(dòng)機(jī)的生產(chǎn)進(jìn)入了全盛時(shí)期,其產(chǎn)量每年都已11%的指數(shù)遞增。到目前為止,步進(jìn)電動(dòng)機(jī)已被廣泛應(yīng)用于數(shù)控機(jī)床、自動(dòng)生產(chǎn)線、自動(dòng)化儀表、計(jì)算機(jī)外圍設(shè)備、繪圖儀、電子手表等多方面。&

22、lt;/p><p>  步進(jìn)電動(dòng)機(jī)已成為除直流電動(dòng)機(jī)和交流電動(dòng)機(jī)以外的第三類電動(dòng)機(jī)。傳統(tǒng)電動(dòng)機(jī)作為機(jī)電能量轉(zhuǎn)換裝置,在人類的生產(chǎn)和生活進(jìn)入電氣化過(guò)程中起著關(guān)鍵的作用??墒窃谌祟惿鐣?huì)進(jìn)入自動(dòng)化時(shí)代的今天,傳統(tǒng)電動(dòng)機(jī)的功能已不能滿足工廠自動(dòng)化和辦公自動(dòng)化等各種運(yùn)動(dòng)控制系統(tǒng)的要求。為適應(yīng)這些要求,發(fā)展了一系列新的具備控制功能的電動(dòng)機(jī)系統(tǒng),其中較有自己特點(diǎn),且應(yīng)用十分廣泛的一類便是步進(jìn)電動(dòng)機(jī)。</p><

23、p>  步進(jìn)電動(dòng)機(jī)的發(fā)展與計(jì)算機(jī)工業(yè)密切相關(guān)。自從步進(jìn)電動(dòng)機(jī)在計(jì)算機(jī)外圍設(shè)備中取代小型直流電動(dòng)機(jī)以后,使其設(shè)備的性能提高,很快地促進(jìn)了步進(jìn)電動(dòng)機(jī)的發(fā)展。另一方面,微型計(jì)算機(jī)和數(shù)字控制技術(shù)的發(fā)展,又將作為數(shù)控系統(tǒng)執(zhí)行部件的步進(jìn)電動(dòng)機(jī)推廣應(yīng)用到其他領(lǐng)域,如電加工機(jī)床、小功率機(jī)械加工機(jī)床、測(cè)量?jī)x器、光學(xué)和醫(yī)療儀器以及包裝機(jī)械等。</p><p>  任何一種產(chǎn)品成熟的過(guò)程,基本上都是規(guī)格品種逐步統(tǒng)一和簡(jiǎn)化的過(guò)程。

24、現(xiàn)在,步進(jìn)電動(dòng)機(jī)的發(fā)展已歸結(jié)為單段式結(jié)構(gòu)的磁阻式、混合式和爪極結(jié)構(gòu)的永磁式三類。爪極電機(jī)價(jià)格便宜,性能指標(biāo)不高,混合式和磁阻式主要作為高分辨率電動(dòng)機(jī),由于混合式步進(jìn)電動(dòng)機(jī)具有控制功率小,運(yùn)行平穩(wěn)性較好而逐步處于主導(dǎo)地位。</p><p>  由于步進(jìn)電動(dòng)機(jī)的轉(zhuǎn)速隨著輸入脈沖頻率變化而變化,調(diào)速范圍很廣,靈敏度高,輸出轉(zhuǎn)角能夠控制,而且輸出精度較高,又能實(shí)現(xiàn)同步控制,所以廣泛地使用在開環(huán)系統(tǒng)中,也還可用在一般通用機(jī)

25、床上,提高進(jìn)給機(jī)構(gòu)的自動(dòng)化水平。</p><p>  步進(jìn)電動(dòng)機(jī)是機(jī)電一體化產(chǎn)品中的關(guān)鍵組件之一,是一種性能良好的數(shù)字化執(zhí)行元件。它有輸入脈沖與電機(jī)軸轉(zhuǎn)角成比例的特征。它將電脈沖信號(hào)轉(zhuǎn)變成角位移,即給一個(gè)脈沖信號(hào),步進(jìn)電動(dòng)機(jī)就轉(zhuǎn)動(dòng)一個(gè)角度,因此非常適合于單片機(jī)控制。</p><p>  單片機(jī)在一個(gè)集成芯片中,集成有微處理器(CPU)、存儲(chǔ)器(RAM和ROM)、基本的I/O接口以及定時(shí)/計(jì)

26、數(shù)部件,即在一個(gè)芯片上實(shí)現(xiàn)一臺(tái)微型計(jì)算機(jī)的基本功能。</p><p>  步進(jìn)電動(dòng)機(jī)的控制部分以單片機(jī)為主的微處理器控制。其特點(diǎn)如下:1.靈活性和適應(yīng)性。微處理器的控制方式是由軟件完成的。如果須要修改控制規(guī)律,一般不必改變系統(tǒng)的硬件電路、只須修改程序即可。在系統(tǒng)調(diào)試和升級(jí)時(shí),可以不斷嘗試選擇最優(yōu)參數(shù),非常方便。2.可以實(shí)現(xiàn)較復(fù)雜的控制,控制精度高。微處理器有更強(qiáng)的邏輯功能、運(yùn)算速度快、精度高、有大容量的存儲(chǔ)單元,

27、因此有能力實(shí)現(xiàn)復(fù)雜的控制,如優(yōu)化控制等。并且不論被控量的大或小,都可以保證足夠的控制精度。3.可提供人機(jī)界面。在電動(dòng)機(jī)的控制中,要用到鍵盤和顯示器作為人機(jī)界面,實(shí)現(xiàn)步進(jìn)電動(dòng)機(jī)的控制。由于單片機(jī)體積小,重量輕,抗干擾能力強(qiáng),對(duì)環(huán)境要求不高,價(jià)格低廉,指令功能強(qiáng),運(yùn)行速度快,可靠性高及靈活性好,開發(fā)也較為容易,所以國(guó)內(nèi)近些年來(lái)已將其廣泛應(yīng)用于工業(yè)測(cè)控、機(jī)電設(shè)備、儀器儀表、軍事設(shè)置、家用電器等方面的自動(dòng)化、智能化[1]。</p>

28、<p>  到現(xiàn)在為止,混合式步進(jìn)電機(jī)己經(jīng)成為了辦公自動(dòng)化和工業(yè)自動(dòng)化應(yīng)用場(chǎng)合的主流之一,迅速發(fā)展形成規(guī)模生產(chǎn),同時(shí),它的性能指標(biāo)不斷提高,逐漸取代了變磁阻型以及永磁式步進(jìn)電動(dòng)機(jī)。</p><p>  第二章 步進(jìn)電動(dòng)機(jī)原理及其控制技術(shù)</p><p>  2.1 步進(jìn)電動(dòng)機(jī)的原理</p><p>  步進(jìn)電機(jī)是數(shù)字控制電機(jī),它將脈沖信號(hào)轉(zhuǎn)變成角位移,即

29、給一個(gè)脈沖信號(hào),步進(jìn)電機(jī)就轉(zhuǎn)動(dòng)一個(gè)角度,因此非常適合于單片機(jī)控制。步進(jìn)電機(jī)可分為反應(yīng)式步進(jìn)電機(jī)(簡(jiǎn)稱VR)、永磁式步進(jìn)電機(jī)(簡(jiǎn)稱PM)和混合式步進(jìn)電機(jī)(簡(jiǎn)稱HB)。 步進(jìn)電機(jī)區(qū)別于其他控制電機(jī)的最大特點(diǎn)是,它是通過(guò)輸入脈沖信號(hào)來(lái)進(jìn)行控制的,即電機(jī)的總轉(zhuǎn)動(dòng)角度由輸入脈沖數(shù)決定,而電機(jī)的轉(zhuǎn)速由脈沖信號(hào)頻率決定。步進(jìn)電機(jī)的驅(qū)動(dòng)電路根據(jù)控制信號(hào)工作,控制信號(hào)由單片機(jī)產(chǎn)生。其基本原理作用如下: </p><p><b

30、>  1.控制換相順序 </b></p><p>  通電換相這一過(guò)程稱為脈沖分配。例如:三相步進(jìn)電機(jī)的三拍工作方式,其各相通電順序?yàn)锳—B—C—D,通電控制脈沖必須嚴(yán)格按照這一順序分別控制A、B、C、D相的通斷。 </p><p>  2.控制步進(jìn)電機(jī)的轉(zhuǎn)向 </p><p>  如果給定工作方式正序換相通電,步進(jìn)電機(jī)正轉(zhuǎn),如果按反序通電換相,則

31、電機(jī)就反轉(zhuǎn)。 </p><p>  3.控制步進(jìn)電機(jī)的速度 </p><p>  如果給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步。兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。調(diào)整單片機(jī)發(fā)出的脈沖頻率,就可以對(duì)步進(jìn)電機(jī)進(jìn)行調(diào)速。2.2 步進(jìn)電動(dòng)機(jī)的特性</p><p>  2.2 步進(jìn)電動(dòng)機(jī)的速度及其加減速控制</p><p>

32、;  2.2.1 步進(jìn)電動(dòng)機(jī)的速度控制</p><p>  步進(jìn)電動(dòng)機(jī)的速度控制通過(guò)控制單片機(jī)發(fā)出的步進(jìn)脈沖頻率來(lái)實(shí)現(xiàn)。對(duì)于單片機(jī)的并行控制的軟脈沖分配方式,可以采用調(diào)整兩個(gè)控制字之間的時(shí)間間隔來(lái)實(shí)現(xiàn)調(diào)速。對(duì)于自己搭建(環(huán)形分配器)的脈沖分配方式,可以控制步進(jìn)脈沖的頻率來(lái)實(shí)現(xiàn)調(diào)速。</p><p>  2.2.2 步進(jìn)電動(dòng)機(jī)的加、減速控制</p><p>  步

33、進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)執(zhí)行機(jī)構(gòu)從A點(diǎn)到B點(diǎn)移動(dòng)時(shí),要經(jīng)歷升速、恒速和減速過(guò)程。如果啟動(dòng)時(shí)一次將速度升到給定速度,由于啟動(dòng)頻率超過(guò)極限啟動(dòng)頻率輸入,步進(jìn)電動(dòng)機(jī)要發(fā)生失步現(xiàn)象,因此會(huì)造成不能正常啟動(dòng)。如果到終點(diǎn)時(shí)突然停下來(lái),由于慣性作用,步進(jìn)電動(dòng)機(jī)會(huì)發(fā)生過(guò)沖現(xiàn)象,會(huì)造成位置稍微減低。如果非常緩慢的升降速,步進(jìn)電動(dòng)機(jī)自然不會(huì)產(chǎn)生失步和過(guò)沖現(xiàn)象,但影響了執(zhí)行機(jī)構(gòu)的工作效率。所以,對(duì)步進(jìn)電動(dòng)機(jī)的加減速要有嚴(yán)格的要求。那就是保證在不失步和過(guò)沖的前提下,用最快

34、的速度移動(dòng)到指定位置。</p><p>  圖2-1 步進(jìn)電機(jī)加、減速曲線</p><p>  為了滿足加、減速要求,步進(jìn)電動(dòng)機(jī)運(yùn)行通常按照加、減速曲線進(jìn)行。圖2-1是加、減速運(yùn)行,通常按照加、減速運(yùn)行曲線沒(méi)有一個(gè)固定的模式,根據(jù)經(jīng)驗(yàn)和試驗(yàn)得到的。</p><p>  最簡(jiǎn)單的是勻加速和勻減速曲線,如圖2-1所示。其加減速曲線都是直線,因此容易編程實(shí)現(xiàn)。按直線加速時(shí)

35、,加速度是不變的,因此要求轉(zhuǎn)矩也應(yīng)該是不變的。但是,由于步進(jìn)電動(dòng)機(jī)的電磁轉(zhuǎn)矩與轉(zhuǎn)速是非線性關(guān)系。因此實(shí)際上當(dāng)轉(zhuǎn)速增加時(shí),轉(zhuǎn)矩下降。所以,按直線加速時(shí),有可能造成因轉(zhuǎn)矩不足而產(chǎn)生失步現(xiàn)象。</p><p>  采用指數(shù)加減速曲線或S型加減速曲線是最好的選擇,如圖所示。因?yàn)殡妱?dòng)機(jī)的電磁轉(zhuǎn)矩的關(guān)系接近指數(shù)規(guī)律。</p><p>  如果采用非線性加、減速曲線,要用離散法將加、減速曲線離散化。將離

36、散所得的轉(zhuǎn)速序列所對(duì)應(yīng)的定時(shí)常數(shù)序列,做成表格存儲(chǔ)在程序存儲(chǔ)器中。在程序運(yùn)行中,使用查表的方式重裝定時(shí)常數(shù),這樣做比用計(jì)數(shù)法節(jié)省時(shí)間,提高系統(tǒng)的響應(yīng)速度。</p><p>  2.3 步進(jìn)電動(dòng)機(jī)的驅(qū)動(dòng)系統(tǒng)</p><p>  步進(jìn)電動(dòng)機(jī)使用脈沖電源工作。三極管T是按照控制脈沖的規(guī)律“開”和“關(guān)”。使直流電源以脈沖方式向繞組L供電。這一過(guò)程我們稱它為步進(jìn)電動(dòng)機(jī)的驅(qū)動(dòng)。步進(jìn)電動(dòng)機(jī)的驅(qū)動(dòng)方式有多

37、種,如單電壓驅(qū)動(dòng),雙電壓驅(qū)動(dòng),斬波驅(qū)動(dòng)等,因本設(shè)計(jì)選用步進(jìn)電動(dòng)機(jī)的功率不是很高,所以控制系統(tǒng)為單電壓驅(qū)動(dòng)步進(jìn)電動(dòng)機(jī)。具體原理將在后面原理圖說(shuō)明中給出。</p><p>  第三章 系統(tǒng)總體設(shè)計(jì)簡(jiǎn)介</p><p>  在進(jìn)行系統(tǒng)設(shè)計(jì)之前,首先應(yīng)根據(jù)對(duì)系統(tǒng)的功能要求及其應(yīng)用環(huán)境等確定合理的、具體的功能和技術(shù)指標(biāo),對(duì)應(yīng)用系統(tǒng)的可靠性、通用性、先進(jìn)性、可維護(hù)性以及成本等進(jìn)行綜合考慮,以盡量合理并

38、符合相應(yīng)的標(biāo)準(zhǔn)。然后根據(jù)市場(chǎng)上步進(jìn)電機(jī)規(guī)格選擇相應(yīng)合理的單片機(jī)機(jī)型。接下來(lái)要根據(jù)單片機(jī)系統(tǒng)中可能涉及到的I/O接口、存儲(chǔ)器、顯示器等器件和設(shè)備進(jìn)行選擇,使之符合系統(tǒng)在精度、速度和可靠性等方面的要求。最后確定硬件和軟件的功能劃分。由于在系統(tǒng)設(shè)計(jì)中某些功能用硬件和軟件都能實(shí)現(xiàn),在設(shè)計(jì)中必須綜合考慮成本等因素具體劃分軟硬件功能。</p><p><b>  3.1 系統(tǒng)功能</b></p&g

39、t;<p>  單片機(jī)控制系統(tǒng)是以單片機(jī)(CPU)為核心部件,擴(kuò)展一些外部接口和設(shè)備,組成單片機(jī)工業(yè)控制機(jī),主要用于工業(yè)工程控制。</p><p>  本控制系統(tǒng)是基于MCS—51系列中8051單片機(jī)控制。通過(guò)單片機(jī)存儲(chǔ)器、I/O接口、中斷、鍵盤、LED顯示器的擴(kuò)展,相應(yīng)步進(jìn)電動(dòng)機(jī)的環(huán)形分配器及驅(qū)動(dòng)電路設(shè)計(jì),實(shí)現(xiàn)了對(duì)步進(jìn)電動(dòng)機(jī)的開環(huán)控制</p><p>  3.2 系統(tǒng)組成及

40、其器件選擇</p><p>  3.2.1 系統(tǒng)組成</p><p><b>  一、硬件組成</b></p><p><b>  1.存儲(chǔ)器擴(kuò)展模塊</b></p><p>  2.I/O接口擴(kuò)展模塊</p><p>  3.系統(tǒng)外設(shè)接口模塊</p><

41、;p>  4.四相混合式步進(jìn)電動(dòng)機(jī)環(huán)形分配器</p><p>  5.四相混合式步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)電路及保護(hù)電路</p><p><b>  6.系統(tǒng)中斷模塊</b></p><p>  7.系統(tǒng)直流電源電路模塊</p><p><b>  二、系統(tǒng)監(jiān)管程序</b></p><

42、p>  1.單片機(jī)控制步進(jìn)電動(dòng)機(jī)主程序</p><p><b>  2.中斷程序</b></p><p><b>  3.延時(shí)等子程序</b></p><p>  3.2.2 器件選擇</p><p>  1.程序存儲(chǔ)器:EPROM2716</p><p>  2.數(shù)

43、據(jù)存儲(chǔ)器:RAM6116</p><p>  3.可編程I/O控制器:8155</p><p>  4.譯碼器:74LS138</p><p>  5.串行雙外圍驅(qū)動(dòng)器:DS75452</p><p>  6.地址鎖存器:74LS373</p><p>  7.8位三態(tài)輸出的總線驅(qū)動(dòng)器/緩沖器接收器:74LS240&l

44、t;/p><p><b>  8.4×4鍵盤</b></p><p>  9.6位LED顯示器</p><p>  3.3 系統(tǒng)的可靠性/抗干擾設(shè)計(jì)</p><p>  單片機(jī)應(yīng)用系統(tǒng)可靠性設(shè)計(jì)中首先應(yīng)考慮硬件設(shè)計(jì)的可靠性。第一,要考慮元件的失效問(wèn)題,如元件本身的缺陷和工藝問(wèn)題。第二,在設(shè)計(jì)中要特別注意元器件的選擇

45、、使用和替換。對(duì)于電阻和電容,要考慮其標(biāo)稱值和誤差、額定功率、頻率特性及耐壓值等;對(duì)于CMOS集成電路,應(yīng)注意輸入電壓不能超過(guò)其電源電壓,也不能低于0V,未用的輸入端必須與電源或地端相接,而輸出端則不許短路。未用的門電路的輸入端應(yīng)并聯(lián)接到該片要使用的輸入端,輸出端則接高電平,并注意加上適當(dāng)?shù)娜ヱ铍娙莸?。第三,在設(shè)計(jì)中應(yīng)考慮環(huán)境條件對(duì)硬件參數(shù)的影響,溫度、濕度、電源及各種干擾等。所以在設(shè)計(jì)中元器件的選擇應(yīng)遵循降額使用的原則,留出一定的余地

46、。</p><p>  3.3.1 軟件的可靠性設(shè)計(jì)</p><p>  在單片機(jī)應(yīng)用系統(tǒng)中,軟件就是系統(tǒng)的監(jiān)控程序。要提高軟件的可靠性,必須從設(shè)計(jì)、調(diào)試、和長(zhǎng)期使用等方面來(lái)考慮。第一,要正確地使用中斷。監(jiān)控系統(tǒng)中,中斷處理是很常用的設(shè)計(jì)方法,在主程序和中斷程序的安排上應(yīng)考慮時(shí)間分配問(wèn)題,可以采用定時(shí)中斷或隨機(jī)事件中斷。第二,要將整個(gè)系統(tǒng)軟件根據(jù)功能劃分為若干個(gè)相對(duì)獨(dú)立的模塊。第三,根據(jù)

47、現(xiàn)場(chǎng)技術(shù)指標(biāo)和具體的控制精度要求選取適當(dāng)?shù)目刂撇呗浴?lt;/p><p>  3.3.2 硬件抗干擾措施</p><p>  根據(jù)干擾的產(chǎn)生及傳輸特點(diǎn),在硬件上可以選取以下措施:</p><p><b>  1.光電隔離。</b></p><p>  2.在滿足要求的前提下盡量用較低的時(shí)鐘頻率和低頻的器件。</p&g

48、t;<p>  3.系統(tǒng)中芯片的未用端不要懸空、應(yīng)根據(jù)實(shí)際情況接到電源端、地端或已使用端。</p><p>  3.3.3 軟件抗干擾措施</p><p>  在軟件設(shè)計(jì)中,可以采取適當(dāng)?shù)奶幚韥?lái)提高系統(tǒng)的可靠性,以保證當(dāng)系統(tǒng)受到干擾時(shí)仍能正常工作。通??梢圆扇∫韵乱恍┐胧?lt;/p><p>  一、程序中插入空操作指令實(shí)現(xiàn)指令冗余。系統(tǒng)在工作時(shí)容易因

49、干擾而使PC指向程序存儲(chǔ)器的非代碼區(qū),從而導(dǎo)致“死機(jī)”。為此可以在程序中插入一些單字節(jié)約定空操作指令NOP,失控的程序遲到該指令后得到調(diào)整而轉(zhuǎn)入正常。二、對(duì)未用的中斷向量進(jìn)行處理。在程序中對(duì)未用的中斷都編寫出相應(yīng)的錯(cuò)誤處理程序,若因干擾觸發(fā)了這些中斷,則執(zhí)行完簡(jiǎn)單的出錯(cuò)處理程序后可以正常返回。三、軟件陷阱:如果因干擾導(dǎo)致單片機(jī)的指令計(jì)數(shù)器PC值被錯(cuò)置,程序跳到這些未用的程序存儲(chǔ)空間,系統(tǒng)就會(huì)出錯(cuò)。軟件陷阱是在程序存儲(chǔ)器的未使用的區(qū)域中,

50、加上若干條空操作和無(wú)條件跳轉(zhuǎn)指令,無(wú)條件跳轉(zhuǎn)指令指向程序“跑飛”處理子程序的入口地址。如果程序跳到這些未用區(qū)域,就會(huì)執(zhí)行無(wú)條件跳轉(zhuǎn)指令,轉(zhuǎn)到相應(yīng)的程序出錯(cuò)“跑飛”處理程序[7]。</p><p><b>  第四章 硬件設(shè)計(jì)</b></p><p>  4.1 單片機(jī)控制步進(jìn)機(jī)系統(tǒng)原理圖及說(shuō)明</p><p>  原理圖見設(shè)計(jì)說(shuō)明書附圖。<

51、;/p><p>  步進(jìn)電動(dòng)機(jī)的控制原理說(shuō)明:步進(jìn)電動(dòng)機(jī)是一種將電脈沖轉(zhuǎn)換成相應(yīng)位移或線位移的電磁機(jī)械裝置,也是一種能把輸出機(jī)械位移增量轉(zhuǎn)換成輸入數(shù)字脈沖對(duì)應(yīng)的驅(qū)動(dòng)器件。步進(jìn)電動(dòng)機(jī)具有快速起動(dòng)和停止的特點(diǎn)。另外,步進(jìn)電動(dòng)機(jī)的步距角和轉(zhuǎn)速只和輸入的脈沖頻率有關(guān),與環(huán)境溫度、氣壓和沖擊等因素?zé)o關(guān),也不受電網(wǎng)電壓的波動(dòng)和負(fù)載變化的影響,因而具有步進(jìn)精確和步距誤差不會(huì)長(zhǎng)期積累等特點(diǎn)。</p><p>

52、  步進(jìn)電動(dòng)機(jī)的運(yùn)轉(zhuǎn)是由脈沖信號(hào)控制的。本系統(tǒng)設(shè)計(jì)是采用環(huán)形脈沖分配器進(jìn)行控制的,只在系統(tǒng)仿真時(shí),則采用通過(guò)軟件設(shè)置方式來(lái)控制步進(jìn)電動(dòng)機(jī)的運(yùn)行。</p><p>  4.1.1 系統(tǒng)模塊之一—四相混合式步進(jìn)電動(dòng)機(jī)環(huán)形分配器</p><p>  本環(huán)形分配器有程序存儲(chǔ)器EPROM2716,計(jì)數(shù)器74LS191及施密特反相器LS14等組成。</p><p>  現(xiàn)將其

53、工作原理闡述如下:</p><p>  四相混合式步進(jìn)電動(dòng)機(jī),有雙四拍或四相八拍兩種勵(lì)磁方式,拍數(shù)都是2n,因此計(jì)數(shù)器可以直接使用二——十六進(jìn)制可逆計(jì)數(shù)器74LS191。</p><p>  系統(tǒng)時(shí)鐘脈沖從計(jì)數(shù)器74LS191的CP端引入,控制器發(fā)出的時(shí)鐘脈沖經(jīng)過(guò)LS14兩級(jí)施密特反向器,對(duì)時(shí)鐘進(jìn)行整形,有一定的防干擾作用。計(jì)數(shù)器的輸出端Q0—Q3直接送到EPROM2716的低四位地址線A

54、0—A3,這樣可以選通EPROM2716的十六個(gè)地址(00—0FH)。存儲(chǔ)器的內(nèi)容從數(shù)據(jù)線讀出,用低四位數(shù)據(jù)線(D0—D3)作為四相驅(qū)動(dòng)器各相輸入線。EPROM2716的第四條線A4作為勵(lì)磁方式的轉(zhuǎn)換信號(hào)輸入端,其它地址都接地,當(dāng)A4為低電平時(shí),可選通00H—00FH之間的十六個(gè)地址:當(dāng)A4為高電平時(shí),可選通010H—01FH之間的十六個(gè)地址,其中001—00FH空間為四相八拍狀態(tài),存儲(chǔ)兩個(gè)循環(huán),而010H—01FH空間為雙四拍狀態(tài),存

55、儲(chǔ)四個(gè)循環(huán)。</p><p>  LS191第五個(gè)腳為加、減速輸入控制端,用該控制端作為方向輸入的控制信號(hào),當(dāng)?shù)碗娖綍r(shí)執(zhí)行加法計(jì)數(shù),既是正轉(zhuǎn)狀態(tài);當(dāng)為高電平時(shí),執(zhí)行減法計(jì)數(shù),既是反轉(zhuǎn)狀態(tài)。LS191的數(shù)據(jù)輸入端A、B、C、D各管腳接地,而腳11是置數(shù)端。當(dāng)為高電平時(shí),LS191為計(jì)數(shù)狀態(tài);當(dāng)為低電平時(shí),LS191停止計(jì)數(shù),而把數(shù)據(jù)端內(nèi)容裝入計(jì)數(shù)器。因此,管腳11通過(guò)電阻10Ω拉到高電平,引出線作為清零端(復(fù)位),

56、當(dāng)輸入一個(gè)低電平時(shí),LS191輸出為零,可選通EPROM2716的地址0000H或0010H,EPROM2716輸出狀態(tài)為A(四相八拍時(shí))或(雙四拍時(shí))。</p><p>  EPROM2716的管腳0E和CE分別為輸出容許和片選端,接地使之處于選通狀態(tài),地址A4作為方式控制端,當(dāng)A4=0時(shí),選通0000H—000FH空間,為四相八拍狀態(tài);當(dāng)A4=1時(shí),選通010H—01FH空間,為雙四拍狀態(tài)。</p>

57、;<p>  在需要零狀態(tài)時(shí),可將零狀態(tài)內(nèi)容的第四位存儲(chǔ)。例如,四相八拍時(shí)零狀態(tài)存儲(chǔ)內(nèi)容為FEH(A),改為存儲(chǔ)EEH。這樣,在環(huán)形運(yùn)行過(guò)程中,每出現(xiàn)一個(gè)零狀態(tài),D4線上出現(xiàn)一次低電平。該數(shù)據(jù)輸出端既可作為零狀態(tài)輸出線。</p><p>  4.1.2 系統(tǒng)模塊之二—四相步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)及保護(hù)電路</p><p>  步進(jìn)電動(dòng)機(jī)驅(qū)動(dòng)方式有很多種,如雙電壓驅(qū)動(dòng),斬波驅(qū)動(dòng)等。&l

58、t;/p><p>  步進(jìn)電動(dòng)機(jī)的保護(hù)電路有過(guò)電流保護(hù)和短路保護(hù),低電壓保護(hù)和過(guò)電壓保護(hù);過(guò)熱保護(hù);輸入信號(hào)異常保護(hù)等。</p><p>  由控制系統(tǒng)原理圖看出,本設(shè)計(jì)采用了單電壓驅(qū)動(dòng)方式,過(guò)電流保護(hù)和短路保護(hù)。</p><p>  4.1.3 系統(tǒng)模塊之三—人機(jī)接口電路</p><p>  因系統(tǒng)功能的需要,I/O口用8155可編程接口芯片

59、進(jìn)行了擴(kuò)展。關(guān)于8155并行口的擴(kuò)展與編程方法,及8155并行口的鍵盤掃描及LED動(dòng)態(tài)顯示程序的編程,將在后面一一闡述。</p><p>  現(xiàn)只將8155的一些控制字描述如下:</p><p>  8155控制字口:4000H</p><p>  8155 A口(字形):4001H</p><p>  8155 B口(字位):4002H&l

60、t;/p><p>  8155 C口(鍵入口):4003H</p><p>  8155控制寄存器狀態(tài)為01000011,即控制字為43H[9]。</p><p>  4.1.4 系統(tǒng)模塊之四—中斷系統(tǒng)及復(fù)位電路</p><p><b>  一、中斷系統(tǒng)</b></p><p>  鑒于中斷的分時(shí)操

61、作、實(shí)時(shí)處理等優(yōu)點(diǎn),并根據(jù)系統(tǒng)要求,步進(jìn)電動(dòng)機(jī)需要在運(yùn)行過(guò)程中急停車,或者實(shí)現(xiàn)數(shù)控機(jī)床中自動(dòng)的進(jìn)給運(yùn)動(dòng),為此在程序執(zhí)行中引入了兩個(gè)中斷。</p><p>  兩個(gè)中斷分別為外部中斷0和外部中斷1。因外部中斷0和外部中斷,被設(shè)置為電平觸發(fā)方式,故在系統(tǒng)原理圖中,將INT0和INT1兩個(gè)端口接到邏輯電平開關(guān)電路上。當(dāng)開關(guān)置0(1)時(shí),系統(tǒng)響應(yīng)中斷。</p><p><b>  復(fù)位電

62、路</b></p><p>  單片機(jī)在接通電源啟動(dòng)或出現(xiàn)故障后,程序需要從頭開始,機(jī)器內(nèi)全部寄存器、I/O口等都必須重新復(fù)位,所以外接復(fù)位電路。</p><p>  當(dāng)8051的ALE及PSEN兩引腳輸出高電平,RST引腳為高電平時(shí),單片機(jī)復(fù)位。RST/VPD端的高電平直接由上電瞬間產(chǎn)生為上電復(fù)位,通過(guò)按動(dòng)按鈕產(chǎn)生高電平復(fù)位為手動(dòng)復(fù)位。從系統(tǒng)原理圖中看出,上電時(shí),剛接通電源,

63、電容相當(dāng)于瞬間短路,+5 V立即加到RST/VPD端,該高電平使8051全機(jī)自動(dòng)復(fù)位,即上電復(fù)位;若運(yùn)行過(guò)程中需要程序從頭執(zhí)行,只需按動(dòng)按鈕A即可。按下A,則直接把+5 V加到RST/PVD端,即手動(dòng)復(fù)位。</p><p>  4.1.5 系統(tǒng)模塊之五—各檔直流電源</p><p>  因步進(jìn)電動(dòng)機(jī)的驅(qū)動(dòng)電壓為直流+220 V,而單片機(jī)電壓為直流+5 V,又因系統(tǒng)控制步進(jìn)電動(dòng)機(jī)功率不是很

64、大,故采用單相橋式整流、電容濾波電路?,F(xiàn)根據(jù)系統(tǒng)具體要求,計(jì)算、選擇整流二極管及濾波電容器[10]。</p><p>  交流電網(wǎng)電壓為220 V,交流電源頻率f=50 HZ。步進(jìn)電動(dòng)機(jī)要求直流電壓220 V,負(fù)載(線圈)電流為2.6 A;單片機(jī)要求直流5 V。</p><p>  1.由于變壓器副邊電壓大約高出10%,所以U2有效值為:</p><p>  U2=

65、220/1.1=200 V 公式(4-1)</p><p>  由于變壓器副邊電壓經(jīng)電容濾波時(shí)的直流電壓為U3=U/1.2,所以U3有效值為:</p><p>  U3=5/1.2=4.6 V 公式(4-2)</p><

66、p><b>  2.選擇整流二極管</b></p><p>  流經(jīng)二極管的平均電流為:</p><p>  IDI=1/2*I1=0.5*2.6=1.3 A 公式(4-3)</p><p>  二極管承受的最大反向電壓為:</p><p>  URMI=1

67、.414*U2=256 V 公式(4-4)</p><p>  URMI=1.414*U3=5.6 V 公式(4-5)</p><p>  因此選用2CZ56B整流二極管</p><p><b>  3.選擇濾波電容<

68、;/b></p><p>  線圈電阻為RL=UL/IL=220/2.6=8406 Ω,RLC>=(3—5)T/2,T=1/f=0.02 S,所以取</p><p>  RLC=4*T/2=2T=0.04 S 公式(4-6)</p><p>  得濾波電容為C=0.04/84.6=472.

69、8 μf 公式(4-7)</p><p>  則電容器承受的最高電壓為UCM=1.4*200*1.1=308 V 公式(4-8)</p><p>  選用標(biāo)稱值為400V/560 μF的電解電容器</p><p>  同理,選用160V /10000 μF的電解電容器</p><p><

70、;b>  4.2 單片機(jī)原理</b></p><p>  4.2.1 MCS—51單片機(jī)</p><p>  因?yàn)閱纹瑱C(jī)控制系統(tǒng)基于MCS—51系列的8051單片機(jī),故就不詳盡介紹。</p><p>  MCS—51系列單片機(jī)的主要特性如下:</p><p>  8位字長(zhǎng)CPU和指令系統(tǒng)</p><p&

71、gt;  一個(gè)片內(nèi)時(shí)鐘振蕩器和時(shí)鐘電路</p><p>  4 Kbytes 程序存儲(chǔ)器(ROM)</p><p>  128 bytes的數(shù)據(jù)存儲(chǔ)器(RAM)</p><p>  32條雙向且分別可尋址的I/O口線</p><p>  111條指令,大部分為單字節(jié)指令</p><p><b>  21個(gè)專用

72、寄存器</b></p><p>  2個(gè)16位可編程定時(shí)/計(jì)數(shù)器</p><p>  5個(gè)中斷源,2個(gè)優(yōu)先級(jí)</p><p>  一個(gè)全雙工串行通信口</p><p>  外部數(shù)據(jù)存儲(chǔ)器尋址空間為64 KB</p><p>  外部程序存儲(chǔ)器尋址空間為64 KB</p><p>&l

73、t;b>  邏輯操作位尋址功能</b></p><p><b>  布爾處理器</b></p><p>  MCS—51系列不同類型的單片機(jī)除上述主要特性外,還有不同的附加特性。</p><p>  4.2.2 MCS—51單片機(jī)引腳功能</p><p>  圖4-1為采用雙列直插式封裝的MCS—51

74、系列單片機(jī)的引腳圖。</p><p>  各引腳功能說(shuō)明如下:</p><p><b>  1.Vss和Vcc</b></p><p>  Vcc(40)接+5V;Vss(20)接地。</p><p>  2.外接晶體XTAL1和XTAL2</p><p>  XTAL1(19)—片內(nèi)反相放大器的

75、輸入端,這個(gè)放大器構(gòu)成了片內(nèi)振蕩器,當(dāng)采用外部振蕩器時(shí)接低電平。</p><p>  XTAL2(18)—片內(nèi)反相放大器的輸出和內(nèi)部時(shí)鐘發(fā)生器的輸入端。在采用外部振蕩器時(shí)用于輸入外部振蕩器信號(hào)。</p><p><b>  3.控制線</b></p><p> ?。?)RST/Vpd(9)—當(dāng)作為RST使用時(shí),為復(fù)位輸入端。在振蕩器工作時(shí),此引

76、腳上出現(xiàn)兩個(gè)機(jī)器周期的高電平使單片機(jī)復(fù)位。在RST與VCC引腳之間連接一個(gè)約10 μF的電容,RST與VSS引腳之間連接一個(gè)約8.2 K的電阻,以保證可靠的上電復(fù)位功能。做為Vpd功能使用時(shí),當(dāng)VCC處于掉電情況下,此引腳可接上備用電源,只為片內(nèi)RAM供電,保持信息不丟失。</p><p> ?。?)EA/Vpp(31)—如使用片內(nèi)有ROM/PROM的8051/8751,EA端必須接高電平,當(dāng)PC值小于0FFFH

77、,CPU訪問(wèn)內(nèi)部程序存儲(chǔ)器;當(dāng)PC值大于0FFFH且內(nèi)部的程序。若使用片內(nèi)無(wú)ROM/EPROM的8031時(shí),EA必須接地,CPU全部訪問(wèn)外部程序存儲(chǔ)器。對(duì)片內(nèi)EPROM編程時(shí),此引腳接入21V編程電壓。</p><p> ?。?)ALE/PROG(30)—當(dāng)訪問(wèn)外部存儲(chǔ)器時(shí),ALE(地址鎖存器允許)輸出用來(lái)鎖存P0口輸出的低8位地址。即使不訪問(wèn)外部存儲(chǔ)器,ALE端仍以振蕩器頻率的1/6固定速率輸出正脈沖信號(hào),此時(shí)

78、可用它作為對(duì)外輸出的時(shí)鐘或定時(shí)脈沖。但要注意,每當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),將跳過(guò)一個(gè)ALE脈沖,以1/6(晶振頻率為6M)的振蕩頻率輸出。對(duì)片內(nèi)EPROM編程時(shí),該引腳(PROG)用于輸入編程脈沖。ALE端能驅(qū)動(dòng)(吸收或輸出電流)8個(gè)LSTTL負(fù)載。</p><p>  圖4-1 MCS—51單片機(jī)引腳圖</p><p> ?。?)PSEN(29)—外部程序存儲(chǔ)器讀選通控制信號(hào),以區(qū)別讀取外

79、部數(shù)據(jù)存儲(chǔ)器。在選取外部程序存儲(chǔ)器指令(或常數(shù))時(shí),每個(gè)機(jī)器周期產(chǎn)生兩次PSEN有效信號(hào)。但在此期間內(nèi),當(dāng)訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器時(shí),這兩次PSEN有效信號(hào)將不出現(xiàn)。PSEN同樣能驅(qū)動(dòng)8個(gè)LSTTL負(fù)載。</p><p><b>  4.輸入/輸出口</b></p><p> ?。?)P0口(32—39)—8位漏極開路雙向I/O口。在外接存儲(chǔ)器時(shí),P0口作為低8位地址/數(shù)據(jù)

80、總線復(fù)用口,通過(guò)分時(shí)操作,先傳送低8位地址,利用ALE信號(hào)的下降沿使地址鎖存,然后作為8位雙向數(shù)據(jù)總線使用,用來(lái)傳送8位數(shù)據(jù)。在對(duì)片內(nèi)EPROM編程時(shí),P0口接受指令代碼;而在內(nèi)部程序驗(yàn)證時(shí),輸出指令代碼,并要求外接上拉電阻。P0口能以吸收電流的方式驅(qū)動(dòng)9個(gè)LSTTL負(fù)載。</p><p> ?。?)P1口(1—8)—8位具有內(nèi)部上拉電阻的準(zhǔn)雙向I/O口。在片內(nèi)EPROM編程及校驗(yàn)時(shí),他接受低8位地址。P1口能驅(qū)

81、動(dòng)3個(gè)LSTTL負(fù)載。</p><p>  (3)P2口(21—28)—8位具有內(nèi)部上拉電阻的準(zhǔn)雙向I/O口。在外接存儲(chǔ)器時(shí),P2口做為高8位地址總線。在對(duì)片內(nèi)EPROM編程、校驗(yàn)時(shí),它接受高位地址。P2口能驅(qū)動(dòng)3個(gè)LSTTL負(fù)載。</p><p>  (4)P3口(10—17)—8位帶有內(nèi)部上拉電阻的準(zhǔn)雙向I/O口。每一位又具有特殊功能(或稱第二變異功能):</p><

82、;p><b>  一個(gè)8位CPU;</b></p><p>  ◆ 一個(gè)片內(nèi)振蕩器及時(shí)鐘電路;</p><p>  ◆ 4K字節(jié)ROM程序存儲(chǔ)器;</p><p>  ◆ 128字節(jié)RAM數(shù)據(jù)存儲(chǔ)器;</p><p>  ◆ 兩個(gè)16位定時(shí)器/計(jì)數(shù)器;</p><p>  ◆ 可尋址64K外

83、部數(shù)據(jù)存儲(chǔ)器和64K外部程序存儲(chǔ)器空間的控制電路;</p><p>  ◆ 32條可編程的I/O線(四個(gè)8位并行I/O端口);</p><p>  ◆ 一個(gè)可編程全雙工串行口;</p><p>  ◆ 具有五個(gè)中斷源、兩個(gè)優(yōu)先級(jí)嵌套中斷結(jié)構(gòu);</p><p>  4.2.3 時(shí)鐘電路與時(shí)序</p><p>  MCS—

84、51單片機(jī)內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是反相放大器的輸入端和輸出端,由這個(gè)放大器與作為反饋元件的片外晶振或陶瓷諧振器一起構(gòu)成了一個(gè)自激振蕩器。計(jì)算機(jī)在執(zhí)行指令時(shí),一條指令經(jīng)譯碼后產(chǎn)生若干個(gè)基本的微操作,這些微操作所對(duì)應(yīng)的脈沖信號(hào)在時(shí)間上的先后次序稱為計(jì)算機(jī)的時(shí)序。下面闡述有關(guān)CPU時(shí)序的概念。</p><p><b>  1.振蕩周期</b>&l

85、t;/p><p>  指為單片機(jī)提供定時(shí)信號(hào)的振蕩源的周期,若為內(nèi)部產(chǎn)生方式時(shí),為石英晶體的振蕩周期。</p><p><b>  2.時(shí)鐘周期</b></p><p>  也稱為狀態(tài)周期,用S表示。時(shí)鐘周期是計(jì)算機(jī)中最基本的時(shí)間單位,在一個(gè)時(shí)鐘周期內(nèi),CPU完成一個(gè)最基本的動(dòng)作。MCS—51單片機(jī)中一個(gè)時(shí)鐘周期為振蕩周期的2倍。</p>

86、;<p><b>  3.機(jī)器周期</b></p><p>  為便于管理,常把一個(gè)指令的執(zhí)行過(guò)程劃分為若干個(gè)階段,每一個(gè)階段完成一個(gè)基本操作,例如,取指令、存儲(chǔ)器讀/寫等。完成一個(gè)基本操作所需要的時(shí)間稱為機(jī)器周期。MCS—51的一個(gè)機(jī)器周期含有6個(gè)時(shí)鐘周期。</p><p><b>  20pf</b></p>&

87、lt;p><b>  6MHZ20pf</b></p><p><b>  圖4-2 時(shí)鐘電路</b></p><p>  指令周期:完成一條指令所需要的時(shí)間。MCS—51的指令周期含1—4個(gè)機(jī)器周期不等,其中多數(shù)為單周期指令,還有2周期和4周期指令。4周期指令只有乘、除兩條指令。</p><p>  4.2.4

88、并行輸入/輸出端口結(jié)構(gòu)</p><p>  MCS—51單片機(jī)內(nèi)有四個(gè)8位并行I/O端口,分別記作P0、P1、P2和P3。每個(gè)端口都是8位準(zhǔn)雙向口,共占有32根引腳。</p><p>  每個(gè)端口都包含一個(gè)鎖存器、一個(gè)輸出驅(qū)動(dòng)器和一個(gè)輸入緩沖器。在無(wú)片外擴(kuò)展存儲(chǔ)器的系統(tǒng)中,這四個(gè)端口的每一位都可以作為準(zhǔn)雙向通用I/O端口使用。在具有片外擴(kuò)展的系統(tǒng)中,P2口作為高8位地址線,P0口雙向總線,

89、分別送出低8位地址和數(shù)據(jù)的輸入/輸出。</p><p><b> ?。?)P0口</b></p><p>  I/O口的每位鎖存器均由D觸發(fā)器組成,用來(lái)鎖存輸入/輸出的信息。在CPU的“寫鎖存器”信號(hào)驅(qū)動(dòng)下,將內(nèi)部總線上的數(shù)據(jù)寫入鎖存器中。</p><p>  兩個(gè)三態(tài)緩沖器,一個(gè)用來(lái)“讀引腳”信息,即將I/O端引腳上的信息讀內(nèi)部總線,送CPU

90、處理;另一個(gè)用來(lái)讀鎖存器,即把鎖存器內(nèi)容讀入內(nèi)部總線上,送CPU處理。因此,對(duì)某些I/O指令可讀取鎖存器的內(nèi)容,而另外一些指令則是讀取引腳上的信息。</p><p>  當(dāng)輸入數(shù)據(jù)時(shí),由于外部輸入信號(hào)既加在緩沖輸入端上,又加在驅(qū)動(dòng)電路的漏極上,如果這時(shí)下面的FET是導(dǎo)通的,則引腳上的電位始終被鉗位在0電平上,輸入數(shù)據(jù)不可能正確的讀入。因此,在輸入數(shù)據(jù)時(shí),應(yīng)先把P0口置1,使兩個(gè)輸出FET均關(guān)斷,使引腳置“1”,成

91、為高阻狀態(tài),這樣才能正確的插入數(shù)據(jù)。這就是所謂的準(zhǔn)雙向口。</p><p>  在有外部擴(kuò)展存儲(chǔ)器時(shí),P0口必須作地址/數(shù)據(jù)總線用,這時(shí)就不能在把它作為通用的I/O口使用了。</p><p> ?。?)P1口也是一個(gè)八位準(zhǔn)雙向并行I/O口,做通用I/O口使用。</p><p>  在電路結(jié)構(gòu)上,P1口的輸出驅(qū)動(dòng)部分與P0口不同,內(nèi)部有上拉負(fù)載電阻與電源相連,與場(chǎng)效應(yīng)

92、管FET共同組成輸出驅(qū)動(dòng)電路。</p><p>  當(dāng)進(jìn)行寫操作時(shí),寫鎖存器脈沖將內(nèi)部總線送入D端的信息寫入鎖存器,再由Q端去驅(qū)動(dòng)FET。</p><p>  當(dāng)P1口用作輸入口時(shí),也應(yīng)先用軟件使輸出鎖存器置1,使FET截止,處于高阻狀態(tài),然后再通過(guò)緩沖器進(jìn)行輸入操作。</p><p><b>  (3)P2口</b></p>&

93、lt;p>  P2口在結(jié)構(gòu)上比P1口多了一個(gè)輸出轉(zhuǎn)換控制部分,多路開關(guān)MUX由CPU命令控制。同P1口一樣,P2口內(nèi)部也接有固定的上拉電阻。</p><p>  P2口既可作為通用I/O口使用,有可作為地址總線口,傳送地址高8位。當(dāng)P2口用來(lái)作通用I/O口時(shí),是一個(gè)準(zhǔn)雙向口。</p><p>  在外接程序存儲(chǔ)器的系統(tǒng)中,由于訪問(wèn)外部程序存儲(chǔ)器的操作連續(xù)不斷,P2口將不斷輸出高八位地

94、址,故這時(shí)P2口不再作通用I/O口使用。</p><p>  在無(wú)外部程序存儲(chǔ)器而擴(kuò)展有外部數(shù)據(jù)存儲(chǔ)器的系統(tǒng)中,P2口的使用情況有所不同,若外接RAM容量為256B,則可用MOVX @Ri類指令由P0口送出8位地址,這時(shí)P2口仍可作通用I/O口使用。若外部RAM容量較大(超過(guò)256B),則使用MOVX @DPTR類指令訪問(wèn)外部RAM。在讀/寫周期內(nèi),P2口引腳將保持高8位地址信息。輸出地址時(shí),通過(guò)CPU控制內(nèi)

95、部轉(zhuǎn)換開關(guān)轉(zhuǎn)向地址輸出,故輸出鎖存器的內(nèi)容不會(huì)在輸出地址過(guò)程中改變,所以訪問(wèn)外部數(shù)據(jù)存儲(chǔ)器周期結(jié)束后,多路開關(guān)自動(dòng)切換到鎖存器Q端,P2口輸出鎖存器的內(nèi)容又回重新出現(xiàn)在引腳上。因此,根據(jù)訪問(wèn)外部RAM的頻繁程度,P2口仍可利用其中訪問(wèn)間隙作通用I/O口用。在外部RAM容量不太大時(shí),通過(guò)采用軟件方法,將所需的高位地址,例如只需要A8—A10三位,先由P2.0—P2.2三位輸出,再用指令MOVX PV @Ri訪問(wèn)外部RAM。而P2口余下的

96、幾位仍可作通用I/O使用。</p><p><b> ?。?)P3口</b></p><p>  P3口是一個(gè)多功能端口</p><p>  當(dāng)P3口作為通用I/O口使用時(shí),第二輸出端應(yīng)保持高電平。</p><p>  當(dāng)P3口作為第二輸出功能使用時(shí),應(yīng)先將輸出鎖存器置“1”,不論作為輸入口使用還是第二功能信號(hào)插入,鎖存

97、器輸出和第二功能端都應(yīng)保持高電平。如表4.4</p><p> ?。?)I/O口讀—修改—寫操作</p><p>  從上可見,每個(gè)I/O口均有兩種讀入方法:讀鎖存器和讀引腳,并有相應(yīng)的指令。讀鎖存器指令是從鎖存器中讀取數(shù)據(jù),送CPU處理,再把處理后的數(shù)據(jù)重新寫入鎖存器中,這類指令稱為讀—修改—寫指令。在讀—修改—寫指令中,目的操作數(shù)必須是一個(gè)I/O口或I/O口的某一位。例如:INC P2

98、,CLR P1.0及ANL P1,A等。讀引腳指令一般都是一I/O端口為源操作數(shù)的指令,執(zhí)行讀引腳指令時(shí),輸入口狀態(tài)。例如,讀P1口引腳指令為MOV A,P1。</p><p>  表4-1P3口第二功能</p><p>  對(duì)“讀—修改—寫”指令,直接讀鎖存器Q端而不是讀引腳的原因是為了避免錯(cuò)讀引腳上電平的可能性。例如,若用一口位去驅(qū)動(dòng)一個(gè)晶體管的基極,當(dāng)向此口位寫“1”時(shí),晶體管導(dǎo)通

99、,并把引腳的電平拉低,這時(shí)若從引腳上讀取數(shù)據(jù),則讀的是晶體管的基極電平,與地址鎖存器的狀態(tài)1不一樣。而鎖存器Q端讀取,就能避免這樣的錯(cuò)誤,得到正確的數(shù)據(jù),</p><p> ?。?)I/O口的負(fù)載能力</p><p>  P0口的每位輸出可驅(qū)動(dòng)8個(gè)LSTTL輸入,但把它作為通用I/O口使用時(shí),輸出級(jí)是開漏電路,故用它驅(qū)動(dòng)CMOS輸入時(shí)需外接上拉電阻;而把它作地址/數(shù)據(jù)總線用時(shí),則無(wú)需外接上

100、拉電阻。</p><p>  P1—P3口的輸出級(jí)均接有內(nèi)部上拉電阻,它們的每一位輸出可驅(qū)動(dòng)3個(gè)LSTTL輸入。對(duì)CMOS型單片機(jī),當(dāng)N和P3口作輸入方式時(shí),任何TTL或NM05電路都能以正常的方式去驅(qū)動(dòng)這些口。</p><p>  4.3 單片機(jī)的片外總線結(jié)構(gòu)</p><p>  4.3.1 單片機(jī)的片外總線結(jié)構(gòu)</p><p>  單片

101、機(jī)是通過(guò)其片外引腳進(jìn)行系統(tǒng)擴(kuò)展的,即在片外連接相應(yīng)的外圍芯片以滿足應(yīng)用系統(tǒng)的要求,總線是連接系統(tǒng)中各擴(kuò)展部件的一組公共信號(hào)線。單片機(jī)的片外引腳也呈三總線結(jié)構(gòu),這三總線是地址總線(AB),數(shù)據(jù)總線(DB)和控制總線(CB),所有的外部芯片都是通過(guò)這三組總線進(jìn)行擴(kuò)展的。</p><p>  1.地址總線(AB)</p><p>  地址總線(Address Bus)用于傳送單片機(jī)發(fā)出的地址信號(hào)

102、,以便進(jìn)行存儲(chǔ)單元和I/O端口的選擇。地址總線是單向的,只能由單片機(jī)向外發(fā)出。地址總線的目的決定了可直接訪問(wèn)的存儲(chǔ)單元的數(shù)據(jù)。</p><p>  MCS—51單片機(jī)的地址總線由P0口構(gòu)成低8位(A7—A0),P2口的高8位(A8—A15),地址總線寬度為16位,故可尋址范圍為64KB。</p><p>  由于P0口用作數(shù)據(jù)總線口,只能分時(shí)用作地址總線,故P0口的低8位地址信息必須用鎖存

103、器鎖存。先傳送低8位地址,利用ALE信號(hào)的下降沿將地址鎖存,然后作為8位雙數(shù)據(jù)總線使用。P2口本身具有輸出鎖存功能,故不需外加鎖存器。P0、P2口在系統(tǒng)擴(kuò)展中用作地址線后,就不能再作為一般I/O。</p><p>  2.數(shù)據(jù)總線(DB)</p><p>  數(shù)據(jù)總線(DATA BMS)用于單片機(jī)與存儲(chǔ)器之間或單片機(jī)與I/O端口之間傳送數(shù)據(jù),單片機(jī)系統(tǒng)數(shù)據(jù)總線的位數(shù)與其處理數(shù)據(jù)的字長(zhǎng)一致,

104、數(shù)據(jù)總線總是雙向的。</p><p>  MCS—51單片機(jī)的數(shù)據(jù)總線由P0口提供,寬度為8位,該口為三態(tài)雙向口,通過(guò)數(shù)據(jù)總線實(shí)現(xiàn)CPU與存儲(chǔ)器或外設(shè)之間的信息交換。數(shù)據(jù)總線一般要連多個(gè)外圍芯片上,那個(gè)芯片的數(shù)據(jù)通道則由地址控制各個(gè)芯片的片選線來(lái)選擇。</p><p>  3.控制總線(CB)</p><p>  控制總線(Control bms)是一級(jí)控制信號(hào)線,

105、包括單片機(jī)發(fā)出的,以及從其他部件送給單片機(jī)的。對(duì)于一條控制信號(hào)而言,其傳送方向是單向的。單片機(jī)的控制總線按功能可分為片外系統(tǒng)擴(kuò)展用控制線和片外信號(hào)對(duì)單片機(jī)的控制線。系統(tǒng)擴(kuò)展用控制線有WR、RD、PSEN、ALE、EA。</p><p>  PSEN:訪問(wèn)外部程序存儲(chǔ)器RAM時(shí),用這兩個(gè)信號(hào)進(jìn)行讀/寫控制,當(dāng)執(zhí)行片外數(shù)據(jù)存儲(chǔ)器的操作指令MOVX @DPTR或MOVX @Ri時(shí),這兩個(gè)控制信號(hào)自動(dòng)生成[13]。&

106、lt;/p><p>  ALE:地址鎖存允許,用于鎖存P0口場(chǎng)出的低8位地址控制線。在ALE的下降沿將P0口輸出的地址字節(jié)裝入外部鎖存器。</p><p>  EA:用來(lái)選擇片內(nèi)或片外程序存儲(chǔ)器。</p><p>  EA=0時(shí),不論片內(nèi)有無(wú)程序存儲(chǔ)器,只訪問(wèn)外部程序存儲(chǔ)器。EA=1時(shí),地址不超過(guò)0FFFH,只訪問(wèn)片內(nèi)ROM/EPROM,然后是訪問(wèn)外部程序存儲(chǔ)器的100

107、0H—FFFFH單元,對(duì)片內(nèi)無(wú)ROM無(wú)EPROM單片機(jī),擴(kuò)展時(shí)EA必須接低電平。</p><p>  4.4 系統(tǒng)外設(shè)接口</p><p>  4.4.1 鍵盤接口原理</p><p>  對(duì)于需要人工干預(yù)的單片機(jī)應(yīng)用系統(tǒng),鍵盤就成為人機(jī)聯(lián)系的必要手段,此時(shí)需配置適當(dāng)?shù)逆I盤輸入設(shè)備,微機(jī)所用鍵盤有全編碼鍵盤和非編碼鍵盤兩種,全編碼鍵盤能夠由硬件邏輯自動(dòng)提供被按下鍵

108、的編碼,此外,一般還具有去抖動(dòng)和多鍵、竄鍵等保護(hù)功能。這種鍵盤使用方便,但需較多的硬件、價(jià)格貴,一般的單片機(jī)應(yīng)用系統(tǒng)較少采用。</p><p>  鍵盤是由若干個(gè)鍵組成的開關(guān)矩陣,它是最簡(jiǎn)單的單片微機(jī)輔助設(shè)備。4×4的鍵盤結(jié)構(gòu)如圖所示,圖中行線通過(guò)電阻接+5V,當(dāng)鍵盤沒(méi)有鍵閉合時(shí),所有的行線(X0—X3)和列線(Y0—Y3)斷開,行線均呈高電平。當(dāng)鍵盤上某一鍵閉合時(shí),該鍵所對(duì)應(yīng)的行線和列線短路。例如9號(hào)

109、鍵按下時(shí),行線X2和Y1短路,此時(shí)行線X2的電平由Y1決定。如果把行線接到微機(jī)的輸入口,列線接到微機(jī)輸出口。在微機(jī)控制下,先使列線Y0為低電平,其余三根Y1、Y2、Y3均為高電平。然后通過(guò)輸入口讀行線狀態(tài),如果4根行線均為高電平,說(shuō)明在Y0這一列上沒(méi)有鍵閉合,如果讀出的行線狀態(tài)不全為高電平,則說(shuō)明為低電平的那根行線與Y0相交的鍵處于閉合狀態(tài)。</p><p>  若Y0這列上沒(méi)有鍵閉合,接著使列線Y1為低電平,其

110、余三根列線Y0、Y2、Y3為高電平。用同樣的反復(fù)檢查這一列鍵上無(wú)鍵閉合。</p><p>  以次類推,用同樣方法檢查其余的兩根列線上有無(wú)鍵閉合。這種逐行逐列地檢查鍵盤狀態(tài)的過(guò)程稱為對(duì)鍵盤的一次掃描。</p><p>  目前,無(wú)論是按鍵或鍵盤大部分都是利用機(jī)械觸點(diǎn)的合、斷作用。機(jī)械觸點(diǎn)在閉合及斷開瞬間由于彈性影響,在閉合及斷開瞬間均有抖動(dòng)過(guò)程,從而使電壓信號(hào)也出現(xiàn)抖動(dòng),抖動(dòng)時(shí)間的長(zhǎng)短與開

111、關(guān)的機(jī)械特性有關(guān),一般為5—10 ms。而微機(jī)對(duì)鍵盤進(jìn)行一次掃描僅需幾百微秒。這樣將會(huì)使鍵盤掃描產(chǎn)生錯(cuò)誤的判斷。為了保證CPU對(duì)鍵盤的一次閉合僅作一次輸入處理,必須去除抖動(dòng)影響。</p><p>  通常去抖動(dòng)影響有兩種方法,一是在硬件上采取在鍵盤端加Rs觸發(fā)器或單穩(wěn)態(tài)電路構(gòu)成去抖動(dòng)電路;另一種方法是在檢測(cè)到有鍵按下時(shí),執(zhí)行10 ms左右的延時(shí)程序后,再確認(rèn)該鍵電平是否仍保持閉合狀態(tài)時(shí)的電平,若仍保持為閉合狀態(tài)電

溫馨提示

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

最新文檔

評(píng)論

0/150

提交評(píng)論