星瞳实验室APP,快速收到回复
  • 我们只解决官方正版的OpenMV的问题(STM32),其他的分支有很多兼容问题,我们无法解决。
  • 发帖子之前,请确认看过所有的视频教程,https://singtown.com/learn/ 和所有的上手教程http://book.openmv.cc/
  • 每一个新的提问,单独发一个新帖子
  • 帖子需要目的,你要做什么?
  • 如果涉及代码,需要报错提示全部代码文本,请注意不要贴代码图片
  • 必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
  • 那个bt6612怎么控制步进电机的正反转啊



    • 那个bt6612怎么控制步进电机的正反转啊,那几个相的数组什么意思啊





    • Motor Shield Stepper Motor Example

      This example shows off how to use your motor shield

      to control 1 stepper motor.

      import time
      from tb6612 import Stepper

      stepper = Stepper() # default rpm=2, power=50
      stepper.set_speed(1) # rpm = 1
      stepper.set_power(80) #set pwm
      while (True):
      stepper.step(200)
      time.sleep(1000)
      stepper.step(-200)
      time.sleep(1000)

      步进电机这样不会反转啊



    • @kidswong999 import pyb
      class Stepper():
      def init(self, stepnumber=200, rpms=2, power=50):
      self.stepnumber = stepnumber
      self.pin1 = pyb.Pin('P3', pyb.Pin.OUT_PP, pyb.Pin.PULL_NONE)
      self.pin2 = pyb.Pin('P2', pyb.Pin.OUT_PP, pyb.Pin.PULL_NONE)
      self.pin3 = pyb.Pin('P1', pyb.Pin.OUT_PP, pyb.Pin.PULL_NONE)
      self.pin4 = pyb.Pin('P0', pyb.Pin.OUT_PP, pyb.Pin.PULL_NONE)
      tim = pyb.Timer(4, freq=1000)
      self.power1 = tim.channel(1, pyb.Timer.PWM, pin=pyb.Pin("P7"), pulse_width_percent=0)
      self.power2 = tim.channel(2, pyb.Timer.PWM, pin=pyb.Pin("P8"), pulse_width_percent=0)
      self.set_speed(rpms)
      self.set_power(power)
      self.phase = self.phase_list()
      def set_speed(self, rpms):
      self.delay_time = int(1000000/(rpms*self.stepnumber)/2)
      def step(self, num):
      for i in range(num):
      self.pin1.high()
      self.pin2.high()
      self.pin3.high()
      self.pin4.high()
      pyb.udelay(self.delay_time)

      这个改pin的值好像电机正反转没什么影响啊。可以教我怎么改步进电机旋转方向吗?