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



    • # TCP客户端(Socket通信) 实验
      #
      # 通过WiFi模块编程实现OpenMV的Socket通信,数据收发.
      
      
      import network, usocket,pyb
      
      # WiFi信息
      SSID='MERCURY' # Network SSID
      KEY='11111'  # Network key
      #socket数据接收中断标志位
      socket_node = 0
      
      # Init wlan module and connect to network
      print("Trying to connect... (may take a while)...")
      
      wlan = network.WINC()
      wlan.connect(SSID, key=KEY, security=wlan.WPA_PSK)
      
      # We should have a valid IP now via DHCP
      print(wlan.ifconfig())
      
      #创建socket连接,连接成功后发送“Hello 01Studio!”给服务器。
      client=usocket.socket()
      addr=('192.168.190.1',8080) #服务器IP和端口
      client.connect(addr)
      ![0_1585060748029_捕获.PNG](https://fcdn.singtown.com/33d54e95-3cc0-4953-b06f-a3e81e9d14e8.PNG) client.send('as')
      
      #开启定时器,周期100ms,重复执行socket通信接收任务
      def fun(tim):
          global socket_node
          socket_node = 1
          pyb.LED(3).toggle()
      
      tim = pyb.Timer(4,freq=10)
      tim.callback(fun)
      
      
      while True:
          if socket_node:
              text=client.recv(128) #单次最多接收128字节
              if text == '':
                  pass
      
              else: #打印接收到的信息为字节,可以通过decode('utf-8')转成字符串
                  print(text)
                  client.send('I got:'+text.decode('utf-8'))
      
              socket_node=0
      
      

      0_1585060774842_捕获.PNG



    • 这个代码不对啊,怎么还用定时器?

      https://book.openmv.cc/MCU/wifi.html#无线传输小球坐标

      按照这个框架来修改。