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

📄 bj1.asm

📁 步进电机四轮驱动 步进电机四轮驱动
💻 ASM
字号:
;------------------------------------------------------
;步进电机四轮驱动,实现  前进  后退  左转 右转 停止等功能;
;P2输入,P1输出
;------------------------------------------------------
 QJ     EQU    P2.0        ; 前进
 HT     EQU    P2.1        ; 后退
 LZ     EQU    P2.2        ; 左转
 RZ     EQU    P2.3        ; 右转
 TZ     EQU    P2.4        ; 停止
 OUT    EQU    P1          ;p1口 输出
;-----------------------------------------------------
        ORG  40H
STOPS1: ORL  OUT,#0FFH
LOOP:   JNB  QJ,ZZ1
        JNB  HT,FZ1
        JNB  LZ,LZ1
        JNB  RZ,RZ1
        JNB  TZ,STOPS
        JMP  LOOP
;----------------------------------------------
ZZUAN:  MOV  R0,#00H             ; 前进-----》1正转 ,2反转
ZZUAN1: MOV  A,R0
        MOV  DPTR,#TAB
        MOVC A,@A+DPTR
        JZ   ZZUAN
        ;CPL  A
        MOV  OUT,A
        JNB  HT,FZ1
        JNB  LZ,LZ1
        JNB  RZ,RZ1
        JNB  TZ,STOPS
        CALL DELAY
        INC  R0
        JMP  ZZUAN1
;-------------------------------------------------
FZUAN:  MOV  R0,#05H          ; 后退-----》2正转 ,1反转
FZUAN1: MOV  A,R0
        MOV  DPTR,#TAB
        MOVC A,@A+DPTR
        JZ   FZUAN
        ;CPL  A
        MOV  OUT,A
        JNB  QJ,ZZ1
        JNB  LZ,LZ1
        JNB  RZ,RZ1
        JNB  TZ,STOPS
        CALL DELAY
        INC  R0
        JMP  FZUAN1
;----------------------------------------------------
ZZ1:    CALL DELAY                  ;键盘去干扰
        JNB  QJ,$
        CALL DELAY
        JMP  ZZUAN
FZ1:    CALL DELAY
        JNB  HT,$
        CALL DELAY
        JMP  FZUAN
LZ1:    CALL DELAY
        JNB  LZ,$
        CALL DELAY
        JMP  LZUAN
RZ1:    CALL DELAY
        JNB  RZ,$
        CALL DELAY
        AJMP  RZUAN
STOPS:  CALL DELAY
        JNB  TZ,$
        CALL DELAY
        JMP  STOPS1
;-------------------------------------------------------
LZUAN:  MOV  R0,#0AH                ;左转-----》1,2正转
LZUAN1: MOV  A,R0
        MOV  DPTR,#TAB
        MOVC A,@A+DPTR
        JZ   LZUAN
        ;CPL  A
        MOV  OUT,A
        JNB  QJ,ZZ1
        JNB  HT,FZ1
        JNB  RZ,RZ1
        JNB  TZ,STOPS
        CALL DELAY
        INC  R0
        JMP  LZUAN1
;-------------------------------------------------------
RZUAN:  MOV  R0,#0fH                ;右转---》1,2反转
RZUAN1: MOV  A,R0
        MOV  DPTR,#TAB
        MOVC A,@A+DPTR
        JZ   RZUAN
        ;CPL  A
        MOV  OUT,A
        JNB  QJ,ZZ1
        JNB  HT,FZ1
        JNB  LZ,LZ1
        JNB  TZ,STOPS
        CALL DELAY
        INC  R0
        JMP  RZUAN1
;-------------------------------------------------
DELAY:  MOV R1,#255                    ;延时
D1:     MOV R2,#255
        DJNZ R2,$
        DJNZ R1,D1
        RET
;DelayS:  MOV  R5,#0AH
;L1:     MOV R6,#0FFH
;Delay0: MOV R7,#0FFH
;Delay1: DJNZ R7,Delay1
       ; DJNZ R6,Delay0
        ;DJNZ R5,L1
        ;RET
;-----------------------------------------------------
TAB:    DB 33H,96H,0CCH,69H,00H     ;正转码
        DB 33H,69H,0CCH,96H,00H     ;反转码
        DB 33H,66H,0CCH,99H,00H     ;左转码
	DB 33H,99H,0CCH,66H,00H     ;右转码

END
;

⌨️ 快捷键说明

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