STM32+ESP8266 AT测试、透传、DHT11、APP操作以及源代码

2023-10-27

前言:本文主要应用于STM32F103+ESP8266 AT测试、透传、DHT11、APP操作以及源代码链接。

1.1简介
ESP8266 是串口型 WIFI,速度比较低,不能用来传输图像或者视频这些大容量的数据,主要应用于数据量传输比较少的场合,比如温湿度信息,一些传感器的开关量等。

在 WIFI 透传的实验中,在局域网内,WIFI 工作在 STA 模式,单片机通过 ESP8266 给上位机发送数据,每次发送 1120 字节,时间间隔为 100ms,非常稳定,待机时间为 24 小时。

1.2 接线方式

ESP8266 已经集成到开发板上,WIFI 的 URX 和 UTX 通过跳帽接到板子的 PB10 和PB11,PB10 和 PB11 是 STM32 串口 3 的 TX 和 RX。

2.1 ESP8266AT指令测试例程

用电脑串口调试助手向ESP8266发送AT指令,测试模块工作是否正常。

下载程序
将程序编译后下载到开发板中,打开电脑串口调试助手,如下图所示。

在这里插入图片描述

	观察到“ready”字样说明ESP8266已经准备就绪,可以对8266进行AT指令测试。发送“AT”(注意:AT后面要加上回车,或者勾选发送新行)可以观察到ESP8266回复的“OK”。如果返回“busy ...”此时ESP8266正在执行其他指令,暂时不能响应新指令。
	有关其他“AT”指令请参考本人WIFI专题AT指令集。

代码历程的链接:
https://download.csdn.net/download/qq_35968965/13453367

2.2.1 WIFI 透传

在局域网中,WIFI 工作在 STA 模式,做客户端,电脑做服务端,客户端与服务端可以互相发送数据.

下载程序之前,程序需要知道你所在的局域网的 WIFI 名称和你电脑的 IP,在三个信息在如下代码中修改:
在这里插入图片描述
用户自行修改wifi名称、IP和端口号代码

2.2.2 配置网络调试助手

给开发板上电,把编译好的程序下载到开发板,用 USB 线连接好电脑和开发板的串口接口:USB TO UART,打开调试助手软件,串口部分:设置好串口号,配置好波特率;网络部分:设置好协议类型,IP 地址,端口号。具体设置如下:
在这里插入图片描述
打开串口,开始监听,按一下开发板的复位键,这个时候串口部分打印出WIFI的配置信息:
在这里插入图片描述
配置完毕后电脑就可以通过网络与开发板互相发送数据了。这时在串口调试助手发送“你好,这里是串口调试助手”,网络调试助手收到的信息截图如下

在这里插入图片描述
代码历程的链接:
https://download.csdn.net/download/qq_35968965/13454674

2.3 向电脑网络助手传 DHT11 温湿度

前言:
把开发板读取到的温湿度信息,通过 WIFI 传到局域网的电脑上的网络调试助手上显示。记得在板子上插好 DHT11 温湿度模块。这个程序是在 WIFI 透传的程序中修改而来,实际上就是将透传的数据改成 DHT11 的数据。

下载程序之前,程序需要知道你所在的局域网的 WIFI 名称和你电脑的 IP,在三个信息在如下代码中修改
在这里插入图片描述

配置网络与串口调试助手
给开发板上电,把编译好的程序下载到开发板,用 USB 线连接好电脑和开发板的串口接口:USB 转串口,打开串口调试助手软件:设置串口号、配置波特率;网络调试助手:设置协议类型、端口号、IP地址使用打开软件时默认的即可。具体设置如下:
在这里插入图片描述
打开串口,开始监听,按一下开发板的复位键,这个时候串口部分会打印出 WIFI 的配置信息:
在这里插入图片描述
配置成功后,两边都会打印读取到的温湿度信息:
在这里插入图片描述
代码例程的源码链接为:
https://download.csdn.net/download/qq_35968965/13454778

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

STM32+ESP8266 AT测试、透传、DHT11、APP操作以及源代码 的相关文章

  • 如何在 python 中连接/断开/配置无线网络?

    我正在寻找是否有一种方法可以在 python 中连接或断开无线网络 最好是一种在我提供密码的情况下适用于公共网络和安全网络的方法 如果我可以配置有关无线的选项 那将是一个额外的好处 例如 查看范围内的所有网络 查看有关范围内的网络的信息 例
  • 如何使用Python连接WiFi网络? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我正在尝试用 Python 编写一个脚本 该脚本将使我能够搜索无线网络并连接到它们 有没有为此目的的Python 库 None
  • Wifi 睡眠,即使有锁

    总结 即使获取了wifi锁 当手机使用电池运行时 wifi也会在一段时间后断开 我已将问题简化为带有启动线程的按钮的单个活动 它只是向 PC 上运行的回显服务器发送 100 000 个字符串 每 100 毫秒一个字符串 请参阅下面的代码 我
  • 以编程方式连接到 Android wifi 网络

    我正在尝试连接到选定的 wifi 网络 从 UI 但无法连接到它 这是我的代码 private boolean addNetworkAndActivate ScanResult scanResult String password Wifi
  • 无法与 WPA2 android 连接

    我正在使用以下代码与 Android 中的 WPA2 连接 我可以与 WEP 和 WPA 连接 但我只获得 扫描 状态 我无法连接 WPA2 网络 你能告诉我需要进行哪些更改才能使此代码与 wpa2 WiFi 相关吗 private boo
  • 尝试在空对象引用上调用虚拟方法“android.os.Looper android.content.Context.getMainLooper()”[重复]

    这个问题在这里已经有答案了 每当我尝试在手机或模拟器上打开应用程序时 我的 Log cat 都会收到此错误 为了让您概述我当前正在做的项目 它是一个记录连接到手机上接入点的设备数据的系统 可以通过屏幕上的按钮打开和关闭这些设备 我想归功于
  • STM32 上的 ADC 单次转换

    我正在研究 STM32 F103x 上的 ADC 编程 并从最简单的情况 单次转换开始 测量内部温度传感器 连接到 ADC1 的值 并使用 USART 将其发送到 COM 端口 目标似乎很明确 但是当我尝试将源代码下载到闪存时 它不会向 C
  • 在未越狱的 iOS 设备上启用/禁用 Wifi

    我的内部应用程序需要这个 我想在 ios 设备上切换 wifi 任何框架都可用 我尝试了以下代码 但它没有为我提供任何帮助 这不会改变我的 wifi 设置 Class BluetoothManager objc getClass Bluet
  • 优先连接Wifi [无互联网]?

    我有个问题 我开发了一个android应用程序 它也应该连接到无线网络 没有互联网 只是为了控制机器人 网页界面 10 10 0 1 我的问题 如果我连接到机器人 wifi Android 会阻止连接并连接到我的默认家庭 WLAN 我可以更
  • p2p0是android中WIFI DIRECT的无线接口吗? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 当我打印 Android 设备中的所有接口时 03 10 19 50 15 484 I System out 22415 lo 03 10
  • iOS6 在非越狱设备上切换 WiFi

    我正在开发一个内部 iOS 应用程序 不适用于苹果商店 所以我很乐意使用私有 API 并且我希望能够以编程方式打开或关闭 wifi 我想要这样做的原因是 对于某些 WiFi 路由器 每当互联网连接中断时 iPad 就无法恢复 WiFi 不过
  • Wifi和3G同时使用

    对于我的应用程序 我需要来自本地网络和互联网的数据 本地网络 Wifi 无法连接到互联网 因此我必须使用移动连接 例如 3G 但每当我连接到本地网络时 3G 就会停止 询问三星服务后 无法在 UI 中更改该设置 但他们无法告诉我是否有可编程
  • 移动数组中的元素

    我需要一点帮助 我想将数组中的元素向上移动一个元素 以便新位置 1 包含位置 1 中的旧值 new 2 包含 old 1 依此类推 旧的最后一个值被丢弃 第一个位置的新值是我每秒给出的新值 我使用大小为 10 的数组 uint32 t TE
  • 从 Android 打印,无需系统对话框

    我想从我的 Android 应用程序打印图像 打印机 canon selphy cp910 带 wifi direct 我尝试使用 Google API 和 android support v4 print PrintHelper 类 它有
  • 如何从 iOS 应用程序检测不安全的 wifi 网络

    我想检测我的应用程序中是否存在不安全的 wifi 网络 是否有任何公共 iOS API 可以实现相同的目的 没有记录的 API 可以获取该信息 如果您的应用程序需要通过网络发送和接收敏感数据 您通常应该假设没有安全连接
  • 有没有办法通过 WiFi 部署/调试 Cordova Android Ionic 应用程序? [关闭]

    Closed 这个问题是与编程或软件开发无关 help closed questions 目前不接受答案 这是一个双胞胎this https stackoverflow com questions 46596236 is there a w
  • 如何在 iOS 应用程序中检测所有可用的 Wifi 网络并连接到其中之一

    在我的 iOS 应用程序中 我想检测所有可用的 wifi 网络 然后从列表中选择一个网络并连接到它 目标是不打开应用程序内置的设置来连接 Wi Fi 而是在我的应用程序中完成这一切 首先 这可能吗 如果可能的话 请指出要使用哪些框架和方法
  • Android Wifi 广播接收器无法按预期工作

    每当手机连接到新的 WiFi 网络时 我都必须获取 WiFi ssid 我注册了以下内容 receiver registerReceiver this mybroadcast new IntentFilter WifiManager SUP
  • 发送 802.11 帧的“帧控制字段”数据的顺序?

    以下是 QoS 数据 FC 字段的位格式 00 01 0001 01000010 前2位代表版本 接下来2位代表类型 接下来4位代表子类型 其中ToDS 0 FromDS 1 保护位 1 那么 上述数据在空中是按照什么顺序通过接口发送的呢
  • GCC 变量映射和 MISRA-C

    我主要知道两种使用 GCC 声明内存映射寄存器的方法 有许多变体 使用双字段 每个外设的数据结构等 要么使用初始化为正确地址的指针 例如volatile uint32 t pMyRegister uint32 t 0xDEADBEEFUL

随机推荐

  • 【JavaScript】花点时间了解执行上下文

    引言 当我们在浏览器中运行JavaScript代码时 浏览器会先创建一个全局执行上下文 Global Execution Context 然后逐行解析和执行代码 执行上下文是JavaScript中非常重要的概念 它决定了代码的执行顺序和作用
  • Echarts图例legend选中select状态动态更新(踩坑)

    今天计划实现一个小功能 但是却在细节上浪费了大量的时间 特此记录 想要实现的功能是这样的 如下一个ECharts图 后台会一次性接收85条曲线的数据 但在初始化的时候只显示前7条曲线 官方文档 给出了 legend selected 这个属
  • U++ 截屏并拿到所有的截屏资源

    void APluginUseActor spotScreen TArray
  • Qt5下Qxlsx模块安装及使用

    文章目录 1 未安装Qxlsx的程序效果 2 安装Perl 编译Qxlsx源码用 2 1 下载 ActivePerl 5 28 2 2 安装 ActivePerl 5 28 3 下载并编译Qxlsx源码 3 1 下载Qxlsx源码 3 2
  • 树结构(有id和pid字段)数组,生成多层嵌套的json对象

    传入的数组有id和父节点pid字段 通过它们的关联构造成一棵或多棵树结构 param nodes 集合 param treeRootId 根节点的id function createTreeData nodes treeRootId var
  • 【模拟电路】电极驱动H桥

    H桥式驱动电路 是因为它的形状酷似字母H 如图 当Q1和Q4导通时 电机正转 当Q2和Q3导通时 电机反转 任何时候 H桥同一侧的晶体管不能同时导通 否则就会造成电源和地之间短路 电机正转 电机反转 一个双电机驱动电路 H桥 设计思路 使用
  • 深度学习图片数据集分析手段--个人经验小结

    当拿到一批图片数据集的时候 我应该做哪些分析 这里是我自己从业过程中的一些分析手段 从哪里学习的已经不可考 如果有其他的大家觉得有用的分析 可以和我分享一下 避免我自己闭门造车 这里根据已知的信息量分类两种情况 1 只有图片数据 没有标注数
  • Airsim探索01

    Airsim github地址 https github com microsoft AirSim git 官方文档 https microsoft github io AirSim use precompiled
  • linux 中常用的压缩和解压缩命令详解(tar zip)

    文章目录 一 tar命令 1 压缩 2 解压 二 zip命令 1 压缩 2 解压 三 文件加密压缩和密码解压 1 tar命令 1 1 加密压缩 1 2 密码解压 2 zip命令 2 1 加密压缩 2 2 密码解压 在工作中 涉及到文件传输
  • How To get the usbdisk's drive letter properly

    Introduction We know USB disk should be a removable disk just like floppy disk and be used more and more widely now Beca
  • Linux下安装cppunit、gtest单元测试工具

    cppunit下载地址 https www freedesktop org wiki Software cppunit 在linux终端安装 git clone git anongit freedesktop org git libreof
  • UE4引擎插件制作遇到的问题(一)

    大家好 我叫人宅 加载自己做的引擎插件报错 PrimaryGameModuleCouldntBeLoaded The game module 0 could not be loaded There may be an operating s
  • 第二篇web前端面试自我介绍(刚毕业的菜鸟)

    各位面试官 大家好 我叫汤慧来自湖南益阳专业是电子商务web前端方向我今天应聘的职位是web前端开发 在校期间我主修的课程是HTML CSS JavaScript及JQuery 在课余我喜欢通过逛论坛博客github来了解一些前端的前沿的开
  • 为什么要进行单元测试?

    进行单元测试有许多不同的方法 一些主要目的是 验证功能 单元测试确保代码做正确的事情并且不做任何不应该做的事情 大多数错误发生在这里 防止代码回归 当我们发现错误时 添加单元测试来检查场景可以防止代码更改在将来重新引入错误 记录代码 通过正
  • STM32-定时器详解

    前言 定时器作为微控制器不可缺少的外设 在STM32中也是如此 相信不少初学者学到定时器的时候对STM32的学习热情就大打折扣甚至想要放弃了 因为这一部分知识确实比较复杂 但是 如果你在之前对GPIO 串口通信 外部中断的学习中把这些外设掌
  • 数字水印技术

    数字水印技术涉及多个学科知识 其中主要包括图像存储处理原理 密码学 数字图像在计算机里的储存 从结构上讲 分为位图和矢量图 在位图中 图像由许多的屏幕小点组成 这些小点对应显存中的 位 位 决定了像素的图形属性 如像素的颜色 灰度 明暗对比
  • 代码审查和合并请求:团队合作中的关键

    在现代软件开发中 团队合作是不可或缺的一部分 为了确保代码质量 减少错误以及促进知识共享 代码审查和合并请求成为了开发团队中的关键实践 在本文中 我们将深入探讨代码审查和合并请求的重要性 流程以及最佳实践 代码审查的重要性 代码审查是一种通
  • JVM面试题学习笔记1:

    1 谈谈你对JVM的理解 我们写的java文件到通过编译器编译成java字节码文件 class文件 这个过程是java编译过程 而我们的java虚拟机执行的就是字节码文件 即一堆16进制的字节 答 Java虚拟机是一个可以执行Java字节码
  • Vogue 中的 GAN 时尚图像生成分步指南

    介绍 本文将探讨生成对抗网络 GANs 及其在图像生成方面的卓越能力 GANs已经彻底改变了生成建模领域 通过对抗性学习为通过创造性的方法来创建新内容提供了创新性的途径 在本指南中 我们将带你踏上一段迷人的旅程 从 GAN 的基本概念开始
  • STM32+ESP8266 AT测试、透传、DHT11、APP操作以及源代码

    前言 本文主要应用于STM32F103 ESP8266 AT测试 透传 DHT11 APP操作以及源代码链接 1 1简介 ESP8266 是串口型 WIFI 速度比较低 不能用来传输图像或者视频这些大容量的数据 主要应用于数据量传输比较少的