ESP8266模块(2)
实例1
查看附近的WiFi
步骤1:进入AT指令模式
- 使用USB转串口适配器将ESP8266模块连接到电脑。
- 打开串口终端软件,并设置正确的串口和波特率(通常为115200)。
- 输入以下命令并按回车确认:
AT
如果模块响应OK
,则说明它处于AT指令模式。
步骤2:扫描WiFi网络
输入以下命令来扫描附近的WiFi网络:
AT+CWLAP
模块将开始扫描,并返回一系列的WiFi网络信息,包括每个网络的SSID、信号强度(RSSI)、加密类型和安全状态。
查看连接的WiFi
-
发送AT指令:
- 打开串口通信软件,并连接到ESP8266模块的串口。
- 输入以下AT指令并按回车发送:
AT+CWMODE? # 查询当前工作模式
该指令会返回当前ESP8266的工作模式(1:Station模式,2:AP模式,3:Station+AP模式)。
接下来,使用以下指令来查询已连接的WiFi信息:
AT+CWLAP # 列出可用的WiFi网络
AT+CWJAP? # 查询当前连接的WiFi网络信息
如果模块已经连接到一个WiFi网络,AT+CWJAP?
指令将返回以下信息:
+CWJAP:"SSID","MAC",ch,ecn
这里的SSID
是连接的WiFi网络的名称,MAC
是该网络的MAC地址,ch
是连接的频道,ecn
是加密类型。
-
断开连接(如果需要):
AT+CWQAP # 断开当前连接的WiFi网络
请确保在发送AT指令时,每个指令后都要按回车键,并且等待模块的响应。如果ESP8266模块没有响应,可能需要检查串口连接是否正确,或者确认模块是否已经进入了AT指令模式。有时候,可能还需要重置模块,或者发送AT+RST
指令来重启模块。
-
连接到WiFi网络:
-
使用以下命令连接到您的WiFi网络。您需要替换
"SSID"
为您的WiFi网络名称,"PASSWORD"
为您的WiFi密码。AT+CWJAP="SSID","PASSWORD"
如果连接成功,模块将返回
OK
。如果失败,通常会返回错误信息。
实现连接服务器
1. 设置Wi-Fi模式
将ESP8266设置为Station模式(客户端模式):
AT+CWMODE=1
2. 连接到Wi-Fi网络
连接到您的Wi-Fi网络:
AT+CWJAP="SSID","PASSWORD"
将SSID
替换为您的Wi-Fi网络名称,PASSWORD
替换为Wi-Fi密码。
3. 查看IP地址
获取ESP8266分配的IP地址:
AT+CIFSR
4. 设置为单连接模式
(可选)如果需要,可以将ESP8266设置为单连接模式:
AT+CIPMUX=0
5. 连接到服务器
使用以下指令连接到服务器,这里以TCP连接为例:
AT+CIPSTART="TCP","SERVER_IP",SERVER_PORT
将SERVER_IP
替换为服务器的IP地址,SERVER_PORT
替换为服务器的端口号。
6. 发送数据
连接成功后,发送数据到服务器:
AT+CIPSEND=LENGTH
替换LENGTH
为您要发送的数据的长度。在发送此命令后,串口监视器将进入发送模式,您可以输入要发送的数据。
9. 接收数据
配置ESP8266以接收服务器发送的数据:
AT+CIPRECVMODE=1
设置接收超时:
AT+CIPRECVDATA=TIMEOUT
替换TIMEOUT
为期望的超时时间(毫秒)。
10. 关闭连接
完成数据交换后,关闭连接:
AT+CIPCLOSE
实现服务器端
1. 初始化ESP8266
首先,确保您的ESP8266模块已经通过串口与您的计算机或其他设备连接,并准备好接收AT指令。
2. 设置为SoftAP模式
将ESP8266设置为SoftAP模式,允许其他设备连接到它:
AT+CWMODE=2
3. 创建SoftAP
配置ESP8266创建一个热点:
AT+CWSAP="ESP8266_Server","password",1,3
这里,"ESP8266_Server"是热点名称,"password"是连接密码。
4. 设置多连接模式
允许ESP8266处理多个连接:
AT+CIPMUX=1
5. 开启TCP服务器
开启TCP服务器并指定端口:
AT+CIPSERVER=1,80
这里,80是端口号,可以根据需要更改。
6. 监听连接和数据(不用管)
一旦服务器开启,它将监听指定端口上的连接。如果有客户端连接并发送数据,ESP8266将通过以下响应通知:
plaintext
复制
+WIFI:station:xx:xx:xx:xx:xx:xx join, AID=1
这里,xx:xx:xx:xx:xx:xx
是客户端的MAC地址。
当客户端发送数据时,ESP8266会响应:
+IPD,id,len:data
这里,id
是连接的ID,len
是数据的长度,data
是接收到的数据。
ID是0
7. 发送数据到客户端ID看上图
向客户端发送数据:
AT+CIPSEND=id,len
发送此指令后,输入要发送的数据。
8. 关闭连接
当完成与客户端的数据交换后,可以关闭特定的连接:
AT+CIPCLOSE=id
9. 关闭服务器
如果需要关闭服务器,可以使用以下指令:
AT+CIPSERVER=0
查询esp8266的IP
1. 查询SoftAP IP地址
在SoftAP模式下,可以使用以下AT指令来查询ESP8266分配给自身的IP地址:
AT+CIPAP?
这个指令将返回SoftAP的IP地址、网关和子网掩码。以下是可能的响应:
+CIPAP:ip:"192.168.4.1"
+CIPAP:gateway:"192.168.4.1"
+CIPAP:netmask:"255.255.255.0"
这里的192.168.4.1
是ESP8266作为SoftAP时的默认IP地址。当然,您也可以通过以下AT指令自定义SoftAP的IP地址:
AT+CIPAP="192.168.4.2","192.168.4.1","255.255.255.0"
2. 查询Station IP地址
如果您同时将ESP8266设置为Station模式(例如,Station+SoftAP模式,AT+CWMODE=3
),并连接到了一个外部路由器,那么您可能还想查询分配给Station模式的IP地址。这可以通过以下AT指令完成:
AT+CIFSR
这个指令将返回ESP8266在Station模式下的本地IP地址、MAC地址、网关和子网掩码。以下是可能的响应:
+CIFSR:STAIP:"192.168.1.100"
+CIFSR:STAMAC:"5c:cf:7f:34:45:ab"
+CIFSR:Gateway:"192.168.1.1"
+CIFSR:NetMask:"255.255.255.0"
这里的192.168.1.100
是外部路由器分配给ESP8266的IP地址。
相关文章:

ESP8266模块(2)
实例1 查看附近的WiFi 步骤1:进入AT指令模式 使用USB转串口适配器将ESP8266模块连接到电脑。打开串口终端软件,并设置正确的串口和波特率(通常为115200)。输入以下命令并按回车确认: AT如果模块响应OK,…...

Docker安装笔记
1. Mac安装Docker 1.1 Docker安装包下载 1.1.1 阿里云 对于10.10.3以下的用户 推荐使用 对于10.10.3以上的用户 推荐使用 1.1.2 官网下载 系统和芯片选择适合自己的安装包 1.2 镜像加速 【推荐】阿里镜像 登陆后,左侧菜单选中镜像加速器就可以看到你的专属地…...

《昇思25天学习打卡营第21天|Pix2Pix实现图像转换》
Pix2Pix 是一种图像转换模型,使用条件生成对抗网络(Conditional Generative Adversarial Networks,cGANs)实现图像到图像的转换。它主要由生成器(Generator)和判别器(Discriminator)…...

Python和MATLAB网络尺度结构和幂律度大型图生成式模型算法
🎯要点 🎯算法随机图模型数学概率 | 🎯图预期度序列数学定义 | 🎯生成具有任意指数的大型幂律网络,数学计算幂律指数和平均度 | 🎯随机图分析中巨型连接分量数学理论和推论 | 🎯生成式多层网络…...

在jsPsych中使用Vue
jspsych 介绍 jsPsych是一个非常好用的心理学实验插件,可以用来构建心理学实验。具体的就不多介绍了,大家可以去看官网:https://www.jspsych.org/latest/ 但是大家在使用时就会发现,这个插件只能使用js绘制界面,或者…...

机器学习·概率论基础
概率论 概率基础 这部分太简单,直接略过 条件概率 独立性 独立事件A和B的交集如下 非独立事件 非独立事件A和B的交集如下 贝叶斯定理 先验 事件 后验 在概率论和统计学中,先验概率和后验概率是贝叶斯统计的核心概念 简单来说后验概率就是结合了先验概…...

c生万物系列(面向对象:封装)
本系列博客主要介绍c语言的一些屠龙技,里面包含了笔者本人的一些奇思妙想。 该系列博客笔者只是用作记录。如果你偶然找到了这篇博客,但是发现不知所云,请不要过多投入时间,可能笔者本人那时候也看不懂了。 笔者决定用c语言模仿…...

当当网数据采集:Scrapy框架的异步处理能力
在互联网数据采集领域,Scrapy框架以其强大的异步处理能力而著称。Scrapy利用了Python的异步网络请求库,如twisted,来实现高效的并发数据采集。本文将深入探讨Scrapy框架的异步处理能力,并展示如何在当当网数据采集项目中应用这一能…...
React——useEffect和自定义useUpdateEffect
useEffect 是React的一个内置Hook,用于在组件渲染后执行副作用(例如数据获取、订阅或手动更改DOM)。它将在第一次渲染后和每次更新后都会执行。 useEffect(() > {// 这里的代码将在组件挂载和更新时执行。 }, [dependencies]); // depend…...
Hadoop大数据处理架构中ODB、DIM、DWD、DWS
在Hadoop的大数据处理架构中,ODS、DIM、DWD和DWS分别代表了数据仓库体系中不同的层次和功能。下面解释这几个概念: ODS (Operational Data Store) 想象你有一家超市,每天营业结束后,你会把当天所有的销售记录、顾客信息、商品库…...

【刷题汇总 -- 爱丽丝的人偶、集合、最长回文子序列】
C日常刷题积累 今日刷题汇总 - day0211、爱丽丝的人偶1.1、题目1.2、思路1.3、程序实现 2、集合2.1、题目2.2、思路2.3、程序实现 -- set 3、最长回文子序列3.1、题目3.2、思路3.3、程序实现 -- dp 4、题目链接 今日刷题汇总 - day021 1、爱丽丝的人偶 1.1、题目 1.2、思路 …...

基于vue3 + vite产生的 TypeError: Failed to fetch dynamically imported module
具体参考这篇衔接: Vue3报错:Failed to fetch dynamically imported module-CSDN博客 反正挺扯淡的,错误来源于基于ry-vue-plus来进行二次开发的时候遇到的问题。 错误起因 我创建了一个广告管理页面。然后发现访问一直在加载中。报的是这样…...

批量自动添加好友,高效拓展人脉圈.
随着微信使用数量的不断增加,手动添加好友成为了一项耗时且繁琐的任务。为了帮助大家解决这个问题,下面分享一款高效的微信管理系统,它能够帮助你实现批量自动添加好友,极大提升了人脉拓展的效率。 这款微信管理系统可以同时管理多…...

Web开发:一个可拖拽的模态框(HTML、CSS、JavaScript)
目录 一、需求描述 二、实现效果 三、完整代码 四、实现过程 1、HTML 页面结构 2、CSS 元素样式 3、JavaScript动态控制 (1)获取元素 (2)显示\隐藏遮罩层与模态框 (3)实现模态框拖动效果 一、需求…...
【深度学习】fooocusapi,docker,inpainting图像
基础镜像制作来源 fooocusapi接口官方写的: docker run -d --gpusall \-e NVIDIA_DRIVER_CAPABILITIEScompute,utility \-e NVIDIA_VISIBLE_DEVICESall \-p 8888:8888 konieshadow/fooocus-api会下载一些模型,下载完后推这个镜像 docker commit 4dfd1…...

算法017:二分查找
二分查找. - 备战技术面试?力扣提供海量技术面试资源,帮助你高效提升编程技能,轻松拿下世界 IT 名企 Dream Offer。https://leetcode.cn/problems/binary-search/ 二分查找,其实是双指针的一种特殊情况,但是时间复杂度极低&#…...

谷粒商城实战笔记-37-前端基础-Vue-基本语法插件安装
文章目录 一,v-model1,双向绑定2,vue的双向绑定2.1 html元素上使用指令v-model2.2 model中声明对应属性2.3,验证view绑定modelmodel绑定view 完整代码 二,v-on1,指令简介2,在button按钮中添加v-…...

mybatis中的缓存(一级缓存、二级缓存)
文章目录 前言一、MyBatis 缓存概述二、一级缓存1_初识一级缓存2_一级缓存命中原则1_StatementId相同2_查询参数相同3_分页参数相同4_sql 语句5_环境 3_一级缓存的生命周期1_缓存的产生2_缓存的销毁3_网传的一些谣言 4_一级缓存核心源码5_总结 三、二级缓存1_开启二级缓存2_二级…...

实现自动化采购:食堂采购系统源码开发详解
本篇文章,笔者将详细介绍食堂采购系统的开发过程,从需求分析、系统设计到实现和测试,为您全面解析如何构建一个高效的自动化采购系统。 一、需求分析 1.采购计划管理 2.供应商管理 3.订单管理 4.库存管理 5.财务管理 6.数据分析与报告 …...

linux、windows、macos清空本地DNS缓存
文章目录 Linux:Windows:macOS: Linux: 对于使用systemd的操作系统(如CentOS 7、Ubuntu 16.04),可以使用以下命令重启systemd-resolved服务来清除缓存: sudo systemctl restart sys…...
【SpringBoot】100、SpringBoot中使用自定义注解+AOP实现参数自动解密
在实际项目中,用户注册、登录、修改密码等操作,都涉及到参数传输安全问题。所以我们需要在前端对账户、密码等敏感信息加密传输,在后端接收到数据后能自动解密。 1、引入依赖 <dependency><groupId>org.springframework.boot</groupId><artifactId...

大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
多模态商品数据接口:融合图像、语音与文字的下一代商品详情体验
一、多模态商品数据接口的技术架构 (一)多模态数据融合引擎 跨模态语义对齐 通过Transformer架构实现图像、语音、文字的语义关联。例如,当用户上传一张“蓝色连衣裙”的图片时,接口可自动提取图像中的颜色(RGB值&…...
汇编常见指令
汇编常见指令 一、数据传送指令 指令功能示例说明MOV数据传送MOV EAX, 10将立即数 10 送入 EAXMOV [EBX], EAX将 EAX 值存入 EBX 指向的内存LEA加载有效地址LEA EAX, [EBX4]将 EBX4 的地址存入 EAX(不访问内存)XCHG交换数据XCHG EAX, EBX交换 EAX 和 EB…...

【数据分析】R版IntelliGenes用于生物标志物发现的可解释机器学习
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍流程步骤1. 输入数据2. 特征选择3. 模型训练4. I-Genes 评分计算5. 输出结果 IntelliGenesR 安装包1. 特征选择2. 模型训练和评估3. I-Genes 评分计…...

Springboot社区养老保险系统小程序
一、前言 随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱,社区养老保险系统小程序被用户普遍使用,为方…...

10-Oracle 23 ai Vector Search 概述和参数
一、Oracle AI Vector Search 概述 企业和个人都在尝试各种AI,使用客户端或是内部自己搭建集成大模型的终端,加速与大型语言模型(LLM)的结合,同时使用检索增强生成(Retrieval Augmented Generation &#…...

以光量子为例,详解量子获取方式
光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...

Xela矩阵三轴触觉传感器的工作原理解析与应用场景
Xela矩阵三轴触觉传感器通过先进技术模拟人类触觉感知,帮助设备实现精确的力测量与位移监测。其核心功能基于磁性三维力测量与空间位移测量,能够捕捉多维触觉信息。该传感器的设计不仅提升了触觉感知的精度,还为机器人、医疗设备和制造业的智…...

Kubernetes 节点自动伸缩(Cluster Autoscaler)原理与实践
在 Kubernetes 集群中,如何在保障应用高可用的同时有效地管理资源,一直是运维人员和开发者关注的重点。随着微服务架构的普及,集群内各个服务的负载波动日趋明显,传统的手动扩缩容方式已无法满足实时性和弹性需求。 Cluster Auto…...