微型計算機(jī)控制系統(tǒng)課程設(shè)計_第1頁
微型計算機(jī)控制系統(tǒng)課程設(shè)計_第2頁
微型計算機(jī)控制系統(tǒng)課程設(shè)計_第3頁
微型計算機(jī)控制系統(tǒng)課程設(shè)計_第4頁
微型計算機(jī)控制系統(tǒng)課程設(shè)計_第5頁
已閱讀5頁,還剩10頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、課 程 設(shè) 計 課程名稱 微型計算機(jī)控制系統(tǒng) 題目名稱 步進(jìn)電機(jī)角度控制(1) 學(xué)生學(xué)院 自動化學(xué)院 專業(yè)班級 學(xué) 號 學(xué)生姓名 指導(dǎo)教師 2013 年 6 月 21 日目 錄一、 設(shè)計目的3 二、 設(shè)計要求3 三、 題目分析、流程圖及源程序4 1、題目1 A/D轉(zhuǎn)換及數(shù)碼管的顯示.5 2、題目2 步進(jìn)電機(jī)的角度控制6四、 問題與討論15 五、 實訓(xùn)心得15 六、 參考文獻(xiàn)15三、題目分析、流程圖及源程序 題目:讀取電位器的電壓值并轉(zhuǎn)換成數(shù)字量,數(shù)字值隨電壓值的改變而改變,數(shù)字量范圍為0-FF,電位器電壓輸出范圍為0-5V.實現(xiàn)程序如下:STACK SEGMENT DW 256 DUP(?)S

2、TACK ENDSPUBLIC VALUEDATA SEGMENTVALUE DB ?VAR1 DB 01H,03H,02H,06H,04H,0CH,08H,09H ;步進(jìn)電機(jī)的走步VAR2 DB 3FH,06H,5BH,4FH,66H,6DH,7DH,07H,7FH,6FH,77H,7CH,39H,5EH,79H,71H ;數(shù)碼管的段選VAR3 DB 0FEH,0FDH,0FBH,0F7H ;數(shù)碼管的位選DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX ;8255初始化 MOV AL,88H M

3、OV DX,0606H OUT DX,AL MOV BX,0000H ;BX清零 AA9: MOV DX,0640H OUT DX,AL CALL DALLY IN AL,DX ;AD轉(zhuǎn)換結(jié)果存在AL中 MOV VALUE,AL MOV DL,AL AND AL,0FH MOV BL,AL MOV BH,00H CALL DISP MOV AL,DL AND AL,0F0H SHR AL,4 MOV BL,AL MOV BH,00H CALL DIR ; MOV DX,0604H ;輸出到B口 ; OUT DX,AL ; CALL TIME JMP AA9 ;a/d轉(zhuǎn)換的延時函數(shù) DALLY:

4、 PUSH CX PUSH AX MOV CX,0050H A5: MOV AX,0200H A6: DEC AX JNZ A6 LOOP A5 POP AX POP CX RET DISP: MOV SI,OFFSET VAR3 ;位選 MOV DI,OFFSET VAR2 ;段選 DIR: PUSH DX MOV AL,SI+1 MOV DX,0604H OUT DX,AL MOV AL,DI+BX MOV DX,0602H OUT DX,AL POP DX CALL TIME DEC SI RET ;數(shù)碼管顯示的延時程序 TIME: PUSH AX PUSH CX MOV CX,0004

5、H TIME1: MOV AX,0300HTIME2: DEC AX JNZ TIME2 LOOP TIME1 POP CX POP AX RET CODE ENDS END START 題目2: 步進(jìn)電機(jī)的角度控制:要求:(1) 定義鍵盤按鍵: 3個功能鍵:設(shè)置SET ,清零CLR ,開始START;(2) 顯示器上三位顯示每次行走的角度;(3) 通過鍵盤的按鍵,設(shè)置步進(jìn)電機(jī)行走的最大角度值,按下SET鍵后,使用鍵盤設(shè)置最大角度,再按一次START置入,按CLR清零返回原位.(4) 轉(zhuǎn)動電位器啟動步進(jìn)電機(jī)跟隨轉(zhuǎn)動,到位后停止,電位器回原位步進(jìn)電機(jī)也回到原位,步進(jìn)電機(jī)角度顯示分辨率為15.開始

6、操作流程圖:按下SET選擇最大角度360 or 720按下START置入旋動電位器電機(jī)隨動實現(xiàn)程序如下:STACK SEGMENT STACK DW 64 DUP(?)STACK ENDSPUBLIC SINGAL2PUBLIC VALUEPUBLIC STEPPUBLIC SINGALPUBLIC SINGAL1DATA SEGMENTSINGAL2 DW ?VALUE DB ?SINGAL DW ?STEP DW ?SINGAL1 DW ?VAR2 DB 3FH,3FH,3FHVAR4 DB 00H,00H,00HTABLE DB 3FH,06H,5BH,4FH,66H,6DH,7DH,0

7、7H,7FH,6FH,77H,7CH,39H,5EH,79H,71HTABDT DB 04H,0CH,08H,18H,10H,30H,20H,24HTABDT1 DB 24H,20H,30H,10H,18H,08H,0CH,04HDATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATASTART: MOV AX,DATA MOV DS,AX MOV AL,88H MOV DX,0606H OUT DX,AL MOV BX,0000H SET: MOV AL,0FDH MOV DX,0604H OUT DX,AL MOV DX,0604H IN AL,DX AND

8、 AL,40H CMP AL,40H JNZ KEYABC JMP SETKEYABC: ;延時去抖動 CALL TIME MOV CX,0604H IN AL,DX AND AL,40H CMP AL,40H JNZ KEY_1 JMP SET KEY_1 : ;1-1按鍵 MOV AL,0FEH MOV DX,0604H OUT DX,AL MOV DX,0604H IN AL,DX TEST AL,20H JNZ KEY_2 CALL KEY1 CALL STTK KEY_2: MOV DX,0604H IN AL,DX TEST AL,40H JNZ START1 CALL KEY2

9、CALL STTK START1: CALL DISP MOV AL,0F7H MOV DX,0604H OUT DX,AL MOV DX,0604H IN AL,DX TEST AL,40HKK: JNZ KEY_1 CALL STTK JMP START3 START3:MOV CX,0000HSTART2:JMP KK1WW: JNZ KEYABC KK1: MOV DX,0640H OUT DX,AL CALL TIME IN AL,DX MOV VALUE,AL MOV AH,00H MOV AL,CL; MOV BL,0FH MUL BL MOV SINGAL2,AX MOV SI

10、NGAL1,AX CALL SWAP2 CALL SWAP1 CALL DISP CALL STEPSTEP CMP CX,STEP JA LEFT CMP CX,STEP JB RIGHT JMP TARGET JMP RIGHTSTART22: JMP START2 RIGHT: CALL RIGHTRIGHT MOV AX,SINGAL1 ADD AX,0FH MOV SINGAL1,AX CMP CX,STEP JE TARGET INC CX CALL RIGHTRIGHT1 INC CX JMP TARGET LEFT: CALL LEFTLEFT MOV AX,SINGAL1 S

11、UB AX,0FH MOV SINGAL1,AX DEC CX CALL LEFTLEFT1 CMP CX,0000H JE TARGET DEC CX TARGET: MOV AL,0FDH MOV DX,0604H OUT DX,AL MOV DX,0604H IN AL,DX AND AL,40H CMP AL,40H JNZ WW CLRR: MOV AL,0FBH MOV DX,0604H OUT DX,AL MOV DX,0604H IN AL,DX TEST AL,40H JNZ START22 CALL STTK MOV AX,0000H MOV SINGAL,AX DEC C

12、X JMP START22 SWAP2:PUSH BXPUSH CXPUSH DXMOV BL,64HDIV BLMOV BH,ALMOV AL,AHMOV AH,00HMOV BL,09HDIV BLMOV BL,AHMOV AH,BHMOV BH,ALMOV CL,04HSHL BH,CLMOV AL,BHADD AL,BLMOV BX,00HADD AX,BXPOP DXPOP CXPOP BXRETLEFTLEFT: PUSH AX PUSH CX SS1: MOV BX,OFFSET TABDT MOV CX,0004H SS2:MOV AL,BX MOV DX,0600H OUT

13、DX,AL CALL TIMEE1 MOV AX,SINGAL1 CALL SWAP2 CALL SWAP1 CALL DISP INC BX LOOP SS2 POP CX POP AX RETLEFTLEFT1: PUSH CX MOV CX,0004H SS3:MOV AL,BX MOV DX,0600H OUT DX,AL CALL TIMEE1 MOV AX,SINGAL1 CALL SWAP2 CALL SWAP1 CALL DISP INC BX LOOP SS3 POP CX RET POP CX RET RIGHTRIGHT:PUSH CX S1: MOV BX,OFFSET

14、 TABDT1 MOV CX,0004H S2:MOV AL,BX MOV DX,0600H OUT DX,AL CALL TIMEE1 MOV AX,SINGAL1 CALL SWAP2 CALL SWAP1 CALL DISP INC BX LOOP S2 POP CX RETRIGHTRIGHT1: PUSH CX MOV CX,0004H S3:MOV AL,BX MOV DX,0600H OUT DX,AL CALL TIMEE1 MOV AX,SINGAL1 CALL SWAP2 CALL SWAP1 CALL DISP INC BX LOOP S3 POP CX RET STEP

15、STEP:PUSH AXPUSH BXPUSH DX PUSH CXMOV AL,VALUEMOV BX,SINGALMOV AH,00HMOV DX,0000HMUL BXMOV BX,00FFHDIV BXMOV STEP, AXPOP CX POP DXPOP BXPOP AX RET KEY1: MOV AX,0000HMOV AX,0360HMOV SINGAL,0018HMOV BL,ALAND AL,0FHMOV CL,04HSHR BL,CLAND BL,0FHMOV DI,OFFSET VAR4MOVDI,AHMOVDI+1,BLMOVDI+2,ALCALL CHANGERE

16、TKEY2: MOV AX,0000HMOV SINGAL,0030HMOV AX,0720HMOV BL,ALAND AL,0FHMOV CL,04HSHR BL,CLAND BL,0FHMOV DI,OFFSET VAR4MOVDI,AHMOVDI+1,BLMOVDI+2,ALCALL CHANGERETSWAP1:PUSH CXPUSH BXPUSH AXMOV BL,ALAND AL,0FHMOV CL,04HSHR BL,CLAND BL,0FHMOV DI,OFFSET VAR4MOVDI,AHMOVDI+1,BLMOVDI+2,ALCALL CHANGEPOP AXPOP BXP

17、OP CXRETSTTK:MOV AL,00H MOV DX,0604H OUT DX,AL MOV DX,0604H IN AL,DX AND AL,60H CMP AL,60H JNZ STTK RET CHANGE: MOV SI,OFFSET VAR2MOV DI,OFFSET VAR4MOV BX,OFFSET TABLEMOV CX,0003HCOMP0:MOV AL,DIXLATMOV SI,ALINC SIINC DILOOP COMP0RETTIME :PUSH AXPUSH CXMOV CX,0010HTIME1:MOV AX,0040HTIME2:DEC AXJNZ TI

18、ME2LOOP TIME1POP CXPOP AXRETTIMEE1 :PUSH AXPUSH CXMOV CX,0160HTIMEE11:MOV AX,0040HTIMEE12:DEC AXJNZ TIMEE12LOOP TIMEE11POP CXPOP AXRETDISP :PUSH BX PUSH CX PUSH DX PUSH AX MOV DI,OFFSET VAR2 MOV AL,0FDH MOV DX,0604H OUT DX,AL MOV AL,DI MOV DX,0602H OUT DX,AL CALL TIME MOV AL,0FBH MOV DX,0604H OUT DX,AL MOV AL,DI+1 MOV DX,0602H OUT DX,AL CALL TIME MOV AL,0F7H MOV DX,0604H OUT DX,AL MOV AL,DI+2 MOV DX,0602H OUT DX,AL CALL TIM

溫馨提示

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

評論

0/150

提交評論