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

stm32与esp8266通信

esp8266

#include <ESP8266WiFi.h>
#include <ESP8266HTTPClient.h>// 测试HTTP请求用的URL
// #define URL "http://162.14.107.118:8086/PC/modifyFoodPrice/0/6"// 测试HTTP请求用的URL
// 设置wifi接入信息(请根据您的WiFi信息进行修改)
const char* ssid = "hhhcc";
const char* password = "2001317829";int counter=0; // 计数器void setup() {
// 初始化串口Serial.begin(115200);//设置ESP8266工作模式为无线终端模式WiFi.mode(WIFI_STA);//开始连接wifiWiFi.begin(ssid, password);//等待WiFi连接,连接成功打印IPwhile (WiFi.status() != WL_CONNECTED) {delay(1000);Serial.print(".");}Serial.println("");Serial.print("WiFi Connected!");
}void loop() {// 每loop循环一次,计数器变量加1delay(1000);counter = counter+1;// 输出变量String txt=Serial.readString();esp8266Http( txt);Serial.println(txt);delay(1000);
}// 发送HTTP请求并且将服务器响应通过串口输出
void esp8266Http(String price){String  URL= "http://162.14.107.118:8086/PC/modifyFoodPrice/0/";URL=URL+price;WiFiClient client; //创建 HTTPClient 对象HTTPClient httpClient;//配置请求地址。此处也可以不使用端口号和PATH而单纯的httpClient.begin(client,URL); Serial.print("URL: "); Serial.println(URL);//启动连接并发送HTTP请求int httpCode = httpClient.GET();Serial.print("Send GET request to URL: ");Serial.println(URL);//如果服务器响应OK则从服务器获取响应体信息并通过串口输出//如果服务器不响应OK则将服务器响应状态码通过串口输出if (httpCode == HTTP_CODE_OK) {String responsePayload = httpClient.getString();Serial.println("Server Response Payload: ");Serial.println(responsePayload);} else {Serial.println("Server Respose Code:");Serial.println(httpCode);}//关闭ESP8266与服务器连接httpClient.end();
}

stm32代码


#include "string.h"
#include "system.h"
#include "SysTick.h"
#include "led.h"
#include "usart.h"/*******************************************************************************
* 函 数 名         : main
* 函数功能		   : 主函数
* 输    入         : 无
* 输    出         : 无
*******************************************************************************/
int main()
{u8 i=0; u16 data=1234;float fdata=12.34;char str[]="Hello World!";	SysTick_Init(72);NVIC_PriorityGroupConfig(NVIC_PriorityGroup_2);  //中断优先级分组 分2组LED_Init();USART1_Init(115200);//串口波特率115200GPIO_ResetBits(LED_PORT,LED_PIN);	//LED=0 亮delay_ms(1000);					//延迟
//以上是初始化
//---------------------------------------------------------
//发送指令,让ESP8266连接到阿里云//	printf("AT+RST\r\n");		//第一步		复位		只用一次
//	delay_ms(2000);					//延迟			
//	
//	printf("AT+CWMODE=1\r\n");		//第二步		模式  只用一次
//	delay_ms(2000);					//延迟printf("AT\r\n");		//第一步		ATdelay_ms(2000);			//延迟printf("AT+GMR\r\n");		//第一步		版本号delay_ms(2000);			//延迟printf("AT+CWJAP=\"hhhcc\",\"2001317829\"\r\n");		//第四步 wifi热点delay_ms(5000);					//延迟delay_ms(5000);					//延迟delay_ms(5000);					//延迟	delay_ms(5000);					//延迟printf("6");delay_ms(50000);					//延迟printf("7");delay_ms(50000);					//延迟printf("8");delay_ms(50000);					//延迟
//---------------------------------------------------------	while(1){if(USART_RX_STA&0x8000)//判断接收到完整的字符串  完成{					   			if(strstr((const char*)USART_RX_BUF,"on"))//判断阿里云发下来的数据里是否有on{
//						GPIO_ResetBits(LED_PORT,LED_PIN);	//LED=0 亮printf("12");}if(strstr((const char*)USART_RX_BUF,"off"))//判断阿里云发下来的数据里是否有off{
//						GPIO_SetBits(LED_PORT,LED_PIN);		//LED=1	灭printf("20");	}	memset(USART_RX_BUF,0,600);         //将接收区清0USART_RX_STA=0;}}
}//第一步		AT+RST
// 
//第二步		AT+CWMODE=1//第三步		AT+CIPSNTPCFG=1,8,"ntp1.aliyun.com"//第四步		AT+CWJAP="WiFi名字","WiFi密码"//第五步		AT+MQTTUSERCFG=0,1,"NULL","用户名","密码",0,0,""//第六步		AT+MQTTCLIENTID=0,"ClienId"    					//clientId第二个参数注意每个逗号前加分隔符\

//第七步		AT+MQTTCONN=0,"连接域名",1883,1//AT+MQTTSUB=0,"topic",1							//订阅指令//AT+MQTTPUB=0,"topic","AJson格式内容",1,0		//发布指令//注意:   "前面要加转义字符    \前面要加转义字符

接线

接线图
stm32 esp8266 usb-ttl
A9(Tx) Rx
A10(Rx) TXD
Tx RXD

相关文章:

stm32与esp8266通信

esp8266 #include <ESP8266WiFi.h> #include <ESP8266HTTPClient.h>// 测试HTTP请求用的URL // #define URL "http://162.14.107.118:8086/PC/modifyFoodPrice/0/6"// 测试HTTP请求用的URL // 设置wifi接入信息(请根据您的WiFi信息进行修改) const char…...

组合数 2.1 2.2

O(nlogn)预处理&#xff0c; O(1)查询 #include<bits/stdc.h> #define IOS ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); #define endl \nusing namespace std;typedef pair<int, int> PII; typedef long long ll; typedef long double ld;const int N 1000…...

【数组的中心位置】python实现-附ChatGPT解析

1.题目 数组的中心位置 题目 给你一个整数数组 nums,请计算数组的中心位置。 数组中心位置是数组的一个下标,其左侧所有元素相乘的积等于右侧所有元素相乘的积。 数组第一个元素的左侧积为 1,最后一个元素的右侧积为 1。 如果数组有多个中心位置,应该返回最靠近左边的那一个…...

黑马JVM总结(二十三)

&#xff08;1&#xff09;字节码指令-init 方法体内有一些字节&#xff0c;对应着将来要由java虚拟机执行方法内的代码&#xff0c;构造方法里5个字节代码&#xff0c;main方法里有9个字节的代码 java虚拟机呢内部有一个解释器&#xff0c;这个解释器呢可以识别平台无关的字…...

AI人体行为分析:玩手机/打电话/摔倒/攀爬/扭打检测及TSINGSEE场景解决方案

一、AI人体行为分析技术概述及场景 人体姿态分析/行为分析/动作识别AI算法&#xff0c;是一种利用人工智能技术对人体行为进行检测、跟踪和分析的方法。通过计算机视觉、深度学习和模式识别等技术&#xff0c;可以实现对人体姿态、动作和行为的自动化识别与分析。 在场景应用…...

HI_NAS linux 记录

dev/root 100% 占用解决记录 通过下面的命令查看各文件夹 大小 sudo du --max-depth1 -h # 统计当前文件夹下各个文件夹的大小显示为M 最终发现Var/log 占用很大空间 发现下面两个 log 占用空间很大&#xff0c;直接 rm-rf 即可 HI NAS python3 记录 # 安装pip3 sudo apt u…...

计算机图形学中的几何光学

文章目录 前言一、图形学中的光学二、光照模型1、经验型&#xff08;简单&#xff09;2、物理型&#xff08;复杂&#xff09; 前言 在学习Shader光照之前了解一下计算机图形学 一、图形学中的光学 镜面反射的效果例子&#xff1a;物体表面高光 慢反射的效果的例子&#xff1a…...

「UG/NX」BlockUI 选择小平面区域 Select Facet Region

✨博客主页何曾参静谧的博客&#x1f4cc;文章专栏「UG/NX」BlockUI集合&#x1f4da;全部专栏「UG/NX」NX二次开发「UG/NX」BlockUI集合「VS」Visual Studio「QT」QT5程序设计「C/C」C/C程序设计「Win」Windows程序设计「DSA」数据结构与算法「File」数据文件格式 目录 控件说…...

【完全二叉树魔法:顺序结构实现堆的奇象】

本章重点 二叉树的顺序结构堆的概念及结构堆的实现堆的调整算法堆的创建堆排序TOP-K问题 1.二叉树的顺序结构 普通的二叉树是不适合用数组来存储的&#xff0c;因为可能会存在大量的空间浪费。而完全二叉树更适合使用顺序结构存储。现实中我们通常把堆(一种二叉树)使用顺序结构…...

Maven官方镜像仓库与阿里云云效Maven

一、Maven官方镜像仓库 download maven-3 右击复制链接地址&#xff0c;使用wget命令直接在linux中下载&#xff1a; wget 链接地址history 二、阿里云云效Maven 详情查看maven 配置指南 打开 maven 的配置文件&#xff08; windows 机器一般在 maven 安装目录的 conf/…...

python系列教程215——列表解析与矩阵

朋友们&#xff0c;如需转载请标明出处&#xff1a;https://blog.csdn.net/jiangjunshow 声明&#xff1a;在人工智能技术教学期间&#xff0c;不少学生向我提一些python相关的问题&#xff0c;所以为了让同学们掌握更多扩展知识更好地理解AI技术&#xff0c;我让助理负责分享…...

fonts什么文件夹可以删除吗?fonts文件夹删除了怎么恢复

在电脑上&#xff0c;fonts文件夹是存放字体文件的目录之一。尽管有时可能考虑删除该文件夹以节省硬盘空间或出于其他原因&#xff0c;但删除该文件夹可能会导致系统字体问题&#xff0c;影响用户的正常使用。因此&#xff0c;在删除之前需要考虑是否可以删除fonts文件夹&#…...

【智慧工地源码】智慧工地助力数字建造、智慧建造、安全建造、绿色建造

智慧工地围绕建设过程管理&#xff0c;建设项目与智能生产、科学管理建设项目信息生态系统集成在一起&#xff0c;该数据在虚拟现实环境中&#xff0c;将物联网收集的工程信息用于数据挖掘和分析&#xff0c;提供过程趋势预测和专家计划&#xff0c;实现工程建设的智能化管理&a…...

CListCtrl设置只显示单列

CListCtrl设置只显示单列 2023/9/5 下午4:07:15 要将CListCtrl控件设置为只显示单列,您可以使用SetExtendedStyle函数来设置控件的样式。下面是设置只显示单列的示例代码: cpp m_listCtrl.SetExtendedStyle(LVS_EX_GRIDLINES | LVS_EX_FULLROWSELECT | LVS_EX_HEADERDRAG…...

冒泡排序与选择排序(最low的两兄弟)

个人主页&#xff1a;Lei宝啊 愿所有美好如期而遇 前言&#xff1a; 在我们的生活中&#xff0c;无处不在用到排序&#xff0c;比如说成绩的排名&#xff0c;淘宝&#xff0c;京东等等商品在各个方面的排序&#xff0c;这样看来一个好的算 法很重要&#xff0c;接下来我们要先…...

MySQL-三大日志

前言 ​ redo log&#xff1a;为了持久化数据&#xff0c;当内存中的数据还没写入到磁盘而宕机时&#xff0c;会读取该日志持久化数据到磁盘 ​ undo log&#xff1a;为了保证原子性&#xff0c;事务的操作都会记录一条相反的sql到该日志&#xff0c;出现错误就会根据该文件恢…...

MySQL数据库详解 二:数据库的高级语言和操作

文章目录 1. 克隆表 ---- 将数据表的数据记录生成到新的表中1.1 方式一&#xff1a;先创建新表&#xff0c;再导入数据1.2方式二&#xff1a;创建的时候同时导入 2. 清空表 ---- 删除表内的所有数据2.1 delete删除2.2 truncate删除&#xff08;重新记录&#xff09;2.3 创建临时…...

基于springboot+vue的在线购房(房屋租赁)系统

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…...

scikit-learn机器学习算法封装

K近邻算法 K-最近邻&#xff08;KNN&#xff09;是一种有监督的机器学习算法&#xff0c;可用于解决分类和回归问题。它基于一个非常简单的想法&#xff0c;数据点的值由它周围的数据点决定。考虑的数据点数量由k值确定。因此&#xff0c;k值是算法的核心。 我们现在已经知道。…...

信息化发展56

数据开发利用 通过数据集成、数据挖掘和数据服务&#xff08;目录服务、查询服务、浏览和下载服务、数据分发服务&#xff09;、数据可视化、信息检索等技术手段&#xff0c; 帮助数据用户从数据资源中找到所需要的数据&#xff0c; 并将数据以一定的方式展现出来&#xff0c;…...

QMCDecode:Mac上最简单的QQ音乐加密音频解密工具

QMCDecode&#xff1a;Mac上最简单的QQ音乐加密音频解密工具 【免费下载链接】QMCDecode QQ音乐QMC格式转换为普通格式(qmcflac转flac&#xff0c;qmc0,qmc3转mp3, mflac,mflac0等转flac)&#xff0c;仅支持macOS&#xff0c;可自动识别到QQ音乐下载目录&#xff0c;默认转换结…...

从公式到代码:用STM32实现直线滑台S曲线加减速控制的保姆级教程

从公式到代码&#xff1a;用STM32实现直线滑台S曲线加减速控制的保姆级教程 在工业自动化和精密设备领域&#xff0c;直线滑台模组的运动控制质量直接影响着加工精度和设备寿命。传统的梯形加减速算法虽然简单易实现&#xff0c;但在启停阶段会产生明显的机械冲击&#xff0c;导…...

避坑指南:在CentOS 7.5上成功安装Ansys 19.2的完整流程(附字体问题终极解决方案)

CentOS 7.5与Ansys 19.2黄金组合&#xff1a;工业仿真环境搭建实战手册 在工程仿真领域&#xff0c;Ansys作为行业标准工具链的核心组件&#xff0c;其Linux环境部署一直是技术人员的痛点。经过长达三个月的多版本交叉测试&#xff0c;我们意外发现CentOS 7.5与Ansys 19.2的组合…...

Andorid下给PDF盖骑缝章的方法—安卓手机批量盖骑缝章的方法

Andorid下给PDF盖骑缝章的方法&#xff0c;安卓手机批量盖骑缝章的方法。一、准备印章图片1。不需要制作为透明的印章&#xff0c;用白底Png格式图片即可&#xff0c;白底图片盖章时软件会自动透明并融合。2。印章边线与图片四边不要有空隙&#xff0c;如下&#xff1a;错误的&…...

为Dify扩展AI图表与文档生成能力:微服务架构实战指南

1. 项目概述&#xff1a;为Dify打造专属的AI图表与文档生成工具箱如果你正在使用Dify构建自己的AI应用&#xff0c;并且希望让AI不仅能生成文字&#xff0c;还能直接输出流程图、思维导图、PPT甚至试卷&#xff0c;那么这个项目就是为你准备的。brightwang/dify-tool-service是…...

量化研究实战:从数据到策略的Python框架与机器学习应用

1. 从零到一&#xff1a;量化研究实战框架搭建心路如果你和我一样&#xff0c;对金融市场既着迷又敬畏&#xff0c;总想用理性和数据去解读那些看似随机的价格波动&#xff0c;那么“量化研究”这个词对你来说一定不陌生。它听起来高大上&#xff0c;仿佛是高学历精英们在华尔街…...

hermes-webui可视化网页界面及cron定时任务配置示范

前期准备 执行git clone https://github.com/nesquena/hermes-webui.git 建议先安装hermes-agent&#xff0c;可参考保姆级 Hermes-Agent 部署&#xff1a;OpenClaw 迁移 微信接入 ComfyUI 联动画图全流程&#xff08;含报错处理&#xff09; 执行cd Desktop/work/hermes-w…...

用PTA题库学C语言:手把手教你拆解‘选择与循环’的嵌套逻辑

用PTA题库学C语言&#xff1a;手把手教你拆解‘选择与循环’的嵌套逻辑 学习C语言时&#xff0c;最让初学者头疼的莫过于那些层层嵌套的选择结构和循环结构。面对一堆if-else和for/while语句&#xff0c;很多人会感到无从下手。本文将通过PTA题库中的典型题目&#xff0c;教你一…...

如何免费获取全球50+图书馆古籍资源:BookGet数字古籍下载完整指南

如何免费获取全球50图书馆古籍资源&#xff1a;BookGet数字古籍下载完整指南 【免费下载链接】bookget bookget 数字古籍图书下载工具。 项目地址: https://gitcode.com/gh_mirrors/bo/bookget 还在为寻找古籍文献而烦恼吗&#xff1f;想要从哈佛、国会图书馆等全球知名…...

从玩具车到智能体:用STC89C52给小车装上‘眼睛’和‘触角’的传感器融合实战

从玩具车到智能体&#xff1a;STC89C52多传感器融合的决策系统设计 当一辆普通的玩具车被赋予环境感知能力&#xff0c;它便开始了向智能体的进化。在这个项目中&#xff0c;我们使用STC89C52单片机作为"大脑"&#xff0c;通过超声波模块和漫反射光电传感器构建了一…...