微機原理課程設計報告--步進電機設計_第1頁
已閱讀1頁,還剩24頁未讀 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、<p><b>  課程設計任務書</b></p><p>  題 目: 步進電機設計</p><p><b>  初始條件:</b></p><p>  用匯編語言設計一個步進電機的控制,在Proteus仿真環(huán)境下完成,功能上實現步進電機的基本功能。</p><p>  要求完成的主

2、要任務: (包括課程設計工作量及其技術要求,以及說明書撰寫等具體要求)</p><p>  1. 通過鍵盤控制步進電機的啟動和停止,正轉和反轉;</p><p>  2. 編制完整的程序并調試;</p><p>  3.撰寫符合學校要求的課程設計說明書,內容包括:摘要、目錄、正文、參考文獻、附錄(程序清單)。正文部分包括:設計任務及要求、方案比較及論證、軟件設計說明

3、(軟件思想,流程,源程序設計及說明等)、程序調試說明和結果分析、課程設計收獲及心得體會。</p><p><b>  時間安排:</b></p><p>  1. 1月4日----1月5日 查閱資料及方案設計</p><p>  1月5日----1月8日 編程</p><p>  1月9日----1月11日 調

4、試程序</p><p>  1月12日----1月13日 撰寫課程設計報告</p><p>  1月14日 上午準備答辯,下午正式答辯</p><p>  指導教師簽名: 年 月 日</p><p>  系主任(或責任教師)簽名:

5、 年 月 日</p><p><b>  摘要</b></p><p>  步進電機是將電脈沖信號轉變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況下,電機的轉速、停止的位置只取決于脈沖信號的頻率和脈沖數,而不受負載變化的影響,即給電機加一個脈沖信號,電機則轉過一個步距角。步進電機轉動控制是通過操作實現電機的加速減速正轉與反轉,廣泛用于現實社

6、會生活生產中,如高樓中的電梯,工廠中的機床。因此,研究步進電機轉動控制,有著非?,F實的意義。</p><p>  本課程設計報告通過步進電機的基本介紹、系統(tǒng)的軟硬件設計(包括最小系統(tǒng)介紹、接口電路設計、延時程序設計、步進電機的驅動程序設計等幾個主要模塊)、完整的匯編語言程序等,我們完成了對步進電機系統(tǒng)的設計,并完成了相應的任務,如正轉、反轉、啟動停止等,使我們進一步掌握了匯編語言,也使我們能很好的把書本上的知識與

7、實踐相結合,大大提高了我們的動手能力。</p><p>  關鍵字:步進電機;8086CPU;8255可編程I/O接口芯片;8253可編程定時/計數器;74LS138譯碼器;匯編語言 </p><p><b>  步進電機控制設計</b></p><p>  第一章 設計要求與思路</p><p>  1.1、設計的目的

8、與要求</p><p>  設計目的:用匯編語言設計一個步進電機的控制,在Proteus仿真環(huán)境下完成,功能上實現步進電機的基本功能。</p><p>  設計要求:通過鍵盤控制步進電機的啟動和停止,正轉和反轉;編制完整的程序并在Proteus仿真環(huán)境下進行調試;撰寫符合學校要求的課程設計說明書,內容包括:摘要、目錄、正文、參考文獻、附錄(程序清單)。正文部分包括:設計任務及要求、方案比較

9、及論證、軟件設計說明(軟件思想,流程,源程序設計及說明等)、程序調試說明和結果分析、課程設計收獲及心得體會。</p><p>  1.2、設計思路與構想</p><p>  本步進電機控制系統(tǒng)通過兩個鍵盤來控制步進電機的正傳和反轉,當K0接通,即K0=0時,步進電機順時針旋轉,旋轉的角度取決于K0接通時間長短,接通時間越長,旋轉角度越大,當K1接通,即K1=0時,步進電機逆時針旋轉,旋轉角

10、度同樣取決于鍵盤接通時間長短。</p><p><b>  第二章 系統(tǒng)概述</b></p><p>  步進電機控制原理介紹</p><p>  步進電機是將電脈沖信號轉變?yōu)榻俏灰苹蚓€位移的開環(huán)控制元件。在非超載的情況下,電機的轉速、停止的位置只取決于脈沖信號的頻率和脈沖數,而不受負載變化的影響,即給電機加一個脈沖信號,電機則轉過一個步距角。

11、</p><p>  2.1、步進電機的控制原理</p><p>  步進電機2 個相鄰磁極之間的夾角為 60°。線圈繞過相對的2 個磁極 ,構成一相 A-A′,B-B′,C-C′。磁極上有5 個均勻分布的矩形小齒 ,轉子上沒有繞組 ,而有 40 個小齒均勻分布在其圓周上 ,且相鄰2 個齒之間的夾角為9°</p><p>  當某組繞組通電時 ,

12、相應的 2 個磁極就分別形成N-S極 ,產生磁場 ,并與轉子形成磁路。如果這時定子的小齒與轉子沒有對齊 ,則在磁場的作用下轉子將轉動一定的角度 ,使轉子齒與定子齒對齊 ,從而使步進電機向前“走”一步。</p><p>  2.2 步進電機的控制方式</p><p>  如果通過單片機按順序給繞組施加有序的脈沖電流 ,就可以控制電機的轉動 ,從而實現數字 →角度的轉換。轉動的角度大小與施加的

13、脈沖數成正比 ,轉動的速度與脈沖頻率成正比 ,而轉動方向則與脈沖的順序有關。以三相步進電機為例 ,電流脈沖的施加共有3 種方式。</p><p>  1 單相三拍方式 按單相繞組施加電流脈沖 :→A→B →C→正轉; →A→C→B →反轉。</p><p>  2 雙相三拍方式 按雙相繞組施加電流脈沖 :→AB →BC→CA→正轉; →AC→CB →AB →反轉。</p>&

14、lt;p>  3 三相六拍方式 單相繞組和雙相繞組交替施加電流脈沖 : →A→AB →B →BC→C→CA →正轉; →A→AC→C→CB →B →BA→反轉。</p><p>  單相三拍方式的每一拍步進角為3°,三相六拍的步進角則為1.5°,因此 ,在三相六拍下,步進電機的運行反轉平穩(wěn)柔和,但在同樣的運行角度與速度下 ,三相六拍驅動脈沖的頻率需提高1 倍,對驅動開關管的開關特性要求較

15、高。</p><p>  2.3步進電機的驅動方式</p><p>  步進電機常用的驅動方式是全電壓驅動,即在電機移步與鎖步時都加載額定電壓。為了防止電機過流及改善驅動特性,需加限流電阻。由于步進電機鎖步時,限流電阻要消耗掉大量的功率,故限流電阻要有較大的功率容量,并且開關管也要有較高的負載能力。</p><p>  步進電機的另一種驅動方式是高低壓驅動,即在電機

16、移步時,加額定或超過額定值的電壓,以便在較大的電流驅動下,使電機快速移步;而在鎖步時,則加低于額定值的電壓,只讓電機繞組流過鎖步所需的電流值。這樣,既可以減少限流電阻的功率消耗 ,又可以提高電機的運行速度,但這種驅動方式的電路要復雜一些。驅動脈沖的分配可以使用硬件方法,即用脈沖分配器實現。現在 ,脈沖分配器已經標準化、芯片化 ,市場上可以買到。但硬件方法結構復雜,成本也較高。</p><p>  圖2-1步進電機

17、驅動圖</p><p>  2.4步進電機控制工作原理</p><p>  步進電機實際上是一個數字\角度轉換器,也是一個串行的數\模轉換器。步進電機的基本控制包括啟??刂?、轉向控制、速度控制、換向控制4 個方面。從結構上看 ,步進電機分為三相、四相、五相等類型 ,常用的則以三相為主。本次課程設計我們選用四相步進電機進行系統(tǒng)設計。步進電機控制工作原理系統(tǒng)流程圖如圖2-2:</p>

18、;<p>  圖2-2 步進電機控制工作原理系統(tǒng)流程圖</p><p>  2.4.1步進電機的啟??刂?lt;/p><p>  步進電機由于其電氣特性,運轉時會有步進感 ,即振動感。為了使電機轉動平滑 ,減小振動 ,可在步進電機控制脈沖的上升沿和下降沿采用細分的梯形波 ,可以減小步進電機的步進角 ,提高電機運行的平穩(wěn)性。在步進電機停轉時 ,為了防止因慣性而使電機軸產生順滑 ,則

19、需采用合適的鎖定波形 ,產生鎖定磁力矩 ,鎖定步進電機的轉軸 ,使步進電機的轉軸不能自由轉動。 </p><p>  2.4.2步進電機的轉向控制</p><p>  如果給定工作方式正序換相通電 ,步進電機正轉。若步進電機的勵磁方式為四相八拍 ,即 A-AB-B-BC-C-CD-D-DA-A。如果按反序通電換相 ,即則電機就反轉。其他方式情況類似。</p><p>

20、;<b>  2.5系統(tǒng)設計思路</b></p><p>  系統(tǒng)總體設計思路:本次設計采用8086作為控制的核心元件,利用8255的C口控制步進電機,同時獲取控制轉動方向(即正轉和反轉),因為步進電機是通過改變其數日脈沖來改變步進電機的輸出狀態(tài)的,所以此方案考慮選擇開罐電路來改變其調用的子程序已達到改變其輸入的脈沖。故此方案使用開關電路,8255A的若干端口來實現。</p>

21、<p>  由步進電機的原理可以知道其狀態(tài)的特點,所以,可以考慮通過改變其脈沖的順序來改變步進電機的轉向,實現正傳和反轉,。故此方案可以用8255的PA空和開關電路來選擇各種狀態(tài)的改變</p><p>  第三章 系統(tǒng)硬件軟件設計</p><p>  本設計利用8086系統(tǒng)為主要控制芯片和可編程計數器/定時器8253及可編程外圍接口芯片8255A設計的一個步進電機的控制系統(tǒng),主要

22、包括接口電路設計、延時程序設計、開關與計數初值的關鍵程序設計、步進電機驅動程序設計等模塊。</p><p>  3.1 protues仿真軟件</p><p>  Protues軟件是英國Labcenter electronics公司出版的EDA工具軟件。它不僅具有其它EDA工具軟件的仿真功能,還能仿真單片機及外圍器件。它是目前最好的仿真單片機及外圍器件的工具。雖然目前國內推廣剛起步,但已

23、受到單片機愛好者、從事單片機教學的教師、致力于單片機開發(fā)應用的科技工作者的青睞。Proteus是世界上著名的EDA工具(仿真軟件),從原理圖布圖、代碼調試到單片機與外圍電路協同仿真,一鍵切換到PCB設計,真正實現了從概念到產品的完整設計。是目前世界上唯一將電路仿真軟件、PCB設計軟件和虛擬模型仿真軟件三合一的設計平臺,其處理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和

24、MSP430等,2010年即將增加Cortex和DSP系列處理器,并持續(xù)增加其他系列處理器模型。在編譯方面,它也支持IAR、Keil和MPLAB等多種編譯。 </p><p><b>  功能特點:</b></p><p>  Protues軟件具有其它EDA工具軟件(例:multisim)的功能。這些功能是: </p><p><b&g

25、t; ?。?)原理布圖 </b></p><p> ?。?)PCB自動或人工布線 </p><p> ?。?)SPICE電路仿真  </p><p><b>  革命性的特點: </b></p><p> ?。?)互動的電路仿真。用戶甚至可以實時采用諸如RAM,ROM,鍵盤,馬達,LED,LCD,AD/DA,

26、部分SPI器件,部分IIC器件。 </p><p> ?。?)仿真處理器及其外圍電路??梢苑抡?1系列、AVR、PIC、ARM、等常用主流單片機。還可以直接在基于原理圖的虛擬原型上編程,再配合顯示及輸出,能看到運行后輸入輸出的效果。配合系統(tǒng)配置的虛擬邏輯分析儀、示波器等,Protues建立了完備的電子設計開發(fā)環(huán)境。 </p><p><b>  3.2最小系統(tǒng)介紹</b&g

27、t;</p><p>  3.2.1.8086CPU構成的最小模式系統(tǒng)</p><p>  根據使用目的的不同,8086系統(tǒng)可以有最小模式和最大模式兩種系統(tǒng)配置,兩種方式的選擇主要取決于硬件,當CPU引腳MN/MX端接高電平+5V時,構成最小系統(tǒng),用于由8086單一微處理器構成的小系統(tǒng)。在這種方式下,由8086CPU直接產生小系統(tǒng)所需要的全部控制信號。器系統(tǒng)特點是:總線控制邏輯直接由808

28、6CPU產生和控制。若有CPU以外的其他模塊想占用總線,則可以向CPU提出請求,在CPU允許并響應的情況下,該模塊才可以獲得總線控制權,使用完后,又將總線控制權還給CPU。最小系統(tǒng)結構示意圖如圖3-1:</p><p>  圖3-1 最小系統(tǒng)結構示意圖</p><p>  在最小模式系統(tǒng)中,除了8086CPU,存儲器及I/O接口芯片外,還加入了一片8284A作為時鐘發(fā)生器,二片8282/8

29、283或74LS373作為地址鎖存器,,數據總線和地址總線分時復用。</p><p>  3.2.2 最小模式系統(tǒng)元器件組成介紹</p><p><b>  74HC373 </b></p><p>  74HC373中文資料:373為三態(tài)輸出的八 D 透明鎖存器,共有 54/74HC373 和54/74HC373 兩種線路 。74373 的輸

30、出端O0~O7 可直接與總線相連。 </p><p>  當三態(tài)允許控制端 OE 為低電平時, O0~O7 為正常邏輯狀態(tài),可用來驅動負載或總線。 當 OE 為高電平時,O0~O7 呈高阻態(tài),即不驅動總線,也不為總線的負載,但鎖存器內部的邏輯操作不受影響。當鎖存允許端 LE 為高電平時,O 隨數據 D 而變。當 LE 為低電平時,O 被鎖存在已建立的數據電平。當 LE 端施密特觸發(fā)器的輸入滯后作用,使交流

31、和直流噪聲抗擾度被改善 400mV。 </p><p>  3.2.3 8086最小系統(tǒng)配置模擬圖</p><p>  在最小模式系統(tǒng)中,除了8086CPU,存儲器及I/O接口芯片外,還加入了二片8282/8283或74LS373作為地址鎖存器,數據總線和地址總線分時復用。最小系統(tǒng)配置模擬圖如圖3-2:</p><p>  圖3-2 最小系統(tǒng)模擬圖</p>

32、;<p><b>  3.3接口電路設計</b></p><p>  3.3.1主要元器件介紹</p><p><b>  74HC138</b></p><p>  74HC138是一款高速CMOS器件,74HC138引腳兼容低功耗肖特基TTL(LSTTL)系列?! ?4HC138譯碼器可接受3位二進制加權

33、地址輸入(A0, A1和A2),并當使能時,提供8個互斥的低有效輸出(Y0至Y7)。74HC138特有3個使能輸入端:兩個低有效(E1和E2)和一個高有效(E3)。除非E1和E2置低且E3置高,否則74HC138將保持所有輸出為高。利用這種復合使能特性,僅需4片74HC138芯片和1個反相器,即可輕松實現并行擴展,組合成為一個1-32(5線到32線)譯碼器。任選一個低有效使能輸入端作為數據輸入,而把其余的使能輸入端作為選通端,則74HC

34、138亦可充當一個8輸出多路分配器,未使用的使能輸入端必須保持綁定在各自合適的高有效或低有效狀態(tài)。74HC138與74HC238邏輯功能一致,只不過74HC138為反相輸出。 </p><p>  CD74HC138 ,CD74HC238和CD74HCT138 , CD74HCT238是高速硅柵CMOS解碼器,適合內存地址解碼或數據路由應用。74HC138 作用原理于高性能的存貯譯碼或要求傳輸延遲時間短的數據傳

35、輸系統(tǒng),在 高性能存貯器系統(tǒng)中,用這種譯碼器可以提高譯碼系統(tǒng)的效率。將快速賦能電路用于高速存貯器時,譯碼器的延遲時間和存貯器的賦能時間通常小于存貯器的典型存取時間,這就是說由肖特基鉗位的系統(tǒng)譯碼器所引起的有效系統(tǒng)延遲可以忽略不計。HC138 按照三位二進制輸入碼和賦能輸入條件,從8 個輸出端中譯出一個 低電平輸出。兩個低電平有效的賦能輸入端和一個高電平有效的賦能輸入端減少了擴展所需要的外接門或倒相器,擴展成24 線譯碼器不需外接門;擴展

36、成32 線譯碼器,只需要接一個外接倒相器。在解調器應用中,賦能輸入端可用作數據輸入端。復合使能輸入,輕松實現擴展 兼容JEDEC標準no.7A 存儲器芯片譯碼選擇的理想選擇 低有效互斥輸出 ESD保護 HBM EIA/JESD22-A114-C超過2000 V MM EIA/JESD22-A115-A超過200 V 溫度范圍 -40~+85 </p><p>  圖3-3 74HC138真值表</p>

37、<p>  3.3.2接口芯片的片選信號的產生</p><p>  在此系統(tǒng)的接口電路中,8255的端口地址從80H開始,因此8255的A、B、C和控制口的地址分別是80H,82H,84H和86H;8253的端口地址從88H開始,而8253的通道0、通道1、通道2和控制口的地址分別是88H、8AH、8CH、8EH。地址總線信號和端口地址之間的關系如下表1:</p><p> 

38、 表1 地址總線信號和端口地址之間的關系</p><p>  從表格我們可以看出,A7始終為1,即高電平,所以其應該接74HC138的G1端,74HC138的1、2A(E2端)、2B(E3端)為控制端,組合為100時輸出才有效(輸出為低電平有效)。此時E2端連接M/為0,原因是因為M/為0即低電平時,此時CPU正在訪問I/O端口。因此我們可以根據此設計譯碼電路,本次采用部分譯碼電路,譯碼器的0 8255的片選信號

39、。</p><p>  3.3.3接口電路設計</p><p>  由于端口地址是偶數,所以接口電路中要取Y。接8255的片選信號為0。如圖3-4:</p><p>  圖3-4 CPU與8255接口電路</p><p><b>  3.4關鍵模塊實現</b></p><p>  3.4.1 主要

40、元器件介紹</p><p>  ULN2003內部還集成了一個消線圈反電動勢的二極管,可用來驅動繼電器。它是雙列16腳封裝,NPN晶體管矩陣,最大驅動電壓=50V,電流=500mA,輸入電壓=5V,適用于TTL COMS,由達林頓管組成驅動電路。 ULN是集成達林頓管IC,內部還集成了一個消線圈反電動勢的二極管,它的輸出端允許通過電流為200mA,飽和壓降VCE 約1V左右,耐壓BVCEO 約為36V。用戶輸出口

41、的外接負載可根據以上參數估算。采用集電極開路輸出,輸出電流大,故可直接驅動繼電器或固體繼電器,也可直接驅動低壓燈泡。通常單片機驅動ULN2003時,上拉2K的電阻較為合適,同時,COM引腳應該懸空或接電源。 </p><p>  ULN2003是一個非門電路,包含7個單元,單獨每個單元驅動電流最大可達350mA,9腳可以懸空。 </p><p>  比如1腳輸入,16腳輸出,你的負載接在V

42、CC與16腳之間,不用9腳。</p><p>  ULN2003芯片引腳介紹</p><p>  引腳1:CPU脈沖輸入端,端口對應一個信號輸出端。 </p><p>  引腳2:CPU脈沖輸入端。 </p><p>  引腳3:CPU脈沖輸入端。 </p><p>  引腳4:CPU脈沖輸入端。 </p>

43、<p>  引腳5:CPU脈沖輸入端。 </p><p>  引腳6:CPU脈沖輸入端。 </p><p>  引腳7:CPU脈沖輸入端。 </p><p><b>  引腳8:接地。 </b></p><p>  引腳9:該腳是內部7個續(xù)流二極管負極的公共端,各二極管的正極分別接各達林頓管的集電極。用于感

44、性負載時,該腳接負載電源正極,實現續(xù)流作用。如果該腳接地,實際上就是達林頓管的集電極對地接通。 </p><p>  引腳10:脈沖信號輸出端,對應7腳信號輸入端。 </p><p>  引腳11:脈沖信號輸出端,對應6腳信號輸入端。 </p><p>  引腳12:脈沖信號輸出端,對應5腳信號輸入端。 </p><p>  引腳13:脈沖信

45、號輸出端,對應4腳信號輸入端。 </p><p>  引腳14:脈沖信號輸出端,對應3腳信號輸入端。 </p><p>  引腳15:脈沖信號輸出端,對應2腳信號輸入端?!?</p><p>  引腳16:脈沖信號輸出端,對應1腳信號輸入端。</p><p>  3.4.2 控制部分電路設計</p><p>  步進電

46、機的硬件部分主要是提供輸送相序代碼的并行數據線(6根),以及保護電機繞組的器件,所以借口電路以8255A為主芯片,將PA口作數據口,傳送加電代碼,再加上鎖存器74HC373做繞組保護作用。另外,還有功率。本實驗中8255中PB0-PB-3分別接ULN2003中B1-B3接口。ULN2003A中4c.2c.1c接步進電機的三個端口。如圖</p><p>  圖3-5控制部分電路設計</p><p

47、>  3.5 步進電機的軟件設計</p><p>  3.5.1 程序原理流程圖</p><p>  實現步進電機的運行方式,正反向控制,是借口軟件設計的主要任務。為此,在編寫程序之前,要建立一個相序表。相序表的建立應根據步進電機運行方式的要求及各繞組與8255A端口連接情況來確定加電代碼。其主要流程圖如下其流程圖如下:</p><p>  圖3-6 程序流程

48、圖</p><p>  3.5.2實驗程序及分析</p><p>  端口地址的分配:由8086和8255通訊部分電路圖中數據總線接線可以算出8255四個控制端口的地址。</p><p>  具體算法:8086數據總線的高八位接在一片74HC373的輸入端,而74HC373的輸出高四位又接在一片74HC138譯碼器的輸入端,不難看出8086搞八位應為10000000

49、,8086數據總線的第八位接在一片74HC373的輸入端,這片74HC373的輸出端又接在8255的端口地址控制線A0、A1上,當A1A0=00時選擇8255的A端口,當A1A0=01時選擇8255的B端口,當A1A0=10時選擇8255的C端口,當A1A0=11時選擇8255的控制端口。定義端口的符號地址如下:</p><p>  IOA EQU 8000H</p><p>  

50、IOB EQU 8002H</p><p>  IOC EQU 8004H</p><p>  IOCON EQU 8006H</p><p>  由8255連線圖可以看出,A端口是數據輸入端口,B端口是數據輸出端口,故8255工作在方式0,初始化程序如下:</p><p>  MOV AL,90H</p>

51、<p>  MOV DX,IOCON</p><p><b>  OUT DX,AL</b></p><p>  由步進電機工作原理,當其接收到一串正的連續(xù)脈沖時,步進電機的轉子就會順時針旋轉,知道脈沖消失才會停止旋轉,由此可以寫出步進電機順時針旋轉的程序如下:</p><p>  MOT2: MOV CX,08H</p&g

52、t;<p>  LEA DI,STR2</p><p>  IOLED2: MOV AL,[DI]</p><p>  MOV DX,IOB</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,IOA</p><p><b>  IN

53、AL,DX</b></p><p>  TEST AL,01H</p><p><b>  JE MOT1</b></p><p><b>  INC DI</b></p><p>  CALL DELAY</p><p>  LOOP IOLED2</p&

54、gt;<p>  JMP MOT2 </p><p>  同理可得步進電機逆時針旋轉時的程序如下</p><p>  MOT1: MOV CX,08H</p><p>  LEA DI,STR1</p><p>  IOLED1: MOV AL,[DI]</p><p>  MOV DX,I

55、OB</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,IOA</p><p><b>  IN AL,DX</b></p><p>  TEST AL,02H</p><p><b>  JE MOT2 </b>

56、</p><p><b>  INC DI</b></p><p>  CALL DELAY</p><p>  LOOP IOLED1</p><p><b>  JMP MOT1</b></p><p>  在步進電機接收到每一個脈沖的時候都調用了一段延時程序,因為808

57、6CPU的處理速度和步進電機的運轉速度相差太大,調用了該段延時程序后,8086CPU的處理速度和步進電機的運轉速度才會協調,延時子程序如下: </p><p><b>  DELAY:</b></p><p><b>  PUSH CX</b></p><p>  MOV CX,0D1H<

58、/p><p><b>  DELAY1:</b></p><p><b>  NOP</b></p><p><b>  NOP</b></p><p><b>  NOP</b></p><p><b>  NOP</

59、b></p><p>  LOOP DELAY1</p><p><b>  POP CX</b></p><p><b>  RET</b></p><p>  第四章 實驗電路圖全圖電路仿真與調試</p><p>  電路仿真圖如圖4-1所示</p>

60、<p>  圖4-1 整體電路圖</p><p>  首先在ASM環(huán)境下,將步進電機的控制程序編譯出來,運行沒有錯誤后生成可執(zhí)行EXE文件,然后在Proteus環(huán)境下連接出硬件電路,再將之前生成的可執(zhí)行EXE文件加載到8086中,進行仿真,按下K0,電機順時針旋轉,按下K1,電機逆時針旋轉。</p><p>  連接電路圖的時候要特別注意總線的連接,連接完總線后要接標簽,否則

61、無法運行。</p><p>  系統(tǒng)工作原理:首先,8086CPU的存儲單元中存入了兩列脈沖信號,一個供步進電機順時針旋轉,另一個供步進電機逆時針旋轉。8086CPU通過數據總線高八位來控制8255工作在方式0,當鍵盤陪按下時,8255A端口接收到數據,并通過其八位數據線傳入8086CPU中,此時8086CPU分析識別接收到的信號然后根據需求將其中一列脈沖信號通過數據總線低八位傳送給8255,8255接收到脈沖信

62、號后再將此脈沖信號通過B端口輸出給步進電機,因為8255端口輸出的脈沖信號電流有效值很小,不足以驅動步進電機,因而在8255的B端口和步進電機之間接入一個ULN2003的驅動芯片。這樣當步進電機接收到脈沖信號后就會旋轉起來。</p><p>  第五章 課程設計體會</p><p>  通過這次綜合實驗,我對微機原理與接口技術有了更深一步的理解,提高了自己的動手能力。在實驗過程中,我會遇到

63、各種問題,我覺得除了向老師和同學請教外,我更應該學會自己解決問題。</p><p>  在整個過程中,查閱了不少資料,例如步進電機如何工作,速度及方向的控制等是通過自學完成。知道如何盡快讀懂別人寫的源程序,從中借鑒好的地方來完善自己的程序。</p><p>  剛開始時,我們先熟悉了實驗板上那些可用的器件,初步打算是完成實驗要求的基本功能即電機的啟動、停轉、正反轉、有級調速。感覺上是挺容易

64、的,但是到后來才發(fā)現編程是存在一些問題。</p><p>  在老師的悉心指導和嚴格要求下,我們終于完成了四相步進電機設計課程。從書本上的知識到自己親手的課程設計,每一步對我們來說無疑是巨大的嘗試和挑戰(zhàn),也成就了我們目前在大學期間獨立完成的最大的項目。記得在剛接到這個課題時,由于對相關知識不是很了解,我們都有些茫然不知所措。設計好一個步進電機需要什么專業(yè)知識?帶著這個疑問我們開始了地學習和實驗:去查閱相關資料、上

65、網去了解相關的內容,漸漸頭腦中的概念清晰了起來。在具體設計的過程中,我們遇到了更大的困難。我們不斷地給自己提出新的問題,然后去論證、推翻,再接著提出新的問題。在這個循環(huán)往復的過程中,我們這篇稚嫩的設計日臻完善。雖然我們的設計作品不是很成熟,即使借鑒前人的很多資料仍然還有很多不足之處,但我仍然心里有一種莫大的幸福感,因為我們實實在在地走過了一個完整的設計所應該走的每一個過程,并且享受了每一個過程。</p><p>

66、  最后我們獲得收獲的同時也要感謝老師和同學給予我們的幫助,沒有他們,我們遇到的一些問題不可能很快的解決。</p><p><b>  參考文獻</b></p><p>  [1] 彭虎,周佩玲,傅忠謙.微機原理與接口技術[Z].北京:電子工業(yè)出版社,2008</p><p>  [2] 張齊,朱寧西.單片機應用系統(tǒng)設計技術——基于C51的Pr

67、oteus仿真[Z].北京:電子工業(yè)出版社,2009</p><p>  [3] 周荷琴,吳秀清.微型計算機原理與節(jié)后技術[Z].合肥:中國科技大學出版社,2008</p><p>  [4] 彭虎,周佩玲,傅忠謙.微機原理與接口技術學習指導[Z].北京:電子工業(yè)出版社,2008</p><p>  [5]《數字電子技術基礎》,伍時和等,清華大學出版社</p&

68、gt;<p><b>  附錄 實驗源程序</b></p><p>  CODE SEGMENT 'CODE' </p><p>  ASSUME CS:CODE,SS:STACK,DS:DATA</p><p>  IOCON EQU 8006H</p><p>  IOA

69、 EQU 8000H</p><p>  IOB EQU 8002H</p><p>  IOC EQU 8004H</p><p><b>  START:</b></p><p>  MOV AX, DATA</p><p>  MOV DS, AX</p>&

70、lt;p>  MOV AX, STACK</p><p>  MOV SS, AX</p><p>  MOV AX, TOP</p><p>  MOV SP, AX</p><p>  MOV AL,90H</p><p>  MOV DX,IOCON</p><p><b>

71、;  OUT DX,AL</b></p><p><b>  NOP</b></p><p>  MOV AL,0FFH</p><p>  MOT2: MOV CX,08H</p><p>  LEA DI,STR2</p><p>  IOLED2: MOV AL,[DI]<

72、/p><p>  MOV DX,IOB</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,IOA</p><p><b>  IN AL,DX</b></p><p>  TEST AL,01H</p><p>  

73、JE MOT1 ; 為0</p><p><b>  INC DI</b></p><p>  CALL DELAY</p><p>  LOOP IOLED2</p><p>  JMP MOT2 </p><p>  MOT1: MOV CX,08H</p><p

74、>  LEA DI,STR1</p><p>  IOLED1: MOV AL,[DI]</p><p>  MOV DX,IOB</p><p><b>  OUT DX,AL</b></p><p>  MOV DX,IOA</p><p><b>  IN AL,DX<

75、/b></p><p>  TEST AL,02H</p><p>  JE MOT2 ; 為0</p><p><b>  INC DI</b></p><p>  CALL DELAY</p><p>  LOOP IOLED1</p><p><b>

76、  JMP MOT1</b></p><p><b>  DELAY:</b></p><p><b>  PUSH CX</b></p><p>  MOV CX,0D1H</p><p><b>  DELAY1:</b></p><p>

77、;<b>  NOP</b></p><p><b>  NOP</b></p><p><b>  NOP</b></p><p><b>  NOP</b></p><p>  LOOP DELAY1</p><p><b

78、>  POP CX</b></p><p><b>  RET</b></p><p>  CODE ENDS</p><p>  STACK SEGMENT 'STACK'</p><p>  STA DB 100 DUP(?)</p><p> 

79、 TOP EQU LENGTH STA</p><p>  STACK ENDS </p><p>  DATA SEGMENT 'DATA'</p><p>  STR1 DB 02H,06H,04H,0CH,08H,09H,01H,03H ;控制數據表</p><p>  STR2

溫馨提示

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

評論

0/150

提交評論