星瞳实验室APP,快速收到回复
  • 我们只解决官方正版的OpenMV的问题(STM32),其他的分支有很多兼容问题,我们无法解决。
  • 如果有产品硬件故障问题,比如无法开机,论坛很难解决。可以直接找售后维修
  • 发帖子之前,请确认看过所有的视频教程,https://singtown.com/learn/ 和所有的上手教程http://book.openmv.cc/
  • 每一个新的提问,单独发一个新帖子
  • 帖子需要目的,你要做什么?
  • 如果涉及代码,需要报错提示全部代码文本,请注意不要贴代码图片
  • 必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
  • v3.9.2版本串口无法使用?



    • openmv4p + mt9v034模块 使用v3.9.2固件版本,其他硬件使用 ttl转rs232模块 连接串口转wifi硬件模块出现串口无法使用的问题,即无法发送与接收。刷上固件版本v3.6.8 串口发送和接收可正常使用

      # QRCode Example
      #
      # This example shows the power of the OpenMV Cam to detect QR Codes
      # using lens correction (see the qrcodes_with_lens_corr.py script for higher performance).
      
      import sensor, image, time ,tv
      from pyb import UART
      
      from pyb import Pin, Timer
      
      sensor.reset()
      sensor.set_pixformat(sensor.GRAYSCALE)
      sensor.set_framesize(sensor.QVGA)
      sensor.skip_frames(time = 2000)
      sensor.set_auto_gain(False) # must turn this off to prevent image washout...
      clock = time.clock()
      uart = UART(3, 19200)
      tv.init() # 初始化tv
      # 50kHz pin6 timer2 channel1
      #light = Timer(2, freq=18000).channel(1, Timer.PWM, pin=Pin("P6"))
      #light.pulse_width_percent(100) # adjust light 0~100
      
      
      while(True):
          clock.tick()
          img = sensor.snapshot()
          #使用无畸变镜头
          #img.lens_corr(1.8) # strength of 1.8 is good for the 2.8mm lens.
          for code in img.find_qrcodes():
              img.draw_rectangle(code.rect(), color = (255, 0, 0))
              print(code.payload())
              if code.payload() is not None :
                  uart.write(code.payload() + "\r")
      
          tv.display(img)
          if uart.any() :
              a = uart.readline().decode()
              print(a)
         # print(clock.fps())
      
      

      使用v3.9.2版本 单独测试串口 也是无法接收与发送 使用v3.6.8版本可以正常接收发送

      
      import time
      from pyb import UART
      
      
      uart = UART(3, 19200)
      
      while(True):
          uart.write("Hello World!\r")
          if uart.any() :
              a = uart.readline().decode()
              print(a))
      
      


    • uart = UART(3, 19200)
      

      改为

      uart = UART(3,19200, timeout=1000)