大連理工大學計算機原理實驗步進電機_第1頁
大連理工大學計算機原理實驗步進電機_第2頁
大連理工大學計算機原理實驗步進電機_第3頁
大連理工大學計算機原理實驗步進電機_第4頁
大連理工大學計算機原理實驗步進電機_第5頁
已閱讀5頁,還剩6頁未讀 繼續免費閱讀

下載本文檔

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

文檔簡介

1、大連理工大學本科設計報告(計算機原理接口實驗綜合設計)題目: 步進電機控制系統設計 課程名稱: 計算機原理實驗 學院(系): 電子信息與電氣工程學部 專 業: 班 級: 學 號: 學生姓名: 成 績: 2015 年 12 月 26 日題目:步進電機控制系統設計1 設計要求利用實驗臺上的開關(K7-K0),實現步進電機的轉速、轉向控制。具體要求如下:1. 利用D8255A的PA0-PA3做輸出,輸出步進電機的相序、驅動步進電機工作(使用四個LED監視步進電機的相序信號),相序之間的時間決定著步進電機的轉速,而間隔時間有時由CX寄存器的初值決定(參見實驗教材3.1.3章節)。2. 利用ADC080

2、9將輸入滑動變阻器的模擬信號轉換成數字信號來控制步進電機的轉速,當滑動變阻器在兩端時轉速最快,向中間轉動時,步進電機的轉速會逐漸減小,當轉過中間之后,步進電機轉向;3. 利用8253做秒脈沖發生器,產生約0.5秒的周期性方波信號。其中CNT0做分頻器:將1MHZ信號分頻為100HZ;CNT1做秒脈沖輸出(2HZ);4. 利用386模塊的主8259的MIR5做中斷請求輸入,將CNT1的OUT1秒信號方波作為中斷請求信號,引發中斷服務ISR;5. 在中斷服務程序中實現對步進電機的轉速、轉向實時控制。實現方法如下:在ISR中,對ADC0809的輸出進行一次輸入操作,并根據輸入的數據:判斷ADC080

3、9輸出的值,根據相應的值來判斷步進電機的方向和轉速;2 設計分析及系統方案設計1.首先參照實驗教材的相關內容,將步進電機運轉起來。在原有的參考程序中使用的是“輸出立即數”方式來輸出步進電機的相序,建議進行修改,以方便電機的轉向控制。使用“寄存器間接尋址”的方式輸出相序信號:將步進電機的相序數據定義在數據段當中,使用SI或DI查表(間接尋址)獲取相序數據。其中查表順序決定著電機轉動方向。2.對8253進行編程,使OUT1輸出秒脈沖方波信號,為了便于調試,建議使用邏輯筆監測OUT1的輸出狀態是否正常;3.編制與中斷相關的程序。包括中斷屏蔽字的設定、中斷向量表的創建以及開中斷的操作,以上這些都應當加

4、到程序的初始化中;4.編寫中斷服務程序ISR。在ISR中讀取ADC0809轉換后的數據,然后進行數據分析、根據數據來調整CX寄存器中的數據,因而改變步進電機的轉速。3系統電路圖8253OUT1CLK1GATE1/CS OUT0CLK0GATE01MHZ脈沖Vcc210H圖 1 .1 實驗參考邏輯電路MIR58255APA3PA2PA1PA0D7D0A1A0/CS LED3LED2LED1LED0200H步進電機512VBJ_IN4BJ_IN3BJ_IN2BJ_IN1系統總線0.5HZ方波4 外圍接口模塊硬件電路功能描述8259A是專門為了對8085A和8086/8088進行中斷控制而設計的芯片

5、,它是可以用程序控制的中斷控制器。單個的8259A能管理8級向量優先級中斷。8255是Intel公司生產的可編程并行I/O接口芯片,有3個8位并行I/O口。具有3個通道3種工作方式的可編程并行接口芯片 5 主程序中主要變量說明變量名稱內存單元功能SPEED2DS:0001存儲不同狀態下對應的CX值SPEEDDS:0000延時程序中dh的值flagDS:0003控制步進電機轉動的方向和速度值6系統軟件中各個子程序的功能描述子程序名稱入口參數出口參數功能 描述delaycx要改變的值存放在SPEED2中延時子程序,用來延時,改變步進電機的轉速。int_proc將轉速和轉向存放在flag中中斷控制程

6、序,通過中斷改變延時程序中CX7主程序程序流程圖從AD0809讀入轉換后的數字量中斷結束命令AL=1000000?N建立方向標志AY根據不用的AL設定CX值ISRD8255A 的初始化PA、PB輸出AD0809初始化8253 初始化CNT0方式3、初值CNT1方式2、初值主片8259初始化設置屏蔽字創建35H的中斷向量表開中斷開始(a)主程序流程圖IRET建立方向標志B方向標志?順時驅動(等待中斷)逆時驅動(等待中斷)(b)中斷服務程序流程圖圖 1.2 程序的參考流程圖8程序清單.modelsmall.386IO_8255EQU200HIO_8253EQU210HAD_IO EQU220HDA

7、TASEGMENTSPEEDDB6SPEED2DB70HFLAGDB00HZZDB01H,03H,02H,06H,04H,0CH,08H,09HFZDB09H,08H,0CH,04H,06H,02H,03H,01HSTOPDB00H,00H,00H,00H,00H,00H,00H,00HDATAENDSCODESEGMENTASSUMECS:CODE,DS:DATASTART:MOVAX,DATAMOVDS,AX;-設置8253CNT0,CNT1-MOVDX,IO_8253ADDDX,3MOVAL,00110111BOUTDX,ALMOVDX,IO_8253MOVAL,0OUTDX,ALOUT

8、DX,ALMOVDX,IO_8253ADDDX,3MOVAL,01010110BOUTDX,ALMOVDX,IO_8253INCDXMOVAL,20OUTDX,AL;-設置8255-MOVDX,IO_8255ADDDX,03MOVAL,82H;A口作為輸出B口作為輸入OUTDX,AL;-設置386EX主8259中斷屏蔽字-INAL,21HANDAL,11011111BOUT21H,AL;-設置中斷向量表-PUSHDSMOVAX,0MOVDS,AXLEAAX,CS:INT_PROC ;AX指向中斷程序入口地址MOVSI,35H ;類型碼=35HADDSI,SIADDSI,SI ;35*4MOVD

9、S:SI,AX ;中斷向量表的IP值PUSHCSPOPAXMOVDS:SI+2,AX ;中斷向量表的CS值POPDSSTI;步進電機轉向L1:MOVAL,FLAGMOVAH,ALANDAH,80HCMPAH,00HJEL2LEADI,ZZJMPL3L2:LEADI,FZ;速度L3:ANDAL,7FHCMPAL,00HJNEL4LEADI,STOPL4:MOVSPEED2,ALMOVDX,IO_8255MOVCX,08HLP:MOVAL,DIOUTDX,ALCALLDELAYINCDILOOPLPJMPL1;-中斷服務子程序-INT_PROCPROCfarPUSHAXPUSHCXMOVDX,AD

10、_IOOUTDX,AL ;啟動ADCMOVDX,AD_IO ;獲取ADC EOC狀態地址ADDDX,2L5:INAL,DXTESTAL,01H ;測試EOC=1?JZL5MOVDX,AD_IO ;讀數據地址INCDXINAL,DX MOV BL,AL AND BL,80H CMP BL,00H JNZ L6 JMP L7L6:NEG ALL7:LEASI,FLAGMOVSI,ALOUTDX,ALMOVAL,20H ;發送中斷結束指令OUT20H,ALPOPCXPOPAXSTI ;允許中斷發生IRETINT_PROCENDPDELAYPROCPUSHAXPUSHCXPUSHDXMOV DH,SP

11、EEDXOR CX,CXX1:MOV CL,SPEED2 ADD CX,CX ADD CX,CX ;增大相序步長 ADD CX,00F5HX2:LOOPX2DECDHJNZX1POPDXPOPCXPOPAXRETDELAYENDPCODEENDSENDSTART9系統調試運行結果說明、分析所出現得問題,設計體會與建議硬件環境:386EX實驗箱軟件環境:HQFC設計語言:匯編語言本次實驗將設計后的程序下載到386EX實驗箱上,運行程序,旋轉滑動變阻器,可以看到在滑到中間位置時,步進電動機會停止運行;滑過中間位置時,步進電機的轉向發生了改變。滑動變阻器在兩端時,步進電機轉速最快,在中間時,轉速最慢,總體的設計效果已經實現。在實驗過程中,我還遇到了許多問題,最終解決問題,成功實現了設計要求的功能。在實驗中遇到的問題如下:1)對8253,8255,8259芯片的初始化,以及中斷屏蔽字和中斷向量表的設置不太熟悉,經過對以前實驗的復習,該問題得到解決。2)對于程序的跳轉不熟悉,時常出現死循環的現象。3)在中斷子程序的編寫中注意關閉中斷。在解決了上述問題之后成功的實現了設計要求的實驗現象。10 結論及設計體會本次實驗總體來說是成功的。實現了設計要求的所有實驗現象。在實驗的開始階段我感到一籌莫展,不知道該從哪下手。老師指導我們從基礎程序做起,先把基礎程序編好在逐漸的往上增加功能。編

溫馨提示

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

評論

0/150

提交評論