婴儿眼屎多是什么原因| 鱼豆腐是用什么做的| 上头了是什么意思| 蟾蜍属于什么动物| 10月4号是什么星座| 交警中队长是什么级别| 2006年出生属什么| 什么情况下要做肠镜检查| 维生素b12有什么作用| 锻炼pc肌有什么好处| 胃病是什么原因引起的| 耳朵后面痒是什么原因| 肾虚吃什么中成药| rop是什么意思| 为什么会出现彩虹| 什么掌不能拍| 1月30号是什么星座| 什么水果泡酒最好| 飞蚊症是什么原因造成的能治愈吗| 多多关照是什么意思| pvd是什么材料| 华为最新款手机是什么型号| 为什么宫颈会肥大| 下午右眼跳是什么预兆| 没有什么| 一月27日是什么星座| 早上醒来手麻是什么原因| 白细胞计数偏高是什么原因| 什么样的细雨| 优甲乐过量有什么症状| 12月25日是什么日子| 膝盖痒是什么原因| 东成西就是什么生肖| 白芷炖肉起什么作用| 血糖高是什么意思| 神昏谵语是什么意思| 1947年属什么生肖| 经血逆流的症状是什么| 什么样的人容易低血糖| 月经提前是什么原因引起的| 男女双修是什么意思| 三十七岁属什么生肖| 政协副主席是什么级别| 什么叫阴虚| 喝金银花有什么好处| 闭经有什么症状| 同房痛什么原因引起的| 头孢是治什么的| 公安局局长什么级别| 纤维蛋白原是什么| 免疫什么意思| 什么是理学| 眼睛看东西变形扭曲是什么原因| 握手言和是什么意思| 乙木的根是什么| 蟑螂喜欢什么样的环境| 唯爱是什么意思| leysen是什么牌子| 江河日下是什么意思| 月经稀发是什么意思| 鱼平念什么| 男人艾灸什么地方壮阳| 直肠肿物是什么意思| fs是什么单位| 肠胃炎可以吃什么药| 高烧用什么方法降温最快| 关爱是什么意思| 吃什么补白细胞最快| 怀孕早期有什么症状| 十二月八号是什么星座| 吃晕车药有什么副作用| 仓鼠怀孕有什么特征| 吃酒酿有什么好处| 静脉曲张是什么原因引起的| 山昆读什么| 晚上扫地有什么说法| 每天起床口苦口臭是什么原因| 皲裂是什么意思| 乳腺增生结节吃什么药效果好| 办护照需要准备什么材料| 牵牛花什么时候开花| 这是什么虫子| 结膜炎挂什么科| 最高人民法院院长什么级别| 吕洞宾是什么生肖| 梦见火车脱轨什么预兆| 针眼是什么| 天秤座和什么星座最不配| 紫烟是什么意思| 直的是什么意思| 阅人无数什么意思| 太阳星座是什么意思| 身体虚弱打什么营养针| 平均血红蛋白量偏高是什么意思| 究竟涅盘是什么意思| 年柱金舆是什么意思| 灵魂伴侣是指什么意思| 甘油三酯高是什么病| 红斑狼疮吃什么药| olay是什么牌子| 黑豆有什么功效| 短杆菌是什么意思| 胃息肉吃什么药| 羊宝是什么东西| 三点水一个分读什么| 什么降血脂效果最好的| 家里为什么会有蟑螂| moda是什么牌子| 黑手是什么意思| 清心寡欲什么意思| 尿里有红细胞是什么原因| 冰点是什么意思| 脾胃不好吃什么食物好| ich是什么意思| 此言念什么| 睡觉背疼是什么原因| 什么叫安全期| 4a广告公司什么意思| 紧急避孕药有什么危害| cosplay是什么意思| 玉米蛇吃什么| r商标是什么意思| 硫酸亚铁是什么东西| 胃疼是什么原因| 做孕检都检查什么项目| 麻叶是什么植物| 共产主义社会是什么样的社会| 闭门思过是什么意思| 蓝色妖姬适合送什么人| 什么食物胶原蛋白含量高| 皮肤瘙痒是什么病的前兆| 胸痛吃什么药| 他汀是什么药| 宁字五行属什么| 八大菜系之首是什么菜| 罢黜百家独尊儒术是什么意思| 小腹疼痛挂什么科| 坦诚相待是什么意思| 什么叫物理| 耳鸣什么原因引起的| 鱼油什么时候吃| 宁五行属什么| 丘疹用什么药膏最有效| 细菌感染有什么症状表现| 治癜风擦什么药好的快| 吃什么有助于骨头愈合| 副书记是什么级别| cpk是什么意思| 甲苯是什么东西| 梦见洗头发是什么意思| rococo是什么牌子| 什么是文科什么是理科| 怀孕了想打掉吃什么药| 没有高中毕业证有什么影响| 白莲花是什么意思| 黑蛇是什么蛇| 天理是什么意思| 病理会诊是什么意思| 什么是钓鱼执法| 2.20什么星座| 三句半是什么意思| 黑色的屎是什么原因| 吃狗肉有什么危害| 什么是肺结核| 什么是湿气重| 出虚汗是什么原因| 原生态是什么意思| 数词是什么意思| 熬夜对身体有什么危害| 1999年发生了什么事| 黄体破裂吃什么药| 饽饽是什么意思| 男人血精是什么原因造成的| 左眼跳是什么原因| 徐州有什么好吃的美食| 怀孕两个月出血是什么原因| 水疗是什么| 纯化水是什么水| 为什么小鸟站在电线上不会触电| 耍无赖是什么意思| 什么是学前教育| 无毛猫叫什么| 右边脸颊长痘是什么原因| 淋巴细胞数高说明什么| 九四年属什么生肖| 工作效率是什么意思| 71年猪是什么命| 狗狗可以吃什么| 气血不足吃什么药最好| 各什么各什么| no是什么| 2000年是属什么生肖| 冒泡是什么意思| 平头哥是什么意思| 姜薯是什么| 燕窝是什么| 晚安好梦什么意思| camel是什么意思| 助力车是什么车| 身上泡疹是什么引起的| 尿酸偏高是什么意思| 2019年是什么生肖| 胆固醇高对身体有什么危害| 昆字五行属什么| 四月四号是什么星座| 为什么不建议治疗幽门螺杆菌| 灰指甲用什么药膏| im什么意思| 眼睫毛脱落是什么原因| 1963年属什么| 血糖高做什么运动好| 挑眉是什么意思| 双侧卵巢多卵泡是什么意思| 什么鬼什么神| 房颤是什么| 肆虐是什么意思| 老鼠疣长什么样子图片| 漏斗胸是什么原因造成的| 脚底冰凉是什么原因| 荡秋千有什么好处| 身体缺钠会有什么症状| 胃热是什么原因| 柠檬水什么时候喝最好| 减肥每天吃什么三餐| 鼻窦炎有什么特效药| 蜜糖有什么功效和作用| 乳腺纤维瘤有什么症状表现| 过期的维生素c有什么用途| 大叔是什么意思| 中性粒细胞高是什么原因| 什么是白噪音| 诺氟沙星胶囊治什么病| 什么最重要| 过肺是什么意思| 梦见烙饼是什么意思| 容易打嗝是什么原因| 布克兄弟什么档次| 双手发麻是什么原因| 观音菩萨成道日是什么意思| 直接胆红素是什么| 故意不接电话说明什么| 梦到捡到钱是什么预兆| 合欢树为什么叫鬼树| 熬夜伤什么| 丈青色是什么颜色| 鲜为人知什么意思| 经常放屁吃什么药好| 于无声处是什么意思| 强的松又叫什么| 日加一笔变成什么字| 西安五行属什么| 胃一阵一阵的疼是什么原因| 马住什么意思| 景泰蓝是什么地方的特种工艺| 哈森鞋子属于什么档次| 凌晨一点半是什么时辰| 痛经是什么意思| 苟富贵勿相忘什么意思| 好饭不怕晚什么意思| 什么什么功高| 林彪什么时候死的| 什么是粉丝| 脖子长痘痘是因为什么原因| 爱情的本质是什么| 百度
这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 ? 论坛首页 ? 嵌入式开发 ? STM32 ? STM32G070RB探测23-ESP8266(ESP01S)http上传数据至

共2条 1/1 1 跳转至

STM32G070RB探测23-ESP8266(ESP01S)http上传数据至Onenet(单片机控制)

高工
2025-08-03 01:02:15     打赏
好几天没更新了,因为最近年底赶进度忙了起来,加班多咯,今天接着上篇,写一下如何使用STM32G070RB控制esp8266通过HTTP协议上传数据到Onenet平台根据上篇用串口助手操作,这篇直接按照这个套路上传就行了百度 怎么也想不到,阿肆会用这样一首歌作为新专辑的第一打,就像看不透单曲封面上那个小女孩平静的凝视。

1.连接wifi 2.连接TCP服务器 3.发送POST数据

前两条之前已经操作过了(第14篇),添加一个透传模式设置以及发送代码即可

编写代码

添加透传模式

直接在之前的初始化命令数组里边添加即可

//前边是发送的指令,后边是要确定的回令
char *const esp_inti_cmd[][2] = {
		{"AT\r\n", "OK"},
		{"ATE0\r\n", "OK"},
		{"AT+CWMODE=3\r\n", "OK"},
		{"AT+CWJAP=\"******\",\"********\"\r\n", "GOT IP"},
		{"AT+CIFSR\r\n", "OK"},
		{"AT+CIPSTART=\"TCP\",\"183.230.40.33\",80\r\n", "CONNECT"},
		{"AT+CIPMODE=1\r\n", "OK"},
		{"AT+CIPSEND\r\n", ">"},
		{0, 0}
};

重要的是如何封装数据

POST /devices/device_id/datapoints?type=3 HTTP/1.1
api-key:***********************
Host:api.heclouds.com
Content-Length:10

{"tem":42}

类似于这样,来进行字符串操作,主要用到了sprintf和strcat strcat就是将两个字符串拼接起来

添加两个宏定义

#define DEVID	
#define APIKEY

就是device_id和api-key

我的代码也是参考onenet的官方例程写的 展示一下

void OneNet_FillBuf(char *buf)
{

	char text[24];
	char buf1[128];

	memset(text, 0, sizeof(text));
	memset(buf1, 0, sizeof(buf1));

	strcpy(buf1, "{");

	memset(text, 0, sizeof(text));
	sprintf(text,"\"tem\":%.1f,",pv.tem);
	strcat(buf1, text);

	memset(text, 0, sizeof(text));
	sprintf(text,"\"hum\":%d,",pv.hum);
	strcat(buf1, text);

	memset(text, 0, sizeof(text));
	sprintf(text,"\"lux\":%d",pv.lux_16);
	strcat(buf1, text);

	strcat(buf1, "}");

	sprintf(buf, "POST /devices/%s/datapoints?type=3 HTTP/1.1\r\napi-key:%s\r\nHost:api.heclouds.com\r\n"
					"Content-Length:%d\r\n\r\n",

					DEVID, APIKEY, strlen(buf1));

	strcat(buf, buf1);
}

先测试一下这个函数的封装效果对不对

可以,是这个效果

然后直接发送就行了

void OneNet_SendData(void)
{

	char buf[256];

	memset(buf, 0, sizeof(buf));

	OneNet_FillBuf(buf);									//封装数据流

	ESP_SendString((unsigned char *)buf, strlen(buf));	//上传数据

}

主函数里添加

while (1)
{
  static uint8_t num;
  num++;
  BH1750_Send_Cmd(ONCE_H_MODE);//单次模式
  sprintf(buf,"tem:%.1f   ",pv.tem);
  OLED_P8x16Str(0u,2u,(uint8_t *)buf);
  sprintf(buf,"hum:%d%%   ",pv.hum);
  OLED_P8x16Str(0u,4u,(uint8_t *)buf);
  sprintf(buf,"lux:%d     ",pv.lux_16);
  OLED_P8x16Str(0u,6u,(uint8_t *)buf);
	HAL_Delay(500);
	AHT10ReadData(&pv.tem,&pv.hum);
	BH1750_Read_Dat(pv.lux);//读取数据
	pv.lux_16 = BH1750_Dat_To_Lux(pv.lux);//转换数据
	printf("lux:%d\r\n",pv.lux_16);
	printf("tem:%.1f\r\nhum:%d%%\r\n",pv.tem,pv.hum);
	if(num>10)
	{
		num = 0;
		OneNet_SendData();
	}

	if(usart1_rx.flag)//接收到数据
	{
		printf("%s",usart1_rx.rx_buff);
		Clear_Usart(&usart1_rx);//清空缓存
	}
/* USER CODE END WHILE */

/* USER CODE BEGIN 3 */
}

5s发送一次

出来咯



高工
2025-08-03 23:21:51     打赏
2楼

优化,将透传模式改为定长发送模式

首先,将初始化里透传模式命令删除


添加定长发送函数

//==========================================================
//	函数名称:	ESP8266_SendData
//
//	函数功能:	发送数据
//
//	入口参数:	data:数据
//				len:长度
//
//	返回参数:	无
//
//	说明:
//==========================================================
void ESP8266_SendData(unsigned char *data, unsigned short len)
{
	char cmdBuf[32];
	uint16_t timeOut = 5000;
	Clear_Usart(&usart1_rx);//清空接收缓存
	sprintf(cmdBuf, "AT+CIPSEND=%d\r\n", len);		//发送命令
	if(!ESP8266_SendCmd(cmdBuf, "OK",5000))				//收到‘>’时可以发送数据
	{
		ESP_SendString(data, len);		//发送设备连接请求数据
		while(timeOut--)//等待
		{
			if(usart1_rx.flag)							//如果收到数据
			{
				if(strstr((const char *)usart1_rx.rx_buff, "SEND OK") != NULL)		//如果匹配到数据
				{
					Clear_Usart(&usart1_rx);									//清空缓存
				}
				else
				{
					Clear_Usart(&usart1_rx);									//清空缓存
				}
			}
		}
	}
}


然后替换onenet_send


void OneNet_SendData(void)
{

	char buf[256];

	memset(buf, 0, sizeof(buf));

	OneNet_FillBuf(buf);									//封装数据流

	ESP8266_SendData((unsigned char *)buf, strlen(buf));

}



共2条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]
榄仁是什么 下午三点到五点是什么时辰 普字五行属什么 血红蛋白偏低是什么意思 天牛长什么样子
甲泼尼龙是什么药 丝瓜络是什么东西 慎重的意思是什么 电解质氯高是什么原因 飞鱼籽是什么鱼的籽
鼻炎吃什么药效果最好 乙字五行属什么 天天晚上睡觉做梦是什么原因 6月19什么星座 洋葱不能和什么一起吃
动人是什么意思 脑干诱发电位检查是检查什么 一什么彩虹 绿豆煮出来为什么是红色的 美女的胸长什么样
多囊是什么意思hcv7jop7ns3r.cn 1987年五行属什么hcv9jop3ns9r.cn 什么时候锻炼身体最佳时间hcv9jop2ns3r.cn 观音菩萨成道日是什么意思hcv8jop5ns7r.cn 射手座男生喜欢什么样的女生hcv9jop5ns1r.cn
张衡发明了什么东西hcv7jop9ns6r.cn 奥司他韦是什么药hcv7jop6ns4r.cn 清考是什么意思bjcbxg.com 鱼生是什么鱼hcv8jop8ns9r.cn 2月9日什么星座hcv8jop3ns8r.cn
澳门打车用什么软件hcv7jop5ns4r.cn 肠道功能紊乱吃什么药hcv8jop2ns5r.cn 免疫是什么意思hcv9jop1ns0r.cn asks是什么意思hcv8jop0ns2r.cn 阴道口长什么样hkuteam.com
世事无常什么意思hcv9jop1ns9r.cn 困是什么原因aiwuzhiyu.com 枸杞泡水喝有什么作用和功效hcv7jop7ns2r.cn 凤凰花什么时候开hcv7jop9ns0r.cn 喘息性支气管炎吃什么药hcv8jop7ns1r.cn
百度