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



    • #物块检测数据打包
      def pack_block_data():
       #   print(dot.x,dot.y)
          pack_data=bytearray([0xAA,0xAF,0xF2,0x00,
              dot.x>>8,dot.x,
              dot.y>>8,dot.y,dot.num>>8,dot.num,
              dot.flag,0x00])
      ##将像素值赋值给dot.pixels,         dot.flag==1
          print(dot.x,dot.y)
       #   print(5,pack_data())
      
          #清零点检测偏移数据和倾角数据,使得在没有检测到点时,输出为零
          dot.x = 0
          dot.y = 0
      
          lens = len(pack_data)#数据包大小
          pack_data[3] = lens-5;#有效数据个数
      
          i = 0
          sum = 0
      
          #和校验
          while i<(lens-1):
              sum = sum + pack_data[i]
              i = i+1
          pack_data[lens-1] = sum;
      
          return pack_data
      

      然后串口助手收到的帧头是AA 4D所以我另一边的单片机要的帧头就不行,请问有办法解决吗



    • 我没看懂你是什么意思?
      是程序生成的数据和发送的数据不一致?

      提供一下全部的代码,和串口助手的截图。