导航

    • 登录
    • 搜索
    • 版块
    • 产品
    • 教程
    • 论坛
    • 淘宝
    1. 主页
    2. brgi
    B
    • 举报资料
    • 资料
    • 关注
    • 粉丝
    • 屏蔽
    • 帖子
    • 楼层
    • 最佳
    • 群组

    brgi

    @brgi

    0
    声望
    11
    楼层
    627
    资料浏览
    0
    粉丝
    0
    关注
    注册时间 最后登录

    brgi 关注

    brgi 发布的帖子

    • 有关于数字识别的问题?

      为什么数字识别的lenet保存到CAM以后运行一直显示This function is unavailable on your OPENMV Cam

      发布在 OpenMV Cam
      B
      brgi
    • RE: 想问下关于openmv直流电机的控制?

      @kidswong999 现在市面上的不是很多都是两个引脚控制的吗?像L298等等之类的

      发布在 OpenMV Cam
      B
      brgi
    • RE: 想问下关于openmv直流电机的控制?

      那么如果我不需要这个刹车功能的话,那么是不是也可以用两个引脚来控制电机正反转和速度了?一个引脚输出pwm信号给平均电压,一个高低电平变换来实现正反转?

      发布在 OpenMV Cam
      B
      brgi
    • 关于串口通讯的问题?

      想问下openmv可以和AT89C52RC单片机进行串口通讯吗?

      发布在 OpenMV Cam
      B
      brgi
    • RE: 想问下关于openmv直流电机的控制?

      可是用别的单片机来控制的话两个端口也足以控制正反转和速度了

      发布在 OpenMV Cam
      B
      brgi
    • 想问下关于openmv直流电机的控制?

      用别的单片机来控制直流电机两个引脚就够一个置0,另一个pwm控制,但是在openmv中看教程貌似一定需要三个引脚,可以解释下吗?

      发布在 OpenMV Cam
      B
      brgi
    • I/O口不够用了有什么好的办法吗?

      I/O口不够用有没有好的办法拓展?

      发布在 OpenMV Cam
      B
      brgi
    • 关于I/O口不够的问题?

      想问下官网上的洞洞板要怎么连接到openmv上?

      发布在 OpenMV Cam
      B
      brgi
    • 有关于PCA9685的问题

      为什么我按照官网上的例程复制的代码在控制舵机时一直会报错?
      下面第一段是报错提示

      Traceback (most recent call last):
        File "<stdin>", line 10, in <module>
        File "servo.py", line 10, in __init__
        File "pca9685.py", line 17, in __init__
        File "pca9685.py", line 35, in reset
        File "pca9685.py", line 23, in _write
      OSError: [Errno 110] ETIMEDOUT
      MicroPython v1.9.4-4548-g24c934f79 on 2019-03-23; OPENMV4 with STM32H743
      Type "help()" for more information.
      >>> 
      

      以下是官网复制的例程

      import utime
      
      import ustruct
      
      
      
      class PCA9685:
      
          def __init__(self, i2c, address=0x40):
      
              self.i2c = i2c
      
              self.address = address
      
              self.reset()
      
      
      
          def _write(self, address, value):
      
              self.i2c.writeto_mem(self.address, address, bytearray([value]))
      
      
      
          def _read(self, address):
      
              return self.i2c.readfrom_mem(self.address, address, 1)[0]
      
      
      
          def reset(self):
      
              self._write(0x00, 0x00) # Mode1
      
      
      
          def freq(self, freq=None):
      
              if freq is None:
      
                  return int(25000000.0 / 4096 / (self._read(0xfe) - 0.5))
      
              prescale = int(25000000.0 / 4096.0 / freq + 0.5)
      
              old_mode = self._read(0x00) # Mode 1
      
              self._write(0x00, (old_mode & 0x7F) | 0x10) # Mode 1, sleep
      
              self._write(0xfe, prescale) # Prescale
      
              self._write(0x00, old_mode) # Mode 1
      
              utime.sleep_us(5)
      
              self._write(0x00, old_mode | 0xa1) # Mode 1, autoincrement on
      
      
      
          def pwm(self, index, on=None, off=None):
      
              if on is None or off is None:
      
                  data = self.i2c.readfrom_mem(self.address, 0x06 + 4 * index, 4)
      
                  return ustruct.unpack('<HH', data)
      
              data = ustruct.pack('<HH', on, off)
      
              self.i2c.writeto_mem(self.address, 0x06 + 4 * index,  data)
      
      
      
          def duty(self, index, value=None, invert=False):
      
              if value is None:
      
                  pwm = self.pwm(index)
      
                  if pwm == (0, 4096):
      
                      value = 0
      
                  elif pwm == (4096, 0):
      
                      value = 4095
      
                  value = pwm[1]
      
                  if invert:
      
                      value = 4095 - value
      
                  return value
      
              if not 0 <= value <= 4095:
      
                  raise ValueError("Out of range")
      
              if invert:
      
                  value = 4095 - value
      
              if value == 0:
      
                  self.pwm(index, 0, 4096)
      
              elif value == 4095:
      
                  self.pwm(index, 4096, 0)
      
              else:
      
                  self.pwm(index, 0, value)
      
      
      发布在 OpenMV Cam
      B
      brgi
    • 有关于运行内存不够的问题?

      在跑程序的时候过了几秒报错,上网查了一下是内存不够的问题,想问下有没有什么办法可以解决,就两百多行的代码

      发布在 OpenMV Cam
      B
      brgi