【零知ESP8266教程】AP模式下WIFI UDP协议通信示例

2023-11-12

本帖主要讲解ESP8266 WIFI功能关于UDP协议网络传输的应用,这里演示了ESP8266在AP模式下UDP通信的示例:
1、硬件

  • 零知ESP8266开发板
    2、软件
    (1)代码如下:
`/**********************************************************
*    文件: udp-server.ino      by 零知实验室([url=http://www.lingzhilab.com]www.lingzhilab.com[/url])
*    -^^- 零知开源,让电子制作变得更简单! -^^-
*    时间: 2019/06/17 11:42
*    说明:
************************************************************/
#include <ESP8266WiFi.h>
#include <WiFiUDP.h>
 
unsigned int UDPPort = 8888;      // local port to listen on
 
char packetBuffer[255]; //buffer to hold incoming packet
char  ReplyBuffer[] = "acknowledged";       // a string to send back
WiFiUDP Udp;
 
// 复位或上电后运行一次:
void setup() {
        //在这里加入初始化相关代码,只运行一次:
        Serial.begin(115200);
         
        WiFi.softAP("Wi-Fi");
        Udp.begin(UDPPort);
        Serial.println();
        Serial.println("Started ap. Local ip: " + WiFi.localIP().toString());
}
 
//一直循环执行:
void loop() {
        // 在这里加入主要程序代码,重复执行:
        // if there's data available, read a packet
        int packetSize = Udp.parsePacket();
        if (packetSize) {
                Serial.print("Received packet of size ");
                Serial.println(packetSize);
                Serial.print("From ");
                IPAddress remoteIp = Udp.remoteIP();
                Serial.print(remoteIp);
                Serial.print(", port ");
                Serial.println(Udp.remotePort());
                 
                // read the packet into packetBufffer
                int len = Udp.read(packetBuffer, 255);
                if (len > 0) {
                        packetBuffer[len] = 0;
                }
                Serial.println("Contents:");
                Serial.println(packetBuffer);
                // send a reply, to the IP address and port that sent us the packet we received
                Udp.beginPacket(Udp.remoteIP(), Udp.remotePort());
                Udp.write(ReplyBuffer);
                Udp.endPacket();
        }
}`

(2)将上述代码验证后上传到零知ESP8266,然后打开串口调试 窗口,可以看到如下信息:
在这里插入图片描述
(3)上面步骤完成后我们已经把ESP8266作为一个热点,SSID名字为"WI-FI”,可以在电脑上看到如下信息:

在这里插入图片描述
在这里插入图片描述
(4)我们打开零知工具箱(可在零知官网免费获取),然后填写好IP地址和端口号,点击【连接】后就可以和ESP8266进行通信了。
3、测试验证:
可以在串口调试窗口和零知工具箱发送接收区看到如下数据传输信息:
在这里插入图片描述

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【零知ESP8266教程】AP模式下WIFI UDP协议通信示例 的相关文章

  • 如何搭建自动化测试框架?8年测试老司机浅谈一下!

    公司使用python selenium pytest来做UI自动化测试 我经历了从0开始搭建自动化工程 开发测试报告web服务 编写测试用例 经过了一段时间的磨合 感觉已经比较顺手了 这里梳理下我采用的自动化工程目录组织结构 整体目录结构及
  • 常用Web安全扫描工具合集

    漏洞扫描是一种安全检测行为 更是一类重要的网络安全技术 它能够有效提高网络的安全性 而且漏洞扫描属于主动的防范措施 可以很好地避免黑客攻击行为 做到防患于未然 那么好用的漏洞扫描工具有哪些 答案就在本文 1 AWVS Acunetix We
  • 从自动化视角去思考测试人员的职业发展!

    在近年来 技术的不断进步促生了大量新的工具 理论和实践方法 自动化测试在实际工作中已形成了多种理论和实践模式 对于推动这些技术发展背后的原因 我认为值得深入探索和回顾 下面先聊聊一下先自动化测试相关的发展 仅个人观点 自动化测试发展历程 以
  • Web自动化测试适用于哪些场景?看完这篇文章你就知道了!

    前言 在软件开发的过程中 测试是不可或缺的环节 而随着web应用的普及 web自动化测试也成为了非常重要的一部分 本文将介绍web自动化测试的概念和常见应用场景 并给出一个示例代码 一 什么是web自动化测试 Web自动化测试是指通过编写程
  • SoapUI、Jmeter、Postman三种接口测试工具的比较分析!

    前段时间忙于接口测试 也看了几款接口测试工具 简单从几个角度做了个比较 拿出来与诸位分享一下 本文 从多个方面对接口测试的三款常用工具进行比较分析 以便于在特定的情况下选择最合适的工具 或者使用自己编写的工具 不同工具定位不同 我们只是主要
  • pytest自动化框架运行全局配置文件pytest.ini

    还记得在之前的篇章中有讲到Pytest是目前主要流行的自动化框架之一 他有基础的脚本编码规则以及两种运行方式 pytest的基础编码规则是可以进行修改 这就是今日文章重点 看到这大家心中是否提出了两个问题 pytest的基础编码规则在哪可以
  • 【实战详解】如何快速搭建接口自动化测试框架?Python + Requests

    摘要 本文主要介绍如何使用Python语言和Requests库进行接口自动化测试 并提供详细的代码示例和操作步骤 希望能对读者有所启发和帮助 前言 随着移动互联网的快速发展 越来越多的应用程序采用Web API 也称为RESTful API
  • 病案管理的定义、流程及应用分析

    病案管理是指针对病人的基本信息 病历 就诊记录等进行收集 整理 存储 分析和应用的一项管理工作 它在医院 医疗机构和医疗行业中具有重要的作用 能够提高医疗服务的质量 效率和安全性 本文将就病案管理的定义 流程以及其在医疗健康领域中的应用进行
  • 性能测试怎么入门?一文7个知识点带你成功入门!

    一 相关概念 1 性能测试相关 负载测试 性能测试 压力测试 稳定性测试 全链路测试等 2 性能指标 吞吐率 tps 并发用户数 吞吐量 响应时间等 二 性能测试 1 概念解析 通过工具 找出或者获得系统在不同工况下的性能指标值 主要使用性
  • 性能测试 —— 生成html测试报告、参数化、jvm监控

    1 生成HTML的测试报告 1 1配置 1 找到 jmeter 的安装目录 下的bin中的jmeter properties jmeter配置文件 2 ctrl f 搜索jmeter save saveservice output form
  • 测试报告和结果分析 —— allure整合pytest生成测试报告

    一 生成HTML测试报告的三种方式 1 unittest和HTMLTestRunner整合 2 allure和pytest整合 3 Jenkins中安装allure插件 Jenkins安装插件出错 不能正常使用 二 allure整合pyte
  • 性能测试怎么入门?一文7个知识点带你成功入门!

    一 相关概念 1 性能测试相关 负载测试 性能测试 压力测试 稳定性测试 全链路测试等 2 性能指标 吞吐率 tps 并发用户数 吞吐量 响应时间等 二 性能测试 1 概念解析 通过工具 找出或者获得系统在不同工况下的性能指标值 主要使用性
  • 医院绩效核算系统源码,java语言开发

    医院绩效考核系统全套源码 医院绩效核算系统源码 java语言开发 医院绩效考核系统可根据工作绩效考核管理规定 配置相应的绩效考核模型 从工作量统计 核算维度 核算权重三方面计算工作绩效 利用数据处理和数据分析的支撑作用 实现对工作量统计和绩
  • 接口测试之Fiddler弱网测试

    前言 目前市面上的APP功能越来越丰富 移动端测试也越显为重要 因为用户在网速慢的情况下 你的网站 软件 总能出现各种各样的问题 请不要忽略这一点 针对在不同的网络情况下 接下来 本篇要讲述的就是在通过fiddler对APP进行模拟弱网测试
  • Selenium小技巧!

    Chrome DevTools 简介 Chrome DevTools 是一组直接内置在基于 Chromium 的浏览器 如 Chrome Opera 和 Microsoft Edge 中的工具 用于帮助开发人员调试和研究网站 借助 Chro
  • Locust负载测试工具实操

    本中介绍如何使用Locust为开发的服务 网站执行负载测试 Locust 是一个开源负载测试工具 可以通过 Python 代码构造来定义用户行为 避免混乱的 UI 和臃肿的 XML 配置 步骤 设置Locust 在简单的 HTTP 服务上模
  • 步骤详图 教你在linux搭建容器环境

    警告 切勿在没有配置 Docker YUM 源的情况下直接使用 yum 命令安装 Docker 1 准备工作 系统要求 要安装Docker CE 社区版 操作系统的最低要求是CentOS7 7以下版本都不被支持 卸载旧版本 Docker改版
  • Web自动化测试 —— cookie复用

    一 cookie简介 cookie是一些数据 存储于用户电脑的文本文件中 当web服务器想浏览器发送web页面时 在链接关闭后 服务端不会记录用户信息 二 为什么要使用Cookie自动化登录 复用浏览器仍然在每次用例开始都需要人为介入 若用
  • 一文让你快速写出高效的软件测试用例

    前言 编写测试用例的目的就是确保测试过程全面高效 有据可查 但要编写出高效的测试用例 需要搞清楚什么是测试用例 以及如何编写出高效的测试用例 接下来将从以下几个部分来进行展开 1 什么是测试用例 2 如何编写测试用例 3 软件测试学习资源分
  • 一文从0到1手把手教学UI自动化测试之数据驱动!

    在UI的自动化测试中 我们需要把测试使用到的数据分离到文件中 如果单纯的写在我们的测试模块里面 不是一个好的设计 所以不管是什么类型的自动化测试 都是需要把数据分离出来的 当然分离到具体的文件里面 文件的形式其实有很多的 这里主要说明JSO

随机推荐

  • JavaScript中的Object.defineProperty()和defineProperties()

    文章同步到github ECMAS 262第5版在定义只有内部采用的特性时 提供了描述了属性特征的几种属性 ECMAScript对象中目前存在的属性描述符主要有两种 数据描述符 数据属性 和存取描述符 访问器属性 数据描述符是一个拥有可写或
  • 小程序图片加载失败binderror方法处理

    场景 我们在小程序项目中的一个图片列表 当某些图片加载失败后 直接显示空白 这样用户体验不好 为了解决当图片加载失败 我们给一个默认图片代替 参考官方给的图片加载失败的处理方法 binderror cover image 微信开放文档 第一
  • vue3+vite 使用 postcss-pxtorem、autoprefixer 实现自适应和自动添加前缀

    自动添加前缀 自适应 1 安装 postcss pxtorem 和 autoprefixer npm install postcss pxtorem save npm i autoprefixer 2 vite config js引入并配置
  • 解决 无法解析名称 NaiveBayes.fit。/i get Undefined variable “NaiveBayes“ or class “NaiveBayes.fit“.

    应用朴素贝叶斯分类器时候 发现报错无法解析名称 NaiveBayes fit 这是因为 你想用NaiveBayes 适用于MATLAB R2018b 根据NaiveBayes的R2014b发布说明 fit被fitNaiveBayes取代 同
  • 【Flutter】时间轴高度自适应最佳实践

    1 使用部件 画圆圈 使用 canvas drawCircle 和属性为 paint style PaintingStyle fill 画笔画两个实心圆 画竖线 使用 canvas drawLine 和属性为 paint style Pai
  • Vivado下PLL实验

    文章目录 前言 一 CMT 时钟管理单元 1 CMT 简介 2 FPGA CMT 框图 3 MMCM 框图 4 PLL 框图 二 创建工程 1 创建工程 2 PLL IP 核配置 3 进行例化 三 进行仿真 1 创建仿真文件 2 进行仿真设
  • 二、C++笔记之面向对象特性---继承

    继承 继承是面向对象三大特性之一 有些类与类之间存在特殊的关系 例如下图中 我们发现 定义这些类时 下级别的成员除了拥有上一级的共性 还有自己的特性 这个时候我们就可以考虑利用继承的技术 减少重复代码 继承的基本语法 例如我们看到很多网站中
  • 学习[30天自制操作系统]day02遇到的makefile的问题(未解决)

    学习 30天自制操作系统 遇到的问题 场景还原 尝试过的解决办法 问题描述 光盘代码day 02 helloos 4 helloos 5 在使用makefile 运行qemu 模拟器过程出错 场景还原 makefile ipl bin ip
  • 如何更改node.js的控制台字体颜色?

    本文翻译自 How to change node js s console font color I had to change the console background color to white because of eye pr
  • ASP.NET 的特点

    asp net 相比传统的动态页面技术 使程序设计相对简化 结构更为清晰 但大大加重 了页面设计的难度 其界面处理与传统的 asp php cgi 相比 极为死板 几乎全部需要由程 序员来处理其界面 很难使用第三方工具进行可视化设计 asp
  • Springboot 获取接口多个实现类bean 并调用的方式

    前文中提到通过策略模式代替switch case的方式 在实际使用中将接口通过bean获得 然后去调用即可 实际操作中发现 springboot在通过 Autowired 或者 Resource 方式注入时会出现部分问题 针对以上替代swi
  • [hive] 经典sql题及答案(一)

    推荐 经典sql题及答案 二 经典sql题及答案 三 题目部分 第1题 我们有如下的用户访问数据 userId visitDate visitCount u01 2017 1 21 5 u02 2017 1 23 6 u03 2017 1
  • vscode的前端插件,加快编程速度

    vscode的前端插件 加快编程速度 1 auto close tag 自动闭合html标签 外链图片转存失败 源站可能有防盗链机制 建议将图片保存下来直接上传 img aAm0WeuK 1598933801894 C Users Admi
  • 在dos下使用debug被提示incorrect ms dos version的解决办法

    原创 在dos下使用debug被提示incorrect ms dos version的解决办法 首先可以确定一点 直接使用debug时它是直接在当前目录下寻找的 一旦当前目录下没有debug或debug版本不合适 则会出错 直接在 开始 中
  • Unity normalized的坑

    注意 向量太小会返回0 所以要考虑等于000的情况 我们的项目恰恰会用到 normalized返回的值传给 Quaternion LookRotation 结果造成000错误 切记要考虑到 normalized 为0 的情况
  • 嵌入式(TCP、IP协议原理)

    TCP IP协议网络封包格式 以太网头 IP头 TCP头 TCP是一种面向连接的 可靠的数据传输 一 TCP的可靠传输 通过确认和重发机制 1 TCP把所有要发送的数据进行编号 每一个字节用一个号 2 发送时从当前数据位置 发送window
  • 【图片标注】推荐一款特别好用的图片分割标注工具EIseg

    前言 最近在百度飞浆的公众号看到一个特别有趣的图片标注工具EIseg 它labelme等标记工具不同的是 它是一个通过深度学习来标注的工具 使用鼠标点一下就能完成标注任务 下面是工具的演示 本文章仅供学习 操作演示 标注效果 绿色的点为正样
  • java jps监控_java性能监控工具jps-windows

    jps Lists the instrumented Java Virtual Machines JVMs on the target system This command is experimental and unsupported
  • mybatis jdbcType: DATE ,TIMESTAMP 区别:

    1 mybatis中 jdbcType 时间类型 当jdbcType DATE 时 只传入了 年月日 jdbcType TIMESTAMP 年月日 时分秒 2 jdbcType 是否必须 使用时 没有加jdbcType 正常 加上jdbcT
  • 【零知ESP8266教程】AP模式下WIFI UDP协议通信示例

    本帖主要讲解ESP8266 WIFI功能关于UDP协议网络传输的应用 这里演示了ESP8266在AP模式下UDP通信的示例 1 硬件 零知ESP8266开发板 2 软件 1 代码如下 文件 udp server ino by 零知实验室 u