当前位置: 首页 > news >正文

ESP32实现UDP连接——micropython版本

代码:

import network
import socket
import timedef wifiInit(name, port):ap = network.WLAN(network.AP_IF)  # 创建一个热点ap.config(essid=name, authmode=network.AUTH_OPEN)  # 无需密码ap.active(True)  # 激活热点ip = ap.ifconfig()[0]  # 获取ip地址print("wifi ip:", ip)udpSocket = Nonetry:while True:if not ap.isconnected():  # 等待client连接print("no client")time.sleep(1)else:print("client connected")if udpSocket is None:udpSocket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)  # 创建UDP套接字udpSocket.bind((ip, port))  # 绑定地址和端口号print('UDP socket created')print("waiting for data")data, addr = udpSocket.recvfrom(1024)  # 接收数据(1024字节大小)print("received data:", data.decode())# 模拟回复数据给客户端response = "Received data: " + data.decode()udpSocket.sendto(response.encode(), addr)if data.decode() == "#end":print("client socket disconnected")udpSocket.close()udpSocket = Noneap.disconnect()ap.active(False)print("wifi ap disconnected")breakif not ap.isconnected():udpSocket.close()udpSocket = Noneprint("client disconnected")breakexcept Exception as e:print(f"出现异常: {e}")finally:if udpSocket:udpSocket.close()print("Socket closed")wifiInit("wifi32", 66)

效果:
在这里插入图片描述

http://www.lryc.cn/news/387575.html

相关文章:

  • Windows Ternimal
  • Unity扩展编辑器功能的特性
  • API类别 - UI核心
  • Redis-主从复制-配置主从关系
  • DigiRL:让 AI 自己学会控制手机
  • 04.Ambari自定义服务开发-自定义服务配置文件在Ambari中的设置方法
  • LSTM时间序列基础学习
  • 『Z-Workshop』 6月22日线下ALCOVE分享活动
  • 【机器学习】机器学习重要方法——迁移学习:理论、方法与实践
  • uniapp, ‍[⁠TypeError⁠]‍ “Failed to fetch dynamically imported module“ 报错解决思路
  • 四川省高等职业学校大数据技术专业建设暨专业质量监测研讨活动顺利开展
  • 深入解析三大跨平台开发框架:Flutter、React Native 和 uniapp
  • 【吊打面试官系列-MyBatis面试题】#{}和${}的区别是什么?
  • 解决HTTP 400 Bad Request错误的方法
  • Html的表单标签。(Java程序员需要掌握的前端)
  • Arduino (esp ) 下String的内存释放
  • 图灵虚拟机配置
  • 【SQL常用日期函数(一)】
  • C++操作系列(二):VSCode安装和配置C++开发环境
  • 【java12】java12新特性之File的mismatch方法
  • uni-app (通过HBuilderX 和 VS Code 开发)详细连接过程教学。
  • 安宝特方案 | AR术者培养:AR眼镜如何帮助医生从“看”到“做”?
  • 20240628每日前端---------解决vue项目滥用watch
  • 【LLM 评估】GLUE benchmark:NLU 的多任务 benchmark
  • Go线程调度器
  • 使用 fvm 管理 Flutter 版本
  • 若依-前后端分离项目学习
  • 使用adb shell getprop命令获取Android设备的属性
  • LNMP环境部署指南
  • [stm32]温湿度采集与OLED显示