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

新动力网站建设公司有哪些平台可以发布厂家信息

新动力网站建设公司,有哪些平台可以发布厂家信息,深圳互联网公司,一级消防工程师考试通过率多少文章目录 前言一、ESP01S介绍1.ESP01S2.MQTT固件烧录3.WIFI连接 二、阿里云平台介绍1.创建产品及添加设备2.连接云平台 三、数据上报四、命令下发五、完整工程 前言 在实现OTA功能我们必须学会如何连接云平台,本文会仔细介绍使用STM32F407和ESP8266连接阿里云平台&…

文章目录

  • 前言
  • 一、ESP01S介绍
    • 1.ESP01S
    • 2.MQTT固件烧录
    • 3.WIFI连接
  • 二、阿里云平台介绍
    • 1.创建产品及添加设备
    • 2.连接云平台
  • 三、数据上报
  • 四、命令下发
  • 五、完整工程


前言

在实现OTA功能我们必须学会如何连接云平台,本文会仔细介绍使用STM32F407和ESP8266连接阿里云平台,最后实现数据上报和命令下发的功能。


一、ESP01S介绍

1.ESP01S

ESP8266 系列模组是深圳市安信可科技有限公司开发的一系列基于乐鑫ESP8266EX的低功耗UART-WiFi芯片模组,可以方便地进行二次开发,接入云端服务,实现手机3/4G全球随时随地的控制,加速产品原型设计。
  模块核心处理器 ESP8266 在较小尺寸封装中集成了业界领先的 Tensilica L106 超低功耗 32 位微型 MCU,带有 16 位精简模式,主频支持 80 MHz 和 160 MHz,支持 RTOS,集成 Wi-Fi MAC/ BB/RF/PA/LNA,板载天线。支持标准的 IEEE802.11 b/g/n 协议,完整的 TCP/IP 协议栈。用户可以使用该模块为现有的设备添加联网功能,也可以构建独立的网络控制器。
ESP8266 是高性能无线 SoC,以最低成本提供最大实用性,为 Wi-Fi 功能嵌入其他系统提供无限可能。
在这里插入图片描述
在图中我们可以清楚的看到ESP01S的引脚及各引脚的作用,在ESP01S的背面丝印上也会清晰的将各个引脚表示清楚。

2.MQTT固件烧录

在拿到ESP01S之后我们并不能直接连接阿里云平台,而是需要给它烧录上MQTT的固件之后才能使用。这个模块是由安信可开发的,我们可以到这个公司的官网下载:https://docs.ai-thinker.com/%E5%9B%BA%E4%BB%B6%E6%B1%87%E6%80%BB
在下载好之后可以只用固件烧录工具烧录固件。

有一点需要注意的是我们使用USB转TTL的模块烧录固件时,GPIO2需要接地让模块保持在下载模式

3.WIFI连接

在MQTT固件烧录完成之后我们就可以测试一下模块是否可以用啦,使用USB转TTL模块连接串口助手,设置波特率为115200。
在这里插入图片描述
如图发送指令AT,模块会通过串口回复OK。之后我们就可以使用模块连接WIFI啦。
在这里插入图片描述
这里我发送了3条指令,如下

ATE0  //关闭回显
AT+CWMODE=1 //设置为STA模式
AT+CWJAP="WIFI名称","密码"  //连接密码

按照上面三条顺序发送指令就可以成功连接WIFI啦,注意这里格式一定要严格按照上面的格式。

二、阿里云平台介绍

1.创建产品及添加设备

打开阿里云平台的物联网平台,在这里我们创建新的产品。
在这里插入图片描述
只需要设置名称就可以其他的选项保持默认。
在这里插入图片描述
在创建产品后我们就需要添加我们的设备到产品里。fang完成添加产品后,就需要给我们的产品添加属性,方便后面的数据上传和命令下发。
在这里插入图片描述
按照上图添加四个属性,需要注意的是标识符和变量类型,最后一定要点击发布不然是不会生效的。
在这里插入图片描述
打开我们添加的设备就会看到这样四个属性,当然我这个是之前创建的,刚创建的默认值都是0。

2.连接云平台

在创建完产品和添加设备之后就可以试着使用ESP01S连接云平台了,我们依然是使用串口助手先测试一下。需要发送的命令如下:

AT+RESTORE
ATE0
AT+CWMODE=1
AT+CWJAP="TP-LINK_D417","a111222333a." //上面四条在之前有介绍
//配置MQTT参数
AT+MQTTUSERCFG=0,1,"k0afuldYVdz.HOME|securemode=2\,signmethod=hmacsha256\,timestamp=1741101764286|","HOME&k0afuldYVdz","7b006318f27b9f9972d67a013921a091595b6390a662b8989dbbb2adae6f04b1",0,0,""
AT+MQTTCONN=0,"iot-06z00hab1tkn7og.mqtt.iothub.aliyuncs.com",1883,1 //连接阿里云平添
AT+MQTTSUB=0,"/sys/k0afuldYVdz/HOME/thing/event/property/post_reply",1 //订阅信息

其中配置的MQTT参数可在下图位置查看
在这里插入图片描述
将配置参数的那条命令换成你自己设备的参数,这一点是非常重要的,不然是连接不上你的设备的。然后是订阅信息的那条命令也是需要更改成你自己的。
在这里插入图片描述
在完成这些操作之后我们就可以看一下是什么效果了。
在这里插入图片描述
在这里插入图片描述
在发送完上面的命令后,可以看到串口助手的输出的数据,基本每一条都是OK,这就表示你已经连接上了云平台,在阿里云上面也已经显示设备在线了。在准备上面的操作后,我们就可以上传数据到我们的云平台啦!发送的命令如下:

AT+MQTTPUB=0,"/sys/k0afuldYVdz/HOME/thing/event/property/post","{\"method\":\"thing.event.property.post\"\,\"params\":{\"temperature\":30\,\"Humidity\":30\,\"PowerSwitch_1\":1\,\"PowerSwitch_2\":1}}",0,0

在发送这条命令之后,串口会收到下图的消息
在这里插入图片描述
在云平台我们也可以看到数据已经上传。
在这里插入图片描述

三、数据上报

做完上面的一切准备,说明我们已经可以将数据上传到云平台了。接下来我们就可以编写我们的程序,使用STM32F407采集温湿度上传到云平台了。在之前的文章中已经将温湿度模块DHT11介绍的很清楚了,可以跳转参考【基于STM32F4实现温湿度检测(DHT11)】。数据上报的函数如下:

char Esp_PUB(void)
{memset(RECS,0,sizeof(RECS));printf("AT+MQTTPUB=0,\"%s\",\"{\\\"method\\\":\\\"thing.event.property.post\\\"\\,\\\"params\\\":{\\\"%s\\\":%d\\,\\\"%s\\\":%d\\,\\\"%s\\\":%d\\,\\\"%s\\\":%d}}\",0,0\r\n",pubtopic,func1,Temperature,func2,Shidu,func3,Switch1,func4,Switch2);//while(RECS[0]);//等待ESP返回数据delay_ms(200);//延时等待数据接收完成if(strcmp(RECS,"ERROR")==0)return 1;return 0;
}

其实最主要的就是通过串口将我们的指令发送到ESP01S,其中发送到ESP01S的那一条有很多 “” ,通过串口发送指令我们在符号前面需要这个 \ 作为我们的转义符,让ESP01S知道我们发送了什么东西。在这里我是用串口1和ESP01S进行通信,接受中断如下:

void USART1_IRQHandler(void)                	//串口1中断服务程序
{if(USART_GetITStatus(USART1,USART_IT_RXNE)){RECS[i]=USART_ReceiveData(USART1);i++;if((RECS[i-2]=='\r')|(RECS[i-1]=='\n'))  {RECS[i-2]='\0';i = 0;CommandAnalyse(); //分析回传的数据}} 
} 

其实就是将接受收到的数据保存到数组里面,方便我们分析回传的数据和下发的命令。

四、命令下发

既然可以上传数据到云平台,那就可以从云平台下发数据,下发的数据会传到ESP01S,ESP01S会从串口传到STM32,STM32通过分析接受到的消息来判断下发的是什么命令。具体代码如下:

void CommandAnalyse(void)
{if(strncmp(RECS,"+MQTTSUBRECV:",13)==0){uint8_t i=0;while(RECS[i++] != '\0')             {if(strncmp((RECS+i),func3,13)==0){while(RECS[i++] != ':');       Switch1=RECS[i];}if(strncmp((RECS+i),func4,13)==0){while(RECS[i++] != ':');Switch2=RECS[i];}}}
}

上面这个函数就是中断函数在接收完数据后调用的解析命令,主要是用了strcmp()这个函数,这个函数是用来做两个字符串的对比的,在解析到我们想要数据后在做对应的操作。

五、完整工程

工程文件比较多,这里不能全部都很仔细的介绍,关键部分已经在上面详细介绍,有需要的可以通过下面链接下载完整工程:
链接:https://pan.quark.cn/s/2c1ffed03ead
提取码:Ru4t


文章转载自:

http://sIoGsfKx.knkfj.cn
http://6u6ZDuSG.knkfj.cn
http://9pP1nVLb.knkfj.cn
http://Ybh4znC7.knkfj.cn
http://U78h5xik.knkfj.cn
http://o5oQIuuW.knkfj.cn
http://e1WTED6k.knkfj.cn
http://rbzvc0wj.knkfj.cn
http://uI8HPhOl.knkfj.cn
http://SyXJ18Hn.knkfj.cn
http://7dkvl17J.knkfj.cn
http://L0V8Fz9v.knkfj.cn
http://Q8P5zpbb.knkfj.cn
http://nSQS7zTH.knkfj.cn
http://vHHeUO8f.knkfj.cn
http://JhzIgJra.knkfj.cn
http://fg1DmqKY.knkfj.cn
http://NdIQpj4m.knkfj.cn
http://PwWWegod.knkfj.cn
http://2TxbBXp5.knkfj.cn
http://Jpy5E2nr.knkfj.cn
http://7nUeJJM2.knkfj.cn
http://zbmkyxI9.knkfj.cn
http://208MnHN9.knkfj.cn
http://BfZUfw8K.knkfj.cn
http://RPWCtbvs.knkfj.cn
http://RfV7A08G.knkfj.cn
http://gGW3CwXk.knkfj.cn
http://eivBdbrb.knkfj.cn
http://JfW3I7Of.knkfj.cn
http://www.dtcms.com/wzjs/660542.html

相关文章:

  • 网站改版 收录旅游营销推广方案
  • 横沥网站仿做wordpress 4.8制作招聘
  • 股票交易系统外贸网站优化公司
  • 推广网站平台有哪些哈尔滨建筑
  • 百度投诉中心在线申诉惠州seo
  • 专注七星彩网站开发出租百度网盘账号登录入口
  • 触摸屏网站建设搜索引擎优化的英文缩写是什么
  • 做个门户网站多少钱广告设计公司的起名
  • 南昌专业网站优化推广公司建设网站的公司
  • 网站动画效果怎么做搭建网站运行环境
  • 网站设计公司 推荐wordpress开源协议
  • 泉州市网站api建设网站服务器数据迁移
  • 集团企业网站建设方案策划书专业手机建站公司
  • 免费授权企业网站源码杭州市网站制作
  • 宁波网站制作公司哪家好网站建设打造营销型网站
  • 网站开发的硬件设备学校网站开发建设合同
  • 婚庆设计网站模板国内外优秀建筑设计网站
  • 软件网站开发市场前景程序员做网站美工能过关吗
  • 网站规划与建设报告怎么写智能网站开发工具
  • 北京开发网站公司网页设计师培训大全
  • 开发网站要注意什么仪征做网站
  • 上海自助建站官网四川集团网站建设
  • 你接入的网站不属于同一个主体总代理项目
  • 商业网站建设心得体会网站建设后台管理便捷
  • 众v创业营网站建设电子商务网站建设及推广方案论文
  • 可以免费做网站新乡做网站哪家便宜
  • 企业网站备案流几天上海公共服务平台官网
  • 班级展示网站桐乡网站制作
  • 南海做网站企业网站空间在哪里
  • 广州网络建站app制作软件平台