• 免费好用的星瞳AI云服务上线!简单标注,云端训练,支持OpenMV H7和OpenMV H7 Plus。可以替代edge impulse。 https://forum.singtown.com/topic/9519
  • 我们只解决官方正版的OpenMV的问题(STM32),其他的分支有很多兼容问题,我们无法解决。
  • 如果有产品硬件故障问题,比如无法开机,论坛很难解决。可以直接找售后维修
  • 发帖子之前,请确认看过所有的视频教程,https://singtown.com/learn/ 和所有的上手教程http://book.openmv.cc/
  • 每一个新的提问,单独发一个新帖子
  • 帖子需要目的,你要做什么?
  • 如果涉及代码,需要报错提示全部代码文本,请注意不要贴代码图片
  • 必看:玩转星瞳论坛了解一下图片上传,代码格式等问题。
  • 如何使用uart连续输入?



    • 0_1669900115816_666.png

      import begin
      from pyb import UART
      
      import sensor, image, time
      
      uart = UART(3, 19200,timeout_char=1000)
      
      while(True):
          if uart.any():
              q = uart.read().decode()
              print("收到指令:",q)
              if int(q) == 10:
                  print("初始化完成")
                  w = uart.read()
                  print("收到666:",w)
                  test.test() #内含另外的uart接收串口信息
              elif int(q) == 12:
                  begin.begin_two() #指示灯表示状态
           time.sleep_ms(10)
      
      

      我想实现当q==10的情况下,继续键入如11的信息,使之进行下一步操作,该操作结束后返回最开始的循环等待继续键入信息,现在遇到的问题是最外层可以接受到信息,但无法在分支上继续键入串口信息,求助



    • 你应该每次输入最后加换行。第一次输入"10\r\n",第二次输入"11\r\n"。

      然后代码里uart.read()改为uart.readline(),每次接收一行。