• OpenMV VSCode 扩展发布了,在插件市场直接搜索OpenMV就可以安装
  • 如果有产品硬件故障问题,比如无法开机,论坛很难解决。可以直接找售后维修
  • 发帖子之前,请确认看过所有的视频教程,https://singtown.com/learn/ 和所有的上手教程http://book.openmv.cc/
  • 每一个新的提问,单独发一个新帖子
  • 帖子需要目的,你要做什么?
  • 如果涉及代码,需要报错提示全部代码文本,请注意不要贴代码图片
  • 必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
  • 光源拓展版的程序插入到其他程序中,在脱机运行过程中只能闪烁一下是什么原因?



    • 光源拓展版的程序插入到其他程序中,在脱机运行过程中只能闪烁一下是什么原因?



    • import sensor, image, time,math,lcd,pyb
      import ustruct
      from pyb import UART, LED
      from pyb import Pin, Timer
      #50kHz pin6 timer2 channel1
      light = Timer(2, freq=50000).channel(1, Timer.PWM, pin=Pin("P6"))
      light.pulse_width_percent(1) # 控制亮度 0~100
      LED_R = pyb.LED(1)
      LED_G = pyb.LED(2)
      LED_B = pyb.LED(3)
      LED_R.off()
      LED_G.off()
      LED_B.off()
      lcd.init()
      red_threshold = (48, 73, 32, 77, -7, 55)
      green_threshold  =(50, 76, -26, -5, -2, 23)
      blue_threshold  = (44, 75, -3, 40, -84, -37)
      sensor.reset()
      sensor.set_pixformat(sensor.RGB565)
      sensor.set_framesize(sensor.QVGA)
      sensor.set_hmirror(True)
      sensor.set_vflip(True)
      sensor.skip_frames(n=2000)
      sensor.set_auto_gain(True)
      sensor.set_auto_whitebal(True)
      sensor.set_hmirror(False)
      sensor.set_vflip(False)
      clock = time.clock()
      uart = UART(3,115200)
      uart.init(115200, bits=8, parity=None, stop=1 )
      def find_max(blobs):
         max_size=0
         for blob in blobs:
             if blob.pixels() > max_size:
                 max_blob=blob
                 max_size = blob.pixels()
         return max_blob
      def sending_data(color,cx,cy):
          global uart;
          data = ustruct.pack("<bbbbbb",
          0x2c,0x12,int(color),int(cx),int(cy),0x5b)
          uart.write(data);
          for i in data:
              print("data的内容是:	",hex(i))
      while(True):
          img = sensor.snapshot().lens_corr(strength = 1.8, zoom = 1.0)
          red_blobs = img.find_blobs([red_threshold], x_stride=160, y_stride=130, pixels_threshold=8000)
          green_blobs = img.find_blobs([green_threshold], x_stride=135, y_stride=110, pixels_threshold=8000)
          blue_blobs = img.find_blobs([blue_threshold],x_stride=220, y_stride=150, pixels_threshold=8000 )
          if blue_blobs:
              color_status = ord('B')
              for r in blue_blobs:
      
                  sending_data(color_status,r[5],r[6])
          elif green_blobs:
              color_status = ord('G')
              for y in green_blobs:
      
                  sending_data(color_status,y[5],y[6])
          elif red_blobs:
              color_status = ord('R')
              for y in red_blobs:
      
                  sending_data(color_status,y[5],y[6])
                  
          else:
              color_status = ord('A')
      
      


    • light.pulse_width_percent(1)只亮1%你看不到。

      使用这个代码测试:
      https://book.openmv.cc/example/33-Light-Shield/light.html



    • 改到50还是不行,不连接电脑,只连接给vin加5v电压,补光板会闪一下,然后就不亮了



    • @kqip 你先测试我发的代码。