step.asm

来自「关于单片机的一系列的设计程序」· 汇编 代码 · 共 41 行

ASM
41
字号
BUFF_STEP  EQU  21H
    SW1         BIT   P2.7
    KEY         BIT   P3.3
    ORG  000h
    JMP  START
    ORG  100H
;----------------------------------------
START:MOV   P0,#0f0h          ;初始化MCU埠
      MOV   P1,#0ffh
      MOV   P3,#0ffh
      MOV   P2,#0ffH
      MOV   A,#00H           ;初始化寄存器
      MOV   PSW,#00H
      MOV   IE,#00H
      MOV   SP,#30H
      CLR   KEY
MAIN: JNB   SW1,CCW_LP     ;正常电机正向转动
      MOV   DPTR,#TAB_CW   ;按下SW1键,电机反向转动
      JMP   LOOP
CCW_LP:MOV  DPTR,#TAB_CCW
LOOP:  MOV   A,BUFF_STEP
        MOVC  A,@A+DPTR
        MOV   P0,A
        LCALL  DEL
        INC    BUFF_SteP
        MOV   A,BUFF_STEP
        CJNE  A,#04H,MAIN
        MOV   BUFF_STEP,#00H
        JMP   MAIN

DEL:   MOV   R6,#200
DEL0:  MOV   R7,#200
       DJNZ  R7,$
       DJNZ  R6,DEL0
       RET

TAB_CW:  DB   00000011B,00000110B,00001100B,00001001B     ;正转相序
TAB_CCW: DB 00001001B,00001100B,00000110B,00000011B ;反转相序
 END

⌨️ 快捷键说明

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