您的位置:首页技术文栏步进电机
内容搜索:
阅读内容
背景:#EDF0F5 #FAFBE6 #FFF2E2 #FDE6E0 #F3FFE1 #DAFAF3 #EAEAEF 默认  

步进电机控制实验

[日期:2008-06-27 ] [来源:东哥单片机学习网 www.picavr.com 整理 作者:佚名] [字体: (投递新闻)
************************************************
* FileName:  ex5.asm                        *
* Description: 步进电机控制实验               *
* Copyright(C) SanZhi Electronic, Author Zpin  *
************************************************
 
.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

阅读:
录入:JETTA

推荐 】 【 打印
本文评论
      全部评论
发表评论


点评: 字数
姓名:
站长推荐