导航

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

    x4c3

    @x4c3

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

    x4c3 关注

    x4c3 发布的帖子

    • TypeError: object with buffer protocol required

      ![0_1722048068295_8IPUR$DJSGLU3X4S4{DLUL.png

      state=0  #状态标识
      rx_buff=[0]*2   #数据接收缓存区
      id_tixu=0x0000  #定义ID号接收缓存区
      def read_data():
          global id_tixu
          global state    
          if uart.any():  #进行串口数据的接收
                  #res=uart.read(1)  #表示为读取一个十六进制数,这里的uart必须是例化的
                  #state表示处理接收到的第几位数据
                  for i in range(5):
                      if state == 0:
                          res=uart.read(1)
                          res = ustruct.unpack("B", res)  #表示将res数据按照B格式进行解包
                          res = hex(res)
                          data = res[0:4]
                          if data == '0xFF': #帧头1
                              state = 1
                      elif state == 1:
                          res=uart.read(1)
                          res = ustruct.unpack("B", res)
                          res = hex(res)
                          for i in range(4):
                              data = res[0:4]
                          id_tixu=data
                          print(id_tixu)
                          state = 2
                      elif state == 2:
                          res=uart.read(2)
                          res = ustruct.unpack("B", res)
                          res = hex(res)
                          res = int(res)
                          rx_buff[0]=res  #数据1
                          Find_Task=rx_buff[0]
                          print(Find_Task)
                          state = 3
                      elif state == 3:
                          #res=uart.read(1)
                          res=uart.read(2)
                          res = ustruct.unpack("B", res)
                          res = hex(res)
                          res = int(res)
                          rx_buff[1]=res  #数据2
                          Target_Num=rx_buff[1]
                          print(Target_Num)
                          state = 4
                      elif state == 4:
                          res=uart.read(1)
                          res = ustruct.unpack("B", res)
                          res = hex(res)
                          data = res[0:4]
                          if data == '0xFE': #帧尾
                              state = 0
                              #数据处理处
                              print(rx_buff)
                          else:
                              state = 0
      
      发布在 OpenMV Cam
      X
      x4c3