您的位置 首页 测评

51单片机驱动步进电机(汇编语言)

在这里介绍一下用51单片机驱动步进电机的方法。这款步进电机的驱动电压12V,步进角为75度一圈360度,需要48个脉冲完成!

在这里介绍一下用51单片机驱动步进电机的办法。
这款步进电机的驱动电压12V,步进角为 7.5度 . 一圈 360 度 , 需求 48 个脉冲完结!!!
该步进电机有6根引线,摆放次第如下:1:赤色、2:赤色、3:橙色、4:棕色、5:$、6:黑色。
选用51驱动ULN2003的办法进行驱动。
ULN2003的驱动直接用单片机体系的5V电压,或许力矩不是很大,我们可自行加大驱动电压到12V。

;******************************************************************
  ;****************************步进电机的驱动***************************************
  ; DESIGN BY BENLADN911 FOSC = 12MHz 2005.05.19
  ;———————————————————————————
  ; 步进电机的驱动信号有必要为 脉冲信号!!! 滚动的速度和脉冲的频率成正比!!!
  ; 本步进电机步进角为 7.5度 . 一圈 360 度 , 需求 48 个脉冲完结!!!
  ;———————————————————————————
  ; A组线圈对应 P2.4
  ; B组线圈对应 P2.5
  ; C组线圈对应 P2.6
  ; D组线圈对应 P2.7
  ; 正转次第: AB组–BC组–CD组–DA组 (即一个脉冲,正转 7.5 度)
  ;———————————————————————————-
  ;—————————-正转————————–
  ORG 0000H
  LJMP MAIN
  ORG 0100H
  MAIN:
  MOV R3,#144 正转 3 圈共 144 脉冲
  START:
  MOV R0,#00H
  START1:
  MOV P2,#00H
  MOV A,R0
  MOV DPTR,#TABLE
  MOVC A,@A+DPTR
  JZ START 对 A 的判别,当 A = 0 时则转到 START
  MOV P2,A
  LCALL DELAY
  INC R0
  DJNZ R3,START1
  MOV P2,#00H
  LCALL DELAY1
  ;—————————–回转————————
  MOV R3,#144 回转一圈共 144 个脉冲
  START2:
  MOV P2,#00H
  MOV R0,#05
  START3:
  MOV A,R0
  MOV DPTR,#TABLE
  MOVC A,@A+DPTR
  JZ START2
  MOV P2,A
  CALL DELAY
  INC R0
  DJNZ R3,START3
  MOV P2,#00H
  LCALL DELAY1
  LJMP MAIN
  DELAY: MOV R7,#40 步进电机的转速
  M3: MOV R6,#248
  DJNZ R6,$
  DJNZ R7,M3
  RET
  DELAY1: MOV R4,#20 2S 延时子程序
  DEL2: MOV R3,#200
  DEL3: MOV R2,#250
  DJNZ R2,$
  DJNZ R3,DEL3
  DJNZ R4,DEL2
  RET
  TABLE:
  DB 30H,60H,0C0H,90H 正转表
  DB 00 正转完毕
  DB 30H,90H,0C0H,60H 回转表
  DB 00 回转完毕

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/ceping/317566.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部