新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 步進(jìn)電機(jī)驅(qū)動(dòng)匯編程序及調(diào)試總結(jié)

步進(jìn)電機(jī)驅(qū)動(dòng)匯編程序及調(diào)試總結(jié)

作者: 時(shí)間:2016-11-30 來(lái)源:網(wǎng)絡(luò) 收藏
;*************步進(jìn)電機(jī)驅(qū)動(dòng)*****************

;設(shè)計(jì)者小蘇 FOSC=12MHz 2013.11.05

;------------------------------------------------

; 步進(jìn)角為7.5度 一圈360度,需要48個(gè)脈沖完成
;A組線圈 P2.4
;B組線圈 P2.5
;C組線圈 P2.6
;D組線圈 P2.7
;正傳次序:AB組-BC組-CD組-DA組(即一個(gè)脈沖,正轉(zhuǎn)7.5度)

;--------------------------------------------

;調(diào)試平臺(tái)i51最小系統(tǒng)
;調(diào)試結(jié)果:步進(jìn)電機(jī),速度參數(shù)40,正反轉(zhuǎn)正常;
;30以下速度加快,正轉(zhuǎn)正常反轉(zhuǎn)不動(dòng),原因不明,卡死丟步猜測(cè)為卡死;
;繼續(xù)加速,參數(shù)為5,正轉(zhuǎn)平穩(wěn),反轉(zhuǎn)跳動(dòng),懷疑丟步。
;繼續(xù)加速,電機(jī)震動(dòng),但正反轉(zhuǎn)都不動(dòng),改進(jìn)方案尚無(wú)(R6=248,R7為修改量)

;--------------------------------------------
;總結(jié):對(duì)步進(jìn)電機(jī)運(yùn)行、驅(qū)動(dòng)原理還不夠理解、
;任務(wù),盡快學(xué)習(xí),并寫出c程序,加入速度,正反轉(zhuǎn),停機(jī)控制

;--------------------------------------------
;---------正轉(zhuǎn)-----------
ORG 0000H
LJMP MAIN
ORG 0100H

MAIN: MOV R3,#255 ;正轉(zhuǎn)3圈 共114脈沖
START: MOV R0,#00H
START1:MOV P2,#00H
MOV A,R0
MOV DPTR,#TABLE
MOVC A,@A+DPTR
JZ START ;當(dāng)A=0時(shí)轉(zhuǎn)到START(一個(gè)脈沖,正轉(zhuǎn)7.5度)
MOV P2,A
LCALL DELAY
INC R0
DJNZ R3,START1
MOV P2,00H
LCALL DELAY1

;----------------反轉(zhuǎn)-------------------------

MOV R3,#255 ;正轉(zhuǎn)3圈 共114脈沖
START2:MOV P2,#00H
MOV R0,#05H
START3:MOV A,R0
MOV DPTR,#TABLE
MOVC A,@A+DPTR
JZ START2 ;當(dāng)A=0時(shí)轉(zhuǎn)到START(一個(gè)脈沖,反轉(zhuǎn)7.5度)
MOV P2,A
CALL DELAY
INC R0
DJNZ R3,START3
MOV P2,00H
LCALL DELAY1
LJMP MAIN

DELAY: MOV R7,#10 ;步進(jìn)電機(jī)的轉(zhuǎn)速
M3: MOV R6,#248
DJNZ R6,$
DJNZ R7,M3
RET
DELAY1:MOV R4,#20 ;2S延時(shí)子程序
DEL2: MOV R3,#200
DEL3: MOV R2,#250
DJNZ R2,$
DJNZ R3,DEL3
DJNZ R4,DEL2
RET

TABLE: DB 30H,60H,0C0H,90H ;正轉(zhuǎn)表
DB 00 ;正傳結(jié)束
DB 30H,90H,0C0H,60H ;反轉(zhuǎn)表
DB 00 ;反轉(zhuǎn)結(jié)束
END


評(píng)論


技術(shù)專區(qū)

關(guān)閉