2023年全國(guó)碩士研究生考試考研英語(yǔ)一試題真題(含答案詳解+作文范文)_第1頁(yè)
已閱讀1頁(yè),還剩36頁(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>  基于AT89C51的步進(jìn)電機(jī)控制</p><p><b>  摘 要</b></p><p>  本設(shè)計(jì)采用ATMEL系列的單片機(jī)對(duì)步進(jìn)電機(jī)進(jìn)行控制,實(shí)現(xiàn)以下功能:開機(jī)后,電機(jī)不轉(zhuǎn),按下啟動(dòng)鍵,電機(jī)旋轉(zhuǎn);按下正轉(zhuǎn)鍵,電機(jī)正轉(zhuǎn);按下反轉(zhuǎn)鍵,電機(jī)反轉(zhuǎn)。 實(shí)現(xiàn)這一功能,系統(tǒng)的硬件部分應(yīng)由四模塊構(gòu)成:輸入模塊、單片機(jī)控制模塊、步進(jìn)電機(jī)驅(qū)

2、動(dòng)模塊、步進(jìn)電機(jī)模塊。通過(guò)鍵盤輸入,單片機(jī)編程控制,輸出信號(hào)給步進(jìn)電機(jī)驅(qū)動(dòng)電路ULN2003A,最后由ULN2003A驅(qū)動(dòng)步進(jìn)電機(jī)按規(guī)定的方向運(yùn)轉(zhuǎn)。</p><p>  用單片機(jī)控制步進(jìn)電機(jī),可以簡(jiǎn)化硬件電路,可同時(shí)實(shí)現(xiàn)各種功能,如步進(jìn)電機(jī)的加減速,步進(jìn)電機(jī)正反轉(zhuǎn)等,當(dāng)功能要求改變時(shí),只需改變程序,而硬件電路不變,實(shí)現(xiàn)功能的方式簡(jiǎn)單便捷。</p><p>  關(guān)鍵詞: 單片機(jī) ;步進(jìn)電機(jī)&

3、lt;/p><p>  The Control Of Stepping Motor Based On AT89C51</p><p><b>  Abstract</b></p><p>  Stepping motor is controlled by the microcontroller , a sort of ATMEL series ,i

4、n the design. The function can be realized as follows:When the start button is pressed, motor begins to run;When the foreward button is pressed,motor begins to run in the positive direction;When the reversional button i

5、s pressed,motor begins to run in the opposite direction. To realize the features described above,the circuits should consist of four modules:input circuit,microcontroller,drive circuit of stepping moto</p><p&g

6、t;  The control of stepping motor by :microcontroller can simplify the circuit and can realize many functions,e.g. it can change the operation mode of stepping motor and speed,and so on. When the function need to be cha

7、nged,the same circuit can be used and the only thing that you should do is to modify program . So it is convenient to use microcontroller to realize the control of motor .</p><p>  Keyword :microcontroller

8、;stepping motor</p><p><b>  目 錄 </b></p><p>  第1章. 緒論- 1 -</p><p>  1.1. 單片機(jī)的特點(diǎn)- 1 -</p><p>  1.2. 單片機(jī)的發(fā)展趨勢(shì)- 1 -</p><p>  1.3. 單片機(jī)的任務(wù)- 2

9、 -</p><p>  第2章. 系統(tǒng)設(shè)計(jì)- 4 -</p><p>  2.1. 設(shè)計(jì)要求- 4 -</p><p>  2.2. 設(shè)計(jì)構(gòu)思- 4 -</p><p>  2.3. 設(shè)計(jì)元件的選型- 5 -</p><p>  第3章. 系統(tǒng)核心元件的介紹- 6 -</p><p>

10、;  3.1. 單片機(jī)簡(jiǎn)介- 6 -</p><p>  3.1.1. 單片機(jī)的基本組成- 6 -</p><p>  3.1.2. 單片機(jī)的特點(diǎn)- 8 -</p><p>  3.1.3. 單片機(jī)的應(yīng)用- 8 -</p><p>  3.2. AT89C51的簡(jiǎn)介- 9 -</p><p>  3.2.1.

11、 AT89C51的結(jié)構(gòu)- 9 -</p><p>  3.2.2. AT89C51的引腳介紹- 10 -</p><p>  第4章. 系統(tǒng)的硬件設(shè)計(jì)- 12 -</p><p>  4.1. 輸入電路的設(shè)計(jì)- 12 -</p><p>  4.1.1. 鍵盤輸入- 12 -</p><p>  4.1.2.

12、 鍵盤接口的工作原理- 12 -</p><p>  4.2. AT89C51設(shè)計(jì)電路- 13 -</p><p>  4.2.1. 時(shí)鐘電路- 13 -</p><p>  4.2.2. 復(fù)位電路- 14 -</p><p>  4.3. 步進(jìn)電機(jī)驅(qū)動(dòng)電路- 16 -</p><p>  4.4. 步進(jìn)電機(jī)

13、- 17 -</p><p>  4.4.1. 步進(jìn)電機(jī)原理- 17 -</p><p>  4.4.2. 步進(jìn)電機(jī)勵(lì)磁控制- 17 -</p><p>  4.5. 系統(tǒng)的總體硬件電路- 19 -</p><p>  第5章. 系統(tǒng)的軟件設(shè)計(jì)- 21 -</p><p>  5.1. 系統(tǒng)的程序分析- 2

14、1 -</p><p>  5.2. 軟件流程圖- 21 -</p><p>  5.2.1. 鍵盤程序的設(shè)計(jì)- 22 -</p><p>  5.2.2. 步進(jìn)電機(jī)驅(qū)動(dòng)程序- 22 -</p><p>  第6章. 電路的仿真- 26 -</p><p>  6.1. 仿真的介紹- 26 -</p&g

15、t;<p>  6.2. 仿真的過(guò)程- 26 -</p><p>  結(jié)束與展望- 28 -</p><p>  參考文獻(xiàn)- 29 -</p><p><b>  致謝- 30 -</b></p><p>  附錄1:譯文原文- 31 -</p><p>  附錄2:譯文

16、- 34 -</p><p><b>  圖 表 清 單 </b></p><p>  圖 21 系統(tǒng)的設(shè)計(jì)思路圖- 4 -</p><p>  圖 31 單片機(jī)的典型結(jié)構(gòu)框圖- 6 -</p><p>  表格 31 P3各引腳- 11 -</p><p>  圖 41 鍵閉

17、合時(shí)的行線輸出電壓波形- 12 -</p><p>  圖 42 AT89C51的最小系統(tǒng)- 13 -</p><p>  圖 43 內(nèi)部時(shí)鐘振蕩器- 14 -</p><p>  表格 41 一些寄存器的復(fù)位狀態(tài)- 14 -</p><p>  圖 44 AT89C51的片內(nèi)復(fù)位結(jié)構(gòu)- 15 -</p>

18、<p>  圖 45 按鍵復(fù)位電路- 15 -</p><p>  圖 46 一般驅(qū)動(dòng)電路- 16 -</p><p>  圖 47 ULN2003內(nèi)部框圖及等效電路圖- 16 -</p><p>  圖 48 ULN2003的應(yīng)用驅(qū)動(dòng)電路- 17 -</p><p>  表格 42 勵(lì)磁順序A-B-C-D-A

19、- 18 -</p><p>  表格 43 勵(lì)磁順序AB-BC-CD-DA-AB- 18 -</p><p>  表格 44勵(lì)磁順序:A-AB-B-BC-C-CD-D-DA-A- 19 -</p><p>  圖 49 系統(tǒng)的硬件電路圖- 20 -</p><p>  圖 51主程序流程圖- 21 -</p>

20、<p>  圖 61 仿真電路圖- 27 -</p><p><b>  緒論 </b></p><p><b>  單片機(jī)的特點(diǎn) </b></p><p>  近十幾年來(lái),單片機(jī)在生產(chǎn)過(guò)程控制、自動(dòng)檢測(cè)、數(shù)據(jù)采集與處理、科技計(jì)算、商業(yè)管理和辦公室自動(dòng)化等方面獲得了廣泛的應(yīng)用。單片機(jī)具有體積小、重量輕、

21、耗能省、價(jià)格低、可靠性高和通用靈活等優(yōu)點(diǎn),因此也廣泛應(yīng)用于衛(wèi)星定句、汽車火花控制、交通白動(dòng)管理和微波爐等專用控制上。近幾年來(lái),單片機(jī)的發(fā)展更為迅速,它已滲透到諸多學(xué)科的領(lǐng)域,以及人們生活的各個(gè)方面。    單片機(jī)不求規(guī)模大,只求小而全。廠家在一個(gè)芯片上制成了CPU和一定容量的程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器以及一定數(shù)量的輸入/輸出接口(Intel)。在一個(gè)大規(guī)模集成電路芯片上構(gòu)造了完整的計(jì)算機(jī)結(jié)構(gòu),故稱之為單片機(jī)

22、?! 〗陙?lái),在國(guó)際上出現(xiàn)了Mechanics和electronics復(fù)合成Mechtronics這個(gè)新詞,我國(guó)譯為"機(jī)電一體化"。這種機(jī)械和電子技術(shù)、信息技術(shù)緊密結(jié)合的新的學(xué)科領(lǐng)域是先進(jìn)制造技術(shù)研究和普及的結(jié)果。機(jī)電一體化產(chǎn)品要實(shí)現(xiàn)電器控制的實(shí)時(shí)性、高可靠性、可編程和一定的人工智能。同時(shí)追求體積小、價(jià)格低,甚至低功耗等。正是針對(duì)上述種種要求而設(shè)計(jì)的單片機(jī)自然成為機(jī)電一體化控制器的最佳選擇。</p>

23、<p>  單片機(jī)的發(fā)展趨勢(shì) </p><p>  單片機(jī)出現(xiàn)的歷史并不長(zhǎng),它的產(chǎn)生與發(fā)展與微處理器的產(chǎn)生與發(fā)展大體上同步,也經(jīng)歷了四個(gè)階段: 第一階段 : 1971~1974年,4位微處理器工intel 4004及8位微處理器工intel 8008,這些計(jì)算機(jī)價(jià)格便宜、功能有限,只用于消耗類電子產(chǎn)品。 第二階段 : 1974~1978年,初級(jí)單片機(jī)階段,以工intel公司的MCS-48為代表

24、,8位單片機(jī)。 第三階段 : 1978~1983年,高性能單片機(jī)階段。以工Intel公司的MCS-51, Motorola公司的6801和Zilog公司的Z8等為代表。這一階段推出的單片機(jī)普遍帶有串行口,有多級(jí)中斷處理系統(tǒng)、16位定時(shí)器/計(jì)數(shù)器,有的片內(nèi)還帶有A/D轉(zhuǎn)換器接口,片內(nèi)RAM, ROM容量加大,尋址范圍可達(dá)64K字節(jié)。廣泛應(yīng)用于工業(yè)控制、外部設(shè)備控制、宏觀控制、局部網(wǎng)絡(luò)及家用計(jì)算機(jī)中。 第四階段 : 1983年至今,

25、8位單片機(jī)鞏固發(fā)展及16位單片機(jī)推出階段。例如Mostek公司的MK6800、Intel公司的MCS-96等。MCS-96集成度為12萬(wàn)只品體管/片,尋址范圍64K字節(jié)、5個(gè)8位并行口、一個(gè)全雙工串行口、4個(gè)</p><p>  步進(jìn)電機(jī)上個(gè)世紀(jì)就出現(xiàn)了,它的組成、動(dòng)作原理和今天的反應(yīng)式步進(jìn)電動(dòng)機(jī)沒有什么本質(zhì)區(qū)別,也是依靠氣隙間的磁導(dǎo)變化來(lái)產(chǎn)生電磁轉(zhuǎn)矩。80年代以后,由于廉價(jià)的微型計(jì)算機(jī)以多功能的姿態(tài)出現(xiàn),步進(jìn)電

26、動(dòng)機(jī)的控制方式變得更加靈活多樣。原來(lái)的步進(jìn)電機(jī)控制系統(tǒng)采用分立元件或者集成電路組成的控制回路,不僅調(diào)試安裝復(fù)雜,要消耗大量元器件,而且一旦定型之后,要改變控制方案就一定要重新設(shè)計(jì)電路,不利于系統(tǒng)的改進(jìn)升級(jí)?;谖⑿陀?jì)算機(jī)的控制系統(tǒng)則通過(guò)軟件來(lái)控制步進(jìn)電機(jī),能夠更好地發(fā)揮步進(jìn)電機(jī)的潛力,因此,用微型計(jì)算機(jī)控制步進(jìn)電機(jī)已經(jīng)成為了一種必然的趨勢(shì),也符合數(shù)字化的時(shí)代發(fā)展要求.</p><p><b>  單片機(jī)

27、的任務(wù) </b></p><p>  步進(jìn)電機(jī)廣泛應(yīng)用在生產(chǎn)實(shí)踐的各個(gè)領(lǐng)域。它最大的應(yīng)用是在使用數(shù)控機(jī)床的生產(chǎn)制造中,因?yàn)椴竭M(jìn)電機(jī)不需要A/D轉(zhuǎn)換,能夠直接將數(shù)字脈沖信號(hào)轉(zhuǎn)化成為角位移,所以被認(rèn)為是理想的數(shù)控機(jī)床的執(zhí)行元件。早期的步進(jìn)電機(jī)輸出轉(zhuǎn)矩比較小,無(wú)法滿足需要,在使用中和液壓扭矩放大器一同組成液壓脈沖馬達(dá)。隨著步進(jìn)電動(dòng)機(jī)技術(shù)的發(fā)展,步進(jìn)電動(dòng)機(jī)已經(jīng)能夠單獨(dú)在系統(tǒng)上進(jìn)行使用,成為了不可替代的執(zhí)行元件

28、。比如步進(jìn)電動(dòng)機(jī)用作數(shù)控銑床進(jìn)給伺服機(jī)構(gòu)的驅(qū)動(dòng)電動(dòng)機(jī),在這個(gè)應(yīng)用中,步進(jìn)電動(dòng)機(jī)可以同時(shí)完成兩個(gè)工作,其一是傳遞轉(zhuǎn)矩,其二是傳遞信息。步進(jìn)電機(jī)也可以作為數(shù)控蝸桿砂輪磨邊機(jī)同步系統(tǒng)的驅(qū)動(dòng)電動(dòng)機(jī)。除了在數(shù)控機(jī)床上的應(yīng)用,步進(jìn)電機(jī)也應(yīng)用在其他方面,比如作為自動(dòng)送料機(jī)中的馬達(dá),作為通用的軟盤驅(qū)動(dòng)器的馬達(dá),也可以應(yīng)用在打印機(jī)和繪圖儀中等等。微電子技術(shù)的飛速發(fā)展,帶動(dòng)了機(jī)械加工技術(shù)的飛速發(fā)展。而在其發(fā)展過(guò)程中,最顯著的特點(diǎn)是機(jī)械制造將越來(lái)越密切地依

29、賴于電子技術(shù)、檢測(cè)技術(shù)、自動(dòng)控制技術(shù)、計(jì)算機(jī)技術(shù)、系統(tǒng)論、信息論等現(xiàn)代科學(xué)技術(shù)。    隨著現(xiàn)代電子科學(xué)的不斷發(fā)展與進(jìn)步,電子計(jì)算機(jī)已深深介入機(jī)械制造的各個(gè)領(lǐng)域,誕生了一系列機(jī)、電、計(jì)算機(jī)一</p><p><b>  系統(tǒng)設(shè)計(jì) </b></p><p><b>  設(shè)計(jì)要求 </b></p>&l

30、t;p> ?。?)開機(jī)后,電機(jī)不轉(zhuǎn),按下啟動(dòng)鍵,電機(jī)旋轉(zhuǎn);按下正轉(zhuǎn)鍵,電機(jī)正轉(zhuǎn);按下反轉(zhuǎn)鍵,電機(jī)反轉(zhuǎn)</p><p> ?。?)電路設(shè)計(jì)完成后,用Keil11和Proteus進(jìn)行仿真,模擬操作實(shí)驗(yàn),實(shí)現(xiàn)電機(jī)正反轉(zhuǎn)</p><p><b>  設(shè)計(jì)構(gòu)思 </b></p><p>  實(shí)現(xiàn)設(shè)計(jì)功能的核心元素是單片機(jī),它的可編程控制功能可以實(shí)現(xiàn)

31、電機(jī)速度的調(diào)節(jié)。要組成一個(gè)簡(jiǎn)單的系統(tǒng),必須存在單片機(jī)信號(hào)的輸入與輸出,輸出信號(hào)控制步進(jìn)電機(jī)的調(diào)速。而對(duì)步進(jìn)電機(jī)而言,單片機(jī)的輸出信號(hào)太小,不足以驅(qū)動(dòng)電機(jī),故需加一個(gè)電機(jī)驅(qū)動(dòng)器,實(shí)現(xiàn)電機(jī)驅(qū)動(dòng)。</p><p>  由此可見,該系統(tǒng)應(yīng)由四大模塊構(gòu)成:輸入模塊、單片機(jī)控制模塊、步進(jìn)電機(jī)驅(qū)動(dòng)模塊、步進(jìn)電機(jī)執(zhí)行模塊。</p><p>  圖 21 系統(tǒng)的設(shè)計(jì)思路圖</p><

32、p>  輸入模塊:為單片機(jī)提供輸入信號(hào)。根據(jù)要求,本設(shè)計(jì)應(yīng)存在四個(gè)輸入信號(hào):?jiǎn)?dòng)輸入、停止輸入、加速輸入、減速輸入。我們可以用鍵盤實(shí)現(xiàn)輸入的方法,使用鍵盤的四個(gè)鍵實(shí)現(xiàn)。</p><p>  單片機(jī) :?jiǎn)纹瑱C(jī)具有可編程控制功能,能通過(guò)對(duì)單片機(jī)進(jìn)行編程實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)速度的控制。由輸入模塊獲得輸入信號(hào),根據(jù)單片機(jī)內(nèi)部程序處理,輸出相應(yīng)的控制信號(hào)。</p><p>  步進(jìn)電機(jī)驅(qū)動(dòng)模塊 :

33、實(shí)現(xiàn)驅(qū)動(dòng)步進(jìn)電機(jī)的功能。由單片機(jī)獲得信號(hào),輸出信號(hào)對(duì)步進(jìn)電機(jī)控制。</p><p>  步進(jìn)電機(jī)執(zhí)行模塊 : 實(shí)際上就是步進(jìn)電機(jī)本身。前面輸出的信號(hào)控制步進(jìn)電機(jī),實(shí)現(xiàn)對(duì)步進(jìn)電機(jī)的控制,完成設(shè)計(jì)要求。</p><p><b>  設(shè)計(jì)元件的選型 </b></p><p>  輸入模塊可以使用鍵盤輸入,使用鍵盤的四個(gè)鍵分別代表啟動(dòng)、停止、加速、減速

34、;單片機(jī)選擇MCS-51的核心成員AT89C51;步進(jìn)電機(jī)驅(qū)動(dòng)模塊可以選用小型步進(jìn)電機(jī)電路ULN2003A </p><p>  系統(tǒng)核心元件的介紹 </p><p><b>  單片機(jī)簡(jiǎn)介 </b></p><p><b>  單片機(jī)的基本組成</b></p><p>  單片機(jī)的結(jié)構(gòu)特征是將組成

35、計(jì)算機(jī)的基本部件集成在一塊晶體芯片上,構(gòu)成一臺(tái)功能獨(dú)特的、完整的單片微型計(jì)算機(jī) </p><p>  圖 31 單片機(jī)的典型結(jié)構(gòu)框圖</p><p>  下面簡(jiǎn)要介紹各組成部分。</p><p><b> ?。?)中央處理器</b></p><p>  是單片機(jī)的核心單元,通常由算術(shù)邏輯運(yùn)算部件ALU和控制部件構(gòu)成,

36、另外增設(shè)了“面向控制”的處理功能,如位處理、查表、多種跳轉(zhuǎn)、乘除法運(yùn)算、狀態(tài)檢測(cè)、中斷處理等,增強(qiáng)了實(shí)時(shí)性。CPU就象人的大腦一樣,決定了單片機(jī)的運(yùn)算能力和處理速度。 </p><p><b> ?。?)存儲(chǔ)器</b></p><p>  單片機(jī)的存儲(chǔ)空間有兩種基本結(jié)構(gòu)。一種是普林斯頓結(jié)構(gòu)(Princeton),將程序和數(shù)據(jù)合用一個(gè)存儲(chǔ)器空間,即ROM和RAM的地址同

37、在一個(gè)空間里分配不同的地址。CPU訪問(wèn)存儲(chǔ)器時(shí),一個(gè)地址對(duì)應(yīng)惟一的一個(gè)存儲(chǔ)單元,可以是ROM,也可以是RAM,用同類的訪問(wèn)指令。另一種是將程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器截然分開,分別尋址的結(jié)構(gòu),稱為哈佛(Harvard)結(jié)構(gòu)。CPU用不同的指令訪問(wèn)不同的存儲(chǔ)器空間。由于單片機(jī)實(shí)際應(yīng)用中“面向控制”的特點(diǎn),一般需要較大的程序存儲(chǔ)器。目前,包括MCS-51和80C51系列的單片機(jī)均采用程序存儲(chǔ)器和數(shù)據(jù)存儲(chǔ)器截然分開的哈佛結(jié)構(gòu)。</p>

38、<p> ?、?數(shù)據(jù)存儲(chǔ)器(RAM)</p><p>  在單片機(jī)中,用隨機(jī)存取的存儲(chǔ)器(RAM)來(lái)存儲(chǔ)數(shù)據(jù),暫存運(yùn)行期間的數(shù)據(jù)、中間結(jié)果、緩沖和標(biāo)志位等,所以稱之為數(shù)據(jù)存儲(chǔ)器。一般在單片機(jī)內(nèi)部設(shè)置一定容量(64B~256B)的RAM,并以高速RAM的形式集成在單片機(jī)內(nèi),以加快單片機(jī)的運(yùn)行速度。同時(shí),單片機(jī)內(nèi)還把專用的寄存器和通用的寄存器放在同一片內(nèi)RAM統(tǒng)一編址,以利于運(yùn)行速度的提高。對(duì)于某些應(yīng)用系

39、統(tǒng),還可以外部擴(kuò)展數(shù)據(jù)存儲(chǔ)器。</p><p>  ② 程序存儲(chǔ)器(ROM)</p><p>  單片機(jī)的應(yīng)用中常常將開發(fā)調(diào)試成功后的應(yīng)用程序存儲(chǔ)在程序存儲(chǔ)器中,因?yàn)椴辉俑淖儯赃@種存儲(chǔ)器都采用只讀存儲(chǔ)器ROM的形式。</p><p>  單片機(jī)內(nèi)部的程序存儲(chǔ)器常有以下幾種形式:</p><p>  掩膜ROM(Mask ROM) 它是由

40、半導(dǎo)體廠家在芯片生產(chǎn)封裝時(shí),將用戶的應(yīng)用程序代碼通過(guò)掩膜工藝制作到單片機(jī)的ROM區(qū)中,一旦寫入后用戶則不能修改。所以它適合于程序已定型,并大批量使用的場(chǎng)合。8051就是采用掩膜ROM的單片機(jī)型號(hào)。</p><p>  EPROM 此種芯片帶有透明窗口,可通過(guò)紫外線擦除程序存儲(chǔ)器的內(nèi)容。應(yīng)用程序可通過(guò)專門的寫入器脫機(jī)寫入到單片機(jī)中,需要更改時(shí)可通過(guò)紫外線擦除后重新寫入。8751就是采用EPROM的單片機(jī)型號(hào)。&l

41、t;/p><p>  ROMLESS 這種單片機(jī)內(nèi)部沒有程序存儲(chǔ)器,使用時(shí)必須在外部并行擴(kuò)展一片EPROM作為程序存儲(chǔ)器。8031就是ROMLESS型的單片機(jī)。</p><p>  OTP(one time programmable)ROM 這是用戶一次性編程寫入的程序存儲(chǔ)器。用戶可通過(guò)專用的寫入器將應(yīng)用程序?qū)懭隣TPROM中,但只允許寫入一次。</p><p> 

42、 Flash ROM(MTP ROM)閃速存儲(chǔ)器 這是一種可由用戶多次編程寫入的程序存儲(chǔ)器。它不需紫外線擦除,編程與擦除完全用電實(shí)現(xiàn),數(shù)據(jù)不易揮發(fā),可保存10年。編程/擦除速度快,4KB編程只需數(shù)秒,擦除只需10ms。例如AT89系列單片機(jī),可實(shí)現(xiàn)在線編程,也可下載。這是目前大力發(fā)展的一種ROM,大有取代EPROM型產(chǎn)品之勢(shì)。</p><p><b> ?。?)并行I/O口</b><

43、/p><p>  單片機(jī)為了突出控制的功能,提供了數(shù)量多、功能強(qiáng)、使用靈活的并行I/O口。使用上不僅可靈活地選擇輸入或輸出,還可作為系統(tǒng)總線或控制信號(hào)線,從而為擴(kuò)展外部存儲(chǔ)器和I/O接口提供了方便。</p><p><b> ?。?)串行I/O口</b></p><p>  高速的8位單片機(jī)都可提供全雙工串行I/O口,因而能和某些終端設(shè)備進(jìn)行串行通

44、信,或者和一些特殊功能的器件相連接。</p><p> ?。?)定時(shí)器/計(jì)數(shù)器</p><p>  在實(shí)際的應(yīng)用中,單片機(jī)往往需要精確地定時(shí),或者需對(duì)外部事件進(jìn)行計(jì)數(shù),因而在單片機(jī)內(nèi)部設(shè)置了定時(shí)器/計(jì)數(shù)器電路,通過(guò)中斷,實(shí)現(xiàn)定時(shí)/計(jì)數(shù)的自動(dòng)處理。</p><p><b>  (6)系統(tǒng)時(shí)鐘</b></p><p>  通

45、常需要外接石英晶體或其它振蕩源來(lái)提供時(shí)鐘信號(hào)輸入,也有的使用內(nèi)部RC振蕩器。</p><p><b>  單片機(jī)的特點(diǎn) </b></p><p>  單片機(jī)獨(dú)特的結(jié)構(gòu)決定了它具有如下特點(diǎn)。</p><p> ?。?)高集成度、高可靠性</p><p>  單片機(jī)將各功能部件集成在一塊晶體芯片上,集成度很高,體積自然也是最

46、小的。芯片本身是按工業(yè)測(cè)控環(huán)境要求設(shè)計(jì)的,內(nèi)部布線很短,其抗工業(yè)噪音性能優(yōu)于一般通用的CPU。單片機(jī)程序指令,常數(shù)及表格等固化在ROM中不易破壞,許多信號(hào)通道均在一個(gè)芯片內(nèi),故可靠性高。</p><p><b> ?。?)控制功能強(qiáng)</b></p><p>  為了滿足對(duì)對(duì)象的控制要求,單片機(jī)的指令系統(tǒng)均有極豐富的條件:分支轉(zhuǎn)移能力、I/O口的邏輯操作及位處理能力,非

47、常適用于專門的控制功能。</p><p>  (3)低電壓、低功耗</p><p>  為了滿足廣泛使用于便攜式系統(tǒng),許多單片機(jī)內(nèi)的工作電壓僅為1.8V~3.6V,而工作電流僅為數(shù)百微安。</p><p> ?。?)優(yōu)異的性能價(jià)格比</p><p>  單片機(jī)的性能極高。為了提高速度和運(yùn)行效率,單片機(jī)已開始使用RISC流水線和DSP等技術(shù)。單

48、片機(jī)的尋址能力也已突破64KB的限制,有的已可達(dá)到1MB和16MB,片內(nèi)的ROM容量可達(dá)62MB,RAM容量則可達(dá)2MB。由于單片機(jī)的廣泛使用,因而銷量極大,各大公司的商業(yè)競(jìng)爭(zhēng)更使其價(jià)格十分低廉,其性能價(jià)格比極高。</p><p><b>  單片機(jī)的應(yīng)用 </b></p><p>  由于單片機(jī)功能的飛速發(fā)展,它的應(yīng)用范圍日益廣泛,已遠(yuǎn)遠(yuǎn)超出了計(jì)算機(jī)科學(xué)的領(lǐng)域。小到

49、玩具、信用卡,大到航天器、機(jī)器人,從實(shí)現(xiàn)數(shù)據(jù)采集、過(guò)程控制、模糊控制等智能系統(tǒng)到人類的日常生活,到處都離不開單片機(jī)。其主要的應(yīng)用領(lǐng)域如下。</p><p> ?。?)在測(cè)控系統(tǒng)中的應(yīng)用</p><p>  單片機(jī)可以用于構(gòu)成各種工業(yè)控制系統(tǒng)、自適應(yīng)控制系統(tǒng)、數(shù)據(jù)采集系統(tǒng)等。例如,工業(yè)上的鍋爐控制、電機(jī)控制、車輛檢測(cè)系統(tǒng)、水閘自動(dòng)控制、數(shù)控機(jī)床及軍事上的雷達(dá)、導(dǎo)彈系統(tǒng)等。</p>

50、<p> ?。?)在智能化儀器儀表中的應(yīng)用</p><p>  單片機(jī)應(yīng)用于儀器儀表設(shè)備中促使儀器儀表向數(shù)字化、智能化、多功能化和綜合化等方向發(fā)展。單片機(jī)的軟件編程技術(shù)使長(zhǎng)期以來(lái)測(cè)量?jī)x表中的誤差修正、線性化的處理等難題迎刃而解。</p><p> ?。?)在機(jī)電一體化中的應(yīng)用</p><p>  單片機(jī)與傳統(tǒng)的機(jī)械產(chǎn)品結(jié)合使傳統(tǒng)的機(jī)械產(chǎn)品結(jié)構(gòu)簡(jiǎn)化,控制

51、走向智能化,構(gòu)成新一代的機(jī)電一體化產(chǎn)品。這是機(jī)械工業(yè)發(fā)展的方向。</p><p> ?。?)在智能接口中的應(yīng)用</p><p>  計(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ù)字濾波、誤差修正、線性化處理等。&

52、lt;/p><p> ?。?)在人類生活中的應(yīng)用</p><p>  單片機(jī)由于其價(jià)格低廉、體積小巧,被廣泛應(yīng)用在人類生活的諸多場(chǎng)合,如洗衣機(jī)、電冰箱、空調(diào)器、電飯煲、視聽音響設(shè)備、大屏幕顯示系統(tǒng)、電子玩具、信用卡、樓宇防盜系統(tǒng)等。單片機(jī)將使人類的生活更加方便舒適,豐富多彩。</p><p>  AT89C51的簡(jiǎn)介 </p><p>  AT8

53、9C51的結(jié)構(gòu) </p><p>  本系統(tǒng)以MCS-51單片機(jī)成員中的AT89C51為控制核心。AT89C51是美國(guó)ATMEL公司生產(chǎn)的低功耗,高性能CMOS 8位單片機(jī),片內(nèi)含4k bytes的可系統(tǒng)編程的Flash只讀程序內(nèi)存,器件采用ATMEL公司的高密度、非易失性存儲(chǔ)技術(shù)生產(chǎn),兼容標(biāo)準(zhǔn)8051指令系統(tǒng)及引腳。它集Flash程序內(nèi)存既可在線編程(ISP)也可用傳統(tǒng)方法進(jìn)行編程及通用8位微處理器于單片芯片中

54、,ATMEL公司的功能強(qiáng)大,低價(jià)位AT89C51單片機(jī)可為您提供許多高性價(jià)比的應(yīng)用場(chǎng)合,它靈活應(yīng)用于各種控制領(lǐng)域。</p><p>  其與MCS-51產(chǎn)品指令系統(tǒng)完全兼容,但性能有些自己的特征:</p><p>  4K字節(jié)在系統(tǒng)編程(ISP)Flash閃速內(nèi)存;1000次擦寫周期;2568字節(jié)的內(nèi)部RAM;3個(gè)16位定時(shí)/計(jì)數(shù)器;5個(gè)中斷源;全雙工串行UART通道;低功耗空閑和掉電模式

55、;中斷可從空閑模喚醒系統(tǒng);看門狗(WDT)及雙數(shù)據(jù)指針</p><p>  AT89C51的引腳介紹 </p><p>  1.電源引腳Vcc和GND </p><p>  Vcc:電源電壓,GND:接地端。</p><p>  2.時(shí)鐘電路引腳XTALl和XTAL2</p><p>  2個(gè)時(shí)鐘引腳XTAL1、XTA

56、L2外接晶體與片內(nèi)反相放大器構(gòu)成了1個(gè)振蕩器,它為單片機(jī)提供了時(shí)鐘控制信號(hào)。2個(gè)時(shí)鐘引腳也可外接獨(dú)立的晶體振蕩器。</p><p>  XTAL2:接外部晶體和微調(diào)電容的一端。在內(nèi)它是振蕩電路反相放大器的輸出端,振蕩電路的頻率就是晶體的固有頻率。</p><p>  XTAL 1:接外部晶體的微調(diào)電容的另一端。在片內(nèi)它是振蕩電路反相放大器的輸入端。 </p><p>

57、;  3.控制信號(hào)引腳RST</p><p>  RST是復(fù)位信號(hào)輸入端,高電平有效。當(dāng)此輸入端保持兩個(gè)機(jī)器周期(24個(gè)時(shí)鐘振蕩周期)的高電平時(shí),可以完成復(fù)位操作。</p><p>  4. I/O(輸入/輸出) P0、 P1、 P2和 P3</p><p>  標(biāo)準(zhǔn)51單片機(jī)都有4個(gè)I/O(輸入/輸出)口,分別為:</p><p>  P0

58、口:P0口是一個(gè)漏極開路的8位雙向輸入輸出口。作為漏極八路的輸出端口,每次能驅(qū)動(dòng)8個(gè)Ls型TTL負(fù)載。當(dāng)P0口作為輸入口使用時(shí),其先向鎖存器(地址80H)寫入全1,此時(shí)P0口的全部引腳懸空,叫作為高阻抗輸入。</p><p>  P1口:P1口是一個(gè)帶上拉電阻的8位準(zhǔn)雙向I/O端口每一位能驅(qū)動(dòng)(吸收成輸出電流)4個(gè)LS型TTL負(fù)載。</p><p>  在P1口作為輸入口使用時(shí),應(yīng)先向P1

59、口鎖存器(地址90H)寫入全1,上拉電阻接成高電平。</p><p>  P2口:P2口是一個(gè)帶內(nèi)部上接電阻的8位準(zhǔn)雙向輸入輸出口。P2口的每一位能驅(qū)動(dòng)4個(gè)LS型TTL負(fù)載。</p><p>  P3口:P3口是一個(gè)帶內(nèi)部上接電阻的8位準(zhǔn)雙向輸入輸出口。P3口的每一位能驅(qū)動(dòng)(吸收或輸出電流)4個(gè)LS型TTL負(fù)載。P3口與其它的I/O口有很大區(qū)別,它除作為—般準(zhǔn)雙向I/O口外,每個(gè)引腳還具有

60、專門的功能,見表3-1。</p><p>  表格 31 P3各引腳</p><p><b>  系統(tǒng)的硬件設(shè)計(jì) </b></p><p><b>  輸入電路的設(shè)計(jì)</b></p><p>  此次設(shè)計(jì)用鍵盤實(shí)現(xiàn)輸入的方法。鍵盤在單片機(jī)應(yīng)用系統(tǒng)中能實(shí)現(xiàn)向單片機(jī)輸入數(shù)據(jù)、傳送命令等功能,是人干預(yù)

61、計(jì)算機(jī)的主要手段。下面對(duì)鍵盤進(jìn)行簡(jiǎn)單的介紹</p><p><b>  鍵盤輸入 </b></p><p><b>  1.鍵盤輸入的特點(diǎn)</b></p><p>  鍵盤是標(biāo)準(zhǔn)的輸入設(shè)備,它實(shí)際上是一組按鍵開關(guān)的集合。通常,鍵盤開關(guān)利用了機(jī)械觸點(diǎn)的合、斷作用。</p><p>  2.鍵盤按鍵的確

62、認(rèn) </p><p>  鍵的閉合與否,反映在行線輸出電壓上就是呈現(xiàn)高電平或低電平,如果高電平表示鍵斷開,低電平表示鍵閉合,通過(guò)對(duì)行線電平的檢測(cè),便可確認(rèn)按鍵是否按下。</p><p>  圖 41 鍵閉合時(shí)的行線輸出電壓波形</p><p>  3.如何消除按鍵抖動(dòng) </p><p>  常用軟件來(lái)消除按鍵抖動(dòng)。其基本思想是:每次要確認(rèn)鍵

63、盤是否有鍵按下的時(shí)候,對(duì)鍵盤進(jìn)行兩次掃描,兩次掃描具有一段時(shí)間間隔。如果掃描結(jié)果都為低電平,則說(shuō)明鍵已按下;反之,則沒有鍵按下。</p><p>  鍵盤接口的工作原理 </p><p>  常見的鍵盤可分為獨(dú)立按鍵式鍵盤和行列掃描式鍵盤。由于步進(jìn)電機(jī)所用的輸入較少,所以此次設(shè)計(jì)用獨(dú)立式鍵盤。</p><p>  獨(dú)立式鍵盤就是各鍵相互獨(dú)立,每個(gè)鍵各接一根輸入線,通

64、過(guò)檢測(cè)輸入線的電平可以很容易的判斷哪個(gè)鍵被按下。</p><p>  該設(shè)計(jì)就是用了獨(dú)立是鍵盤的特點(diǎn),用鍵盤的輸入類似于一般按鈕,簡(jiǎn)單便捷。設(shè)計(jì)用了兩個(gè)鍵盤鍵,分別表示所輸入的信號(hào):正轉(zhuǎn)、反轉(zhuǎn)。注意:兩輸入信號(hào)都具有啟動(dòng)功能。</p><p>  AT89C51設(shè)計(jì)電路 </p><p>  89C51內(nèi)部有4KB閃爍存儲(chǔ)器,芯片本身就是個(gè)最小系統(tǒng)。在能滿足系統(tǒng)的性

65、能要求下,可與先考慮采用此種方案。用89C51單片機(jī)構(gòu)成最小應(yīng)用系統(tǒng)時(shí),只要將單片機(jī)接上時(shí)鐘電路和復(fù)位電路即可。</p><p>  圖 42 AT89C51的最小系統(tǒng)</p><p><b>  時(shí)鐘電路 </b></p><p>  時(shí)鐘電路用于產(chǎn)生單片機(jī)工作時(shí)所必需的時(shí)鐘控制信號(hào)。單片機(jī)內(nèi)的各功能部件是以時(shí)鐘信號(hào)為基準(zhǔn)的,有條不紊的

66、工作。因此,時(shí)鐘頻率直接影響單片機(jī)的速度。</p><p>  時(shí)鐘電路設(shè)計(jì)有兩種方式,一種是內(nèi)部時(shí)鐘方式,另一種是外部時(shí)鐘方式。此次設(shè)計(jì)用的是內(nèi)部時(shí)鐘方式:AT89C5內(nèi)部有一個(gè)用于構(gòu)成振蕩器的高增益反相放大器,引腳XTAL1和XTAL2分別是此放大器的輸入端和輸出端。。在XTAL1和XTAL2引腳上外接定時(shí)元件,內(nèi)部振蕩器就產(chǎn)生自激振蕩。定時(shí)元件通常采用石英晶體和微調(diào)電容組成的并聯(lián)諧振回路。晶體振蕩頻率可以在

67、1.2~12MHz之間選擇,電容值在5~30pF之間選擇。</p><p>  圖 43 內(nèi)部時(shí)鐘振蕩器</p><p><b>  復(fù)位電路 </b></p><p><b> ?。?)復(fù)位操作</b></p><p>  復(fù)位是單片機(jī)的初始化操作,只需給MCS-51的復(fù)位引腳RST加上大于2

68、個(gè)機(jī)器周期(24個(gè)振蕩周期)的高電平就可以使MCS-51復(fù)位。復(fù)位時(shí), PC初始化為0000H ,使單片機(jī)從0000H單元開始執(zhí)行程序。除了進(jìn)入系統(tǒng)的正常初始化之外,當(dāng)由于程序運(yùn)行出錯(cuò)或操作錯(cuò)誤使系統(tǒng)處于死鎖狀態(tài)時(shí),為擺脫困境,也需按復(fù)位鍵重新啟動(dòng)。除PC之外,復(fù)位操作還對(duì)其他一些寄存器有影響,它們的復(fù)位狀態(tài)如表4-1</p><p>  表格 41 一些寄存器的復(fù)位狀態(tài)</p><p&g

69、t;  由于單片機(jī)內(nèi)部的各個(gè)功能部件均受特殊功能寄存器控制,程序運(yùn)行直接受程序計(jì)數(shù)器控制。表4-1中各寄存器復(fù)位時(shí)的狀態(tài)決定了單片機(jī)內(nèi)部有關(guān)功能部件的初始狀態(tài)。</p><p><b> ?。?)復(fù)位電路</b></p><p>  AT89C51的復(fù)位電路是由外部的復(fù)位電路來(lái)實(shí)現(xiàn)的。如圖4-4所示</p><p>  圖 44 AT89C

70、51的片內(nèi)復(fù)位結(jié)構(gòu)</p><p>  復(fù)位引腳通過(guò)施密特觸發(fā)器與復(fù)位電路相連,施密特觸發(fā)器用來(lái)抑制噪音,在每個(gè)機(jī)器周期的S5P2,施密特觸發(fā)器的輸出電平有復(fù)位電路采樣一次,然后才能得到內(nèi)部操作所需要的信號(hào)。</p><p>  復(fù)位操作有上電自動(dòng)復(fù)位相按鍵手動(dòng)復(fù)位兩種方式。</p><p>  上電自動(dòng)復(fù)位是通過(guò)外部復(fù)位電路的電容充電來(lái)實(shí)現(xiàn)的。這佯,只要電源Vcc

71、的上升時(shí)間不超過(guò)1ms,就可以實(shí)現(xiàn)自動(dòng)上電復(fù)位。</p><p>  按鍵手動(dòng)復(fù)位有電平方式和脈沖方式兩種。其中,電平復(fù)位是通過(guò)使復(fù)位端經(jīng)電阻與Vcc電源接通而實(shí)現(xiàn)的;而按鍵脈沖復(fù)位則是利用RC微分電路產(chǎn)生的正脈沖來(lái)實(shí)現(xiàn)的。 </p><p>  此次設(shè)計(jì)采用的是按鍵電平復(fù)位電路,如圖4-5所示</p><p>  圖 45 按鍵復(fù)位電路</p>&

72、lt;p><b>  步進(jìn)電機(jī)驅(qū)動(dòng)電路 </b></p><p>  因?yàn)槭褂玫氖切⌒筒竭M(jìn)電機(jī),對(duì)電壓和電流要求不是很高,為了說(shuō)明應(yīng)用原理,故采用最簡(jiǎn)單的驅(qū)動(dòng)電路,一般的驅(qū)動(dòng)電路可以用圖4-6的形式。</p><p>  圖 46 一般驅(qū)動(dòng)電路</p><p>  而在實(shí)際應(yīng)用中一般驅(qū)動(dòng)路數(shù)不止一路,用上圖的分立電路體積大,很多場(chǎng)合用現(xiàn)

73、成的集成電路作為多路驅(qū)動(dòng)。常用的小型步進(jìn)電機(jī)驅(qū)動(dòng)電路可以用ULN2003或ULN2803。此次設(shè)計(jì)使用的是ULN2003。ULN2003是高壓大電流達(dá)林頓晶體管陣列系列產(chǎn)品,具有電流增益高、工作電壓高、溫度范圍寬、帶負(fù)載能力強(qiáng)等特點(diǎn),適應(yīng)于各類要求高速大功率驅(qū)動(dòng)的系統(tǒng)。ULN2003A由7組達(dá)林頓晶體管陣列和相應(yīng)的電阻網(wǎng)絡(luò)以及鉗位二極管網(wǎng)絡(luò)構(gòu)成,具有同時(shí)驅(qū)動(dòng)7組負(fù)載的能力,為單片雙極型大功率高速集成電路。</p><

74、p>  圖 47 ULN2003內(nèi)部框圖及等效電路圖</p><p>  ULN2003A型高壓大電流達(dá)林頓晶體管陣列電路的典型應(yīng)用電路框圖如圖4-8所示。鉗位二極管用于保護(hù)線圈通斷時(shí)的反電動(dòng)勢(shì)擊穿集成電路,可以看出,該電路的應(yīng)用非常簡(jiǎn)單。</p><p>  圖 48 ULN2003的應(yīng)用驅(qū)動(dòng)電路</p><p><b>  步進(jìn)電機(jī) <

75、;/b></p><p><b>  步進(jìn)電機(jī)原理 </b></p><p>  步進(jìn)電機(jī)是機(jī)電控制中一種常用的執(zhí)行機(jī)構(gòu),它的用途是將電脈沖轉(zhuǎn)化為角位移,它的的驅(qū)動(dòng)電路根據(jù)控制信號(hào)工作,控制信號(hào)由單片機(jī)產(chǎn)生。當(dāng)步進(jìn)驅(qū)動(dòng)器接收到一個(gè)脈沖信號(hào),它就驅(qū)動(dòng)步進(jìn)電機(jī)按設(shè)定的方向轉(zhuǎn)動(dòng)一個(gè)固定的角度,控制換相順序,即通電控制脈沖必須嚴(yán)格按照一定順序分別控制各相的通斷。通過(guò)控制

76、脈沖個(gè)數(shù)即可以控制角位移量,從而達(dá)到準(zhǔn)確定位的目的??刂撇竭M(jìn)電機(jī)的轉(zhuǎn)向,即給定工作方式正序換相通電,步進(jìn)電機(jī)正轉(zhuǎn),若按反序通電換相,則電機(jī)就反轉(zhuǎn)??刂撇竭M(jìn)電機(jī)的速度,即給步進(jìn)電機(jī)發(fā)一個(gè)控制脈沖,它就轉(zhuǎn)一步,再發(fā)一個(gè)脈沖,它會(huì)再轉(zhuǎn)一步,兩個(gè)脈沖的間隔越短,步進(jìn)電機(jī)就轉(zhuǎn)得越快。同時(shí)通過(guò)控制脈沖頻率來(lái)控制電機(jī)轉(zhuǎn)動(dòng)的速度和加速度,從而達(dá)到調(diào)速的目的。</p><p>  步進(jìn)電機(jī)勵(lì)磁控制 </p><

77、;p>  步進(jìn)電機(jī)有三線式、五線式、六線式3種,但其控制方式均相同,都必須以脈沖電流驅(qū)動(dòng)。若每旋轉(zhuǎn)一圈以20個(gè)勵(lì)磁信號(hào)來(lái)計(jì)算,則每個(gè)勵(lì)磁信號(hào)前進(jìn)18o,其旋轉(zhuǎn)角度與脈沖數(shù)成正比,正反轉(zhuǎn)可由脈沖順序來(lái)控制。</p><p>  步進(jìn)電機(jī)的勵(lì)磁方式可分為全部勵(lì)磁及半步勵(lì)磁,全部勵(lì)磁又有1相勵(lì)磁及2相勵(lì)磁之分,而半步勵(lì)磁又稱1~2相勵(lì)磁。</p><p><b>  (1)1相勵(lì)

78、磁</b></p><p>  在每一瞬間只有一個(gè)線圈導(dǎo)通。消耗電力小,準(zhǔn)確度良好,但轉(zhuǎn)矩小,振動(dòng)大,每送一勵(lì)磁信號(hào)可走18O。若以1相勵(lì)磁法控制步進(jìn)電機(jī)正轉(zhuǎn),其勵(lì)磁順序表見表4-2。</p><p>  若勵(lì)磁信號(hào)反向傳送,則步進(jìn)電機(jī)反轉(zhuǎn)</p><p>  表格 42 勵(lì)磁順序A-B-C-D-A</p><p>  (2)

79、2相勵(lì)磁法 </p><p>  在每一瞬間會(huì)有2個(gè)線圈同時(shí)導(dǎo)通。因其轉(zhuǎn)矩大,振動(dòng)小,故為目前使用最多的勵(lì)磁方式,每送一勵(lì)磁信號(hào)可走18O。若以2相勵(lì)磁法控制步進(jìn)電機(jī)正轉(zhuǎn),其勵(lì)磁順序見表4-3。若勵(lì)磁信號(hào)反向傳送,則步進(jìn)電機(jī)反轉(zhuǎn)</p><p>  表格 43 勵(lì)磁順序AB-BC-CD-DA-AB</p><p> ?。?)1~2相勵(lì)磁法</p>&

80、lt;p>  為1相與2相輪流交替導(dǎo)通。因分辨率提高,且運(yùn)轉(zhuǎn)平滑,每送一勵(lì)磁信號(hào)可走90,故也被廣泛使用。若以1相勵(lì)磁法控制步進(jìn)電機(jī)正轉(zhuǎn),其勵(lì)磁順序見表4-4。若勵(lì)磁信號(hào)反向傳送,則步進(jìn)電機(jī)反轉(zhuǎn)</p><p>  表格 44勵(lì)磁順序:A-AB-B-BC-C-CD-D-DA-A</p><p>  電動(dòng)機(jī)的負(fù)載轉(zhuǎn)矩與速度成反比,速度越快負(fù)載轉(zhuǎn)矩越小,但速度快至其極限時(shí),步進(jìn)電機(jī)將不

81、再運(yùn)轉(zhuǎn)。所以在每走一步后,程序必須延時(shí)一段時(shí)間。</p><p>  為了提高設(shè)計(jì)的分辨率,此次設(shè)計(jì)使用的是半步勵(lì)磁法。每送一勵(lì)磁信號(hào),步進(jìn)電機(jī)可走90,系統(tǒng)的軟件設(shè)計(jì)也按照此原理進(jìn)行編程。</p><p><b>  系統(tǒng)的總體硬件電路</b></p><p>  如上所述,使用的是單片機(jī)AT89C51的最小系統(tǒng):?jiǎn)纹瑱C(jī)采用的內(nèi)部時(shí)鐘方式,晶

82、振的振蕩頻率為12MHZ,因此單片機(jī)的內(nèi)部時(shí)鐘頻率為12MHZ;單片機(jī)采用按鍵電平復(fù)位電路,利用手動(dòng)按鍵復(fù)位。</p><p>  單片機(jī)的外部輸入信號(hào)由鍵盤的按鍵實(shí)現(xiàn)輸入,鍵盤的按鍵接單片機(jī)的P0口,P0.0、P0.1分別代表正轉(zhuǎn)輸入、反轉(zhuǎn)按鍵。注意:P0口作輸出口使用時(shí),必須外加上拉電阻。</p><p>  單片機(jī)的輸出由P1口(P1.0、P1.1、P1.2、P1.3)實(shí)現(xiàn),與步進(jìn)電

83、機(jī)驅(qū)動(dòng)器ULN2003A的1B、2B、3B、4B對(duì)應(yīng)相連。ULN2003的A端與步進(jìn)電機(jī)的相位引腳相連,實(shí)現(xiàn)步進(jìn)電機(jī)的驅(qū)動(dòng)。</p><p><b>  硬件電路圖如下:</b></p><p>  圖 49 系統(tǒng)的硬件電路圖</p><p><b>  系統(tǒng)的軟件設(shè)計(jì) </b></p><p>

84、<b>  系統(tǒng)的程序分析 </b></p><p>  本程序主要由鍵盤程序、步進(jìn)電機(jī)驅(qū)動(dòng)程序兩部份組成。主程序首先初始化各變量,步進(jìn)電機(jī)驅(qū)動(dòng)的A、B引腳均輸出低電平,然后調(diào)用鍵盤程序,并作判斷,判斷是正轉(zhuǎn)鍵還是反轉(zhuǎn)鍵按下,并調(diào)用相應(yīng)步進(jìn)電機(jī)驅(qū)動(dòng)程序。</p><p>  通過(guò)鍵盤提供兩種控制信號(hào),但由于鍵盤的按鍵輸出電壓是波動(dòng)的,可采用軟件消抖動(dòng)的方式。在第一次檢

85、測(cè)到有鍵按下時(shí),該鍵對(duì)應(yīng)的行線為低電平,執(zhí)行一段10ms的子程序后,確認(rèn)該鍵是否為低電平,如果仍為低電平,則確認(rèn)為有鍵按下。</p><p>  步進(jìn)電機(jī)的驅(qū)動(dòng)工作是通過(guò)步進(jìn)電機(jī)的半步勵(lì)磁方式實(shí)現(xiàn)的,由前述分析,當(dāng)正轉(zhuǎn)鍵按下時(shí),步進(jìn)電機(jī)應(yīng)正轉(zhuǎn)90,為實(shí)現(xiàn)這一角度,我們按照表4-4的勵(lì)磁順序?qū)Σ竭M(jìn)電機(jī)進(jìn)行控制。通過(guò)建立正轉(zhuǎn)模型,按順序循環(huán)將02H、06H、04H、0CH、08H、09H、01H、03H賦值給P1口,

86、這樣單片機(jī)的輸出信號(hào)可以驅(qū)動(dòng)步進(jìn)電機(jī)正轉(zhuǎn);如果要實(shí)現(xiàn)步進(jìn)電機(jī)的反轉(zhuǎn),將正轉(zhuǎn)模型中的值按反向順序賦值給P1口,這樣單片機(jī)的輸出信號(hào)可以驅(qū)動(dòng)步進(jìn)電機(jī)的正轉(zhuǎn)。</p><p><b>  軟件流程圖 </b></p><p>  圖 51主程序流程圖</p><p><b>  鍵盤程序的設(shè)計(jì) </b></p>

87、<p>  本設(shè)計(jì)使用的是獨(dú)立式鍵盤。我們對(duì)其進(jìn)行軟件編程,采用軟件消抖的方法,以查詢工作方式檢測(cè)各鍵的狀態(tài)。當(dāng)有且只有一鍵按下時(shí)才予以識(shí)別,如有兩個(gè)或多個(gè)鍵同時(shí)按下時(shí)將不予處理。S1表示正轉(zhuǎn)鍵,S2表示反轉(zhuǎn)鍵,相應(yīng)的正轉(zhuǎn)處理程序LOOPZ、反轉(zhuǎn)處理程序LOOPN。</p><p><b>  鍵盤程序如下:</b></p><p><b>  

88、KEY : </b></p><p>  MOV A,P0 ;讀鍵盤狀態(tài)</p><p>  ANL A ,#03H ;屏蔽 高6位</p><p>  MOV R3,A ;保存鍵盤狀態(tài)</p><p>  LCALL DELAY10 ;調(diào)用延時(shí)10m

89、s子程序,軟件區(qū)鍵盤抖動(dòng)</p><p>  MOV A,P0 ;再讀鍵盤狀態(tài)</p><p>  ANL A,#03H ;屏蔽 高6位</p><p>  CJNE A,R3,RETURN ;2次結(jié)果不一樣,說(shuō)明是抖動(dòng)引起的的</p><p>  CJNE A,#01H,LOOPN ;

90、2次結(jié)果一樣,有鍵按下,S1未按下,轉(zhuǎn)FZ1</p><p>  LJMP LOOPZ ;S1按下,轉(zhuǎn)S1鍵處理子程序LOOPZ</p><p><b>  FZ1: </b></p><p>  LJMP LOOPN ;S2按下,處理子程序LOOPN</p><p>  RETURN:

91、RET ;重鍵或無(wú)鍵按下,從子程序中返回</p><p>  DELAY10: MOV R7,#40</p><p>  DEL1: MOV R6,#25</p><p>  DEL2:DJNE R6,DEL2</p><p>  DJNE R7,DEL1</p><p><

92、;b>  RET</b></p><p><b>  步進(jìn)電機(jī)驅(qū)動(dòng)程序 </b></p><p><b>  驅(qū)動(dòng)程序如下:</b></p><p><b>  ORG00H</b></p><p>  START:MOVDPTR,#TAB1<

93、/p><p>  MOVR0,#03</p><p>  MOVR4,#0</p><p>  MOVP1,#3</p><p>  WAIT:MOVP1,R0;初始角度,0度</p><p>  MOVP0,#0FFH</p><p>  JNBP0.0,POS

94、;判斷鍵盤狀態(tài)</p><p>  JNBP0.1,NEG</p><p><b>  SJMPWAIT</b></p><p>  JUST:JBP0.1,NEG;首次按鍵處理</p><p>  POS:MOVA,R4;正轉(zhuǎn)9度</p><p>  MOVCA,

95、@A+DPTR</p><p><b>  MOVP1,A</b></p><p>  ACALL DELAY</p><p><b>  INCR4</b></p><p><b>  AJMPKEY</b></p><p>  NEG:

96、MOVR4,#6;反轉(zhuǎn)9度</p><p><b>  MOVA,R4</b></p><p>  MOVC A,@A+DPTR</p><p>  MOVP1, A</p><p>  ACALL DELAY</p><p>  AJMP KEY<

97、;/p><p><b>  KEY : </b></p><p>  MOV A,P0 ;讀鍵盤狀態(tài)</p><p>  ANL A,#03H ;屏蔽 高6位</p><p>  MOV R3,A ;保存鍵盤狀態(tài)</p><p> 

98、 LCALL DELAY10 ;調(diào)用延時(shí)10ms子程序,軟件區(qū)鍵盤抖動(dòng)</p><p>  MOV A,P0 ;再讀鍵盤狀態(tài)</p><p>  ANL A,#03H ;屏蔽 高6位</p><p>  CJNE A,R3,RETURN ;2次結(jié)果不一樣,說(shuō)明是抖動(dòng)引起的的</p><p

99、>  CJNE A,#01H,F(xiàn)Z1 ;2次結(jié)果一樣,有鍵按下,S1未按下,轉(zhuǎn)LOOPN</p><p>  CJNER4,#8,LOOPZ;是結(jié)束標(biāo)志</p><p>  MOVR4,#0</p><p>  RETURN: RET ;重鍵或無(wú)鍵按下,從子程序中返回</p><p>  DELAY

100、10:MOV R7,#40</p><p>  DEL1: MOV R6,#25</p><p>  DEL2:DJNE R6,DEL2</p><p>  DJNE R7,DEL1</p><p><b>  RET</b></p><p>  LOOPZ:MOVA,R4&

101、lt;/p><p>  MOVCA,@A+DPTR</p><p>  MOVP1,A;輸出控制脈沖</p><p>  ACALL DELAY;程序延時(shí)</p><p>  INCR4;地址加1</p><p><b>  AJMPKEY</b></p>

102、<p>  FZ1:JBP0.1,KEY</p><p>  CJNER4,#255,LOOPF;是結(jié)束標(biāo)志</p><p>  MOVR4,#7</p><p>  LOOPF:DECR4</p><p><b>  MOVA,R4</b></p><p>

103、  MOVCA,@A+DPTR</p><p>  MOVP1,A;輸出控制脈沖</p><p>  ACALL DELAY;程序延時(shí)</p><p><b>  AJMPKEY</b></p><p>  DELAY:MOVR6,#5</p><p>  DD1:

104、MOVR5,#080H</p><p>  DD2:MOVR7,#0</p><p>  DD3:DJNZR7,DD3</p><p>  DJNZR5,DD2</p><p>  DJNZR6,DD1</p><p><b>  RET</b></p><p

105、>  TAB1:DB02H,06H,04H,0CH</p><p>  DB08H,09H,01H,03H;正轉(zhuǎn)模型資料</p><p><b>  END</b></p><p><b>  電路的仿真</b></p><p><b>  仿真的介紹 </b&

106、gt;</p><p>  在設(shè)計(jì)過(guò)程中,由于一些硬件電路的局限性,或?yàn)榱私虒W(xué)的方便,可通過(guò)用軟件的方式模擬硬件電路的運(yùn)行,這就是電路的仿真。通過(guò)仿真,模擬硬件電路,從而更好的應(yīng)用于硬件電路。</p><p>  此次設(shè)計(jì)通過(guò)Keil11與Proteus聯(lián)機(jī)進(jìn)行仿真。</p><p>  Proteus與其它單片機(jī)仿真軟件不同的是,它不僅能仿真單片機(jī) CPU 的工作

107、情況,也能仿真單片機(jī)外圍電路或沒有單片機(jī)參與的其它電路的工作情況。因此在仿真和程序調(diào)試時(shí),關(guān)心的不再是某些語(yǔ)句執(zhí)行時(shí)單片機(jī)寄存器和存儲(chǔ)器內(nèi)容的改變,而是從工程的角度直接看程序運(yùn)行和電路工作的過(guò)程和結(jié)果。對(duì)于這樣的仿真實(shí)驗(yàn),從某種意義上講,是彌補(bǔ)了實(shí)驗(yàn)和工程應(yīng)用間脫節(jié)的矛盾和現(xiàn)象。</p><p>  利用Proteus和Keil的聯(lián)機(jī),實(shí)現(xiàn)硬件軟件的結(jié)合,形成一個(gè)單片機(jī)的應(yīng)用系統(tǒng)。它的資源充足,而且提供一定的實(shí)例

108、進(jìn)行參考,為設(shè)計(jì)提供方便。</p><p><b>  仿真的過(guò)程 </b></p><p> ?。?)打開Keil,新建Keil項(xiàng)目,選擇AT89C51單片機(jī)作為CPU,新建匯編源文件,編寫程序,將其導(dǎo)入到“Source Group1”中。在“Option for Target”對(duì)話窗口中,選中“Output”選項(xiàng)卡中的“Create HEX File”選項(xiàng)和“

109、Debug”選項(xiàng)卡中的“Use:Proteus VSM Simular”選項(xiàng)。編譯匯編源程序,改正程序中的錯(cuò)誤 </p><p> ?。?)在Proteus ISIS中,選中AT89C51并單擊鼠標(biāo)左鍵,打開“Edit Component”對(duì)話窗口,設(shè)置單片機(jī)晶振頻率為12MHZ,在此窗口中的“Program File”欄中,選擇先前用Keil生成的HEX文件。在Proteus ISIS的菜單欄中選擇“File”

110、-“Save Design”選項(xiàng),保存設(shè)計(jì)。在ProtreusISIS的菜單欄中,打開“Debug”下拉菜單,在菜單中選中“Use Remote Debug Monitor”選項(xiàng),以支持與Keil的聯(lián)合調(diào)試。</p><p> ?。?)在Keil的菜單欄中選擇“Debug”-“Start/Stop Debug Session”選項(xiàng),進(jìn)入程序調(diào)試環(huán)境。按“F5”鍵,順序運(yùn)行程序。調(diào)出“Proteus ISIS”界面

111、,按“正轉(zhuǎn)”和“反轉(zhuǎn)”按鍵,觀察步進(jìn)電機(jī)的狀態(tài),如圖</p><p>  圖 61 仿真電路圖</p><p>  當(dāng)軟件進(jìn)入仿真狀態(tài)時(shí),初始狀態(tài)如圖6-1,按下正轉(zhuǎn)鍵,步進(jìn)電機(jī)正轉(zhuǎn)9o,驅(qū)動(dòng)器ULN2003的引腳顯示燈按表4-4的順序所示,依次亮起。觀察亮燈次序。按下反轉(zhuǎn)鍵,步進(jìn)電機(jī)反向轉(zhuǎn)動(dòng)9o,驅(qū)動(dòng)器ULN2003的引腳顯示燈按表4-4反順序亮起。通過(guò)仿真模擬的方式實(shí)現(xiàn)電動(dòng)機(jī)的正反轉(zhuǎn)

112、。</p><p><b>  結(jié)束與展望 </b></p><p>  經(jīng)過(guò)這幾個(gè)月的學(xué)習(xí),我完成了我的畢業(yè)設(shè)計(jì):基于AT89C51的步進(jìn)電機(jī)控制。用單片機(jī)的可編程控制功能控制步進(jìn)電機(jī)的正反轉(zhuǎn)。為了完成此次設(shè)計(jì),我翻閱了許多關(guān)于單片機(jī)的介紹書籍,以及關(guān)于單片機(jī)硬件電路的設(shè)計(jì)的介紹。這些對(duì)我的畢業(yè)設(shè)計(jì)有著很大幫助,也使我對(duì)單片機(jī)有著更進(jìn)一步的了解。此外我還翻閱了一

113、些外文文獻(xiàn),對(duì)我的英語(yǔ)能力也有提高。這次畢業(yè)設(shè)計(jì),使我得到了一次用專業(yè)知識(shí)、專業(yè)技能分析和解決問(wèn)題全面系統(tǒng)的鍛煉。主要依靠自己,在實(shí)踐中學(xué)習(xí),在學(xué)習(xí)中實(shí)踐,學(xué)習(xí)了以往上課時(shí)不存學(xué)到的東西。</p><p>  以前的步進(jìn)電機(jī),是通過(guò)手動(dòng)控制。而隨著科技不斷的發(fā)展,單片機(jī)在生產(chǎn)過(guò)程控制、自動(dòng)檢測(cè)、數(shù)據(jù)采集與處理、科技計(jì)算、商業(yè)管理和辦公室自動(dòng)化等方面獲得了廣泛的應(yīng)用。它的發(fā)展迅速,已滲透到諸多學(xué)科的領(lǐng)域,以及人們生

114、活的各個(gè)方面。用單片機(jī)控制的步進(jìn)電機(jī),可以通過(guò)對(duì)程序的控制,來(lái)控制步進(jìn)電機(jī)正反轉(zhuǎn)或?qū)崿F(xiàn)其他功能。方便,快捷。</p><p>  雖然此次設(shè)計(jì)的功能很簡(jiǎn)單,但是限于能力的約束,在電路設(shè)計(jì)、軟件編程等難免會(huì)出現(xiàn)許多不足的地方,希望老師能夠給予批評(píng)和指正,我必將努力改正和學(xué)習(xí),爭(zhēng)取做出一篇優(yōu)秀的畢業(yè)設(shè)計(jì)。</p><p><b>  參考文獻(xiàn) </b></p>

115、<p>  [1] 張毅剛,彭喜元,董繼成.單片機(jī)原理及應(yīng)用[M].北京:高等教育出版社,2003</p><p>  [2] 張毅剛.MCS-51單片機(jī)應(yīng)用設(shè)計(jì)[M].哈爾濱:哈爾濱工業(yè)大學(xué)出版社,1997</p><p>  [3] 李廣弟.單片機(jī)基礎(chǔ)[M].北京:北京航天航空大學(xué)出版社,2001</p><p>  [4] 姚惠林,段波. 應(yīng)用于

溫馨提示

  • 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ù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 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)論