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.mzph.cn/bicheng/38299.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【D3.js in Action 3 精译】1.1.2 D3.js 的适用场景

译注 上一节中我们了解了 D3 诞生的技术背景——为了满足 Web 可访问数据的可视化需求。本节再来看看 D3.js 的适用场景是怎样的、在什么时候会考虑使用 D3.js。 1.1.2 D3.js 的适用场景 数据可视化领域正蓬勃发展,且备受青睐。过去十年间用于生成数据驱动图形的工…

【Android面试八股文】如何判断一个APP在前台还是后台?有哪几种方法?

文章目录 1. ActivityLifecycleCallbacks2. RunningTasks 和 RunningProcesses2.2.1 RunningTasks实现步骤示例代码解释与注意事项替代方案2.2 RunningProcesses实现步骤示例代码解释与注意事项总结3. 使用 Activity 生命周期方法在最新的 Android 开发环境中,推荐的做法是使用…

slot插槽详解及动态插槽的使用

slot插槽的作用: 让用户可以拓展组件,更好地去复用组件,并对其做定制化; slot的用法: 可以分为三类:默认插槽、具名插槽、作用域插槽 插槽用<slot>标签来确定渲染的位置,里面可以包含默认内容,如果没有提供插槽内容,则显示默认内容; 默认插槽: 子组件中…

动态代理和静态代理的区别

动态代理和静态代理在多个方面都有显著的区别。 首先&#xff0c;从代理的对象来看&#xff0c;静态代理通常只代理一个类&#xff0c;而动态代理则可以代理一个接口下的多个实现类。静态代理在编程时就已经明确知道要代理哪个类&#xff0c;而动态代理在运行时才决定要代理的…

Linux—进程与计划管理

目录 一、程序 二、进程 1、什么是进程 2、进程的特点 3、进程、线程、携程 3.1、进程 3.2、线程 3.3、携程 三、查看进程信息 1、ps -aux 2、ps -elf 3、top ​3.2、输出内容详解 3.2.1、输出第一部分解释 3.2.2、输出第二部分解释 4、pgrep 5、pstree 四、进…

【项目】论坛系统项目自动化测试

论坛系统项目自动化测试 前述一、脑图二、代码编写1.公共类InitAndEnd1.登录页面测试ForumLoginTest正常登录&#xff1a;异常登录&#xff1a; 3.注册页面测试ForumRegisterTest注册成功&#xff1a;注册失败&#xff1a; 4论坛列表页面测试ForumListTest登录状态下&#xff1…

1.spring入门案例

Spring 介绍 Spring是轻量级的开源的JavaEE框架。 Spring有两个核心部分&#xff1a;IOC和AOP IOC 控制反转&#xff0c;把创建对象过程交给Spring进行管理。 AOP 面向切面&#xff0c;不修改源代码进行功能增强。 Spring特点 1.方便解耦&#xff0c;简化开发。 2.AOP编…

算法体系-25 第二十五节:窗口内最大值或最小值的更新结构

一 滑动窗口设计知识点 滑动窗口是什么&#xff1f; 滑动窗口是一种想象出来的数据结构&#xff1a; 滑动窗口有左边界L和有边界R 在数组或者字符串或者一个序列上&#xff0c;记为S&#xff0c;窗口就是S[L..R]这一部分 L往右滑意味着一个样本出了窗口&#xff0c;R往右滑意味…

【MySQL】库的操作【创建和操纵】

文章目录 1.创建数据库1.1字符集和校验规则1.查看系统默认字符集以及校验规则2.查看数据库支持的字符集以及校验规则 1.2校验规则对数据库的影响1.创建一个数据库&#xff0c;校验规则使用utf8_ general_ ci[不区分大小写]2.创建一个数据库&#xff0c;校验规则使用utf8_ bin[区…

python基础之正则表达式

Python中的正则表达式&#xff08;regular expressions&#xff0c;简称regex&#xff09;是强大的字符串处理工具&#xff0c;用于搜索、匹配和替换字符串中的特定模式。Python通过 re 模块提供对正则表达式的支持。以下是对Python正则表达式的详细讲解。 基本概念和语法 导…

MSPM0G3507——QEI

在支持QEI的TIMGx实例中&#xff0c;正交编码器接口&#xff08;QEI&#xff09;模式提供了一个到正交编码器输出的接口。它对正交编码数据进行解码&#xff0c;以提供关于线性或旋转运动的相对定位和移动的信息。 QEI由两个格雷编码的正交输入信号PHA和PHB以及索引输入信号IDX…

Postman接口测试工具的原理及应用详解(三)

本系列文章简介: 在当今软件开发的世界中,接口测试作为保证软件质量的重要一环,其重要性不言而喻。随着前后端分离开发模式的普及,接口测试已成为连接前后端开发的桥梁,确保前后端之间的数据交互准确无误。在这样的背景下,Postman作为一款功能强大、易于使用的接口测试工…

使用session.setAttribute存储会话属性

使用session.setAttribute存储会话属性 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;在本文中&#xff0c;我们将深入探讨如何在Java Web应用中使用session.s…

flask的基本使用2

上一篇我们介绍了基本使用方法 flask使用 【 1 】基本使用 from flask import Flask# 1 实例化得到对象 app Flask(__name__)# 2 注册路由--》写视图函数 app.route(/) def index():# 3 返回给前端字符串return hello worldif __name__ __main__:# 运行app&#xff0c;默认…

idea的代码提示插件使用记录

安装ai插件卸载之后&#xff0c;偶尔还是idea一直占用100%&#xff0c;将idea缓存全清理了&#xff0c;重新生成之后就正常了 idea官方插件 下面几个感觉…基本没有感觉 按行提示的偶尔有提示&#xff0c;&#xff08;cpu占用不小&#xff0c;提示不强&#xff09; 缺点&am…

Sentinel解决雪崩问题

我们或多或少都对雪崩问题有点了解&#xff0c;在微服务系统中&#xff0c;各个微服务互相调用&#xff0c;关系错综复杂&#xff0c;如果其中一个微服务挂了或者处理消息的速度大幅下降&#xff0c;需要被处理的消息越积越多&#xff0c;那么影响的不仅仅是本微服务的功能&…

C++ | Leetcode C++题解之第199题二叉树的右视图

题目&#xff1a; 题解&#xff1a; class Solution { public:vector<int> rightSideView(TreeNode* root) {unordered_map<int, int> rightmostValueAtDepth;int max_depth -1;stack<TreeNode*> nodeStack;stack<int> depthStack;nodeStack.push(ro…

SCI二区|北极海鹦优化算法(APO)原理及实现【免费获取Matlab代码】

目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.结果展示4.参考文献5.代码获取 1.背景 2024年&#xff0c;W Wang受到北极海鹦的生存和捕食行为启发&#xff0c;提出了北极海鹦优化算法&#xff08;Arctic Puffin Optimization, APO&#xff09;。 2.算法原理 2.1算法思想 …

Tcmalloc工具定位内存泄漏问题

内存泄漏问题定位 gperftools工具安装 执行如下操作&#xff1a; git clone https://github.com/gperftools/gperftools.git 注&#xff1a;如果网速较慢&#xff0c;可直接去下载压缩包。 如我下载的地址&#xff1a;https://github.com/gperftools/gperftools/releases/ta…

深入探索Python自动化测试:Pytest与Unittest框架详解

摘要&#xff1a; 在软件开发过程中&#xff0c;自动化测试是确保代码质量和提高开发效率的关键环节。Python作为一门广泛使用的编程语言&#xff0c;提供了多种自动化测试工具。本文详细介绍了Python中两个主流的测试框架&#xff1a;Pytest和Unittest。文章首先概述了Pytest的…