⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 stepmotor.txt

📁 代码主要功能: 步进的正反方向转动控制 速度的分级控制过程
💻 TXT
字号:
步进电机控制实验代码

.title "ex5"
.global _c_int00
.mmregs

BJ_ADD .set 1008h

BJ_DIRECT .set 60h
BJ_SPEED .set 61h

.data
.byte 0eh,0dh,0bh,07h

.sect ".vectors"
reset: B _c_int00 
NOP
NOP
.space 4*127

.text
_c_int00:
LD #0h,DP
STM #3000h,SP
SSBX INTM
RSBX SXM
ST #07FFFh,SWWSR

ST #0h,CLKMD  ;切换到DIV模式
tst BITF CLKMD,#1h
BC tst,TC  ;判断切换是否完成
ST #1087h,CLKMD  ;切换到PLL*2模式
RPT #0FFh        ;等待切换完成
NOP

ST #04h,BK  ;置循环缓冲区大小
ST #2000h,AR0  ;置循环缓冲区首地址

ST #00h,BJ_DIRECT ;电机旋转方向
ST #01h,BJ_SPEED ;电机旋转速度

read LD #speed0,B  ;判断速度
ADD BJ_SPEED,2,B,B
BACC B

speed0 ST #6fh,AR6  ;速度0
B direct

speed1 ST #4fh,AR6  ;速度1
B direct

speed2 ST #2fh,AR6  ;速度2
B direct

speed3 ST #1fh,AR6  ;速度3
B direct

speed4 ST #0ch,AR6  ;速度4
B direct

speed5 ST #07h,AR6  ;速度5

direct BITF BJ_DIRECT,#01h ;判断方向
BC start1,TC

start0 CALL delay
PORTW *AR0+%,BJ_ADD ;正转
B read

start1 CALL delay
PORTW *AR0-%,BJ_ADD ;反转
B read


delay ST #0d00h,AR7  ;延时子程序
BANZ $,*AR7-
BANZ delay,*AR6-
RET

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -