6-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇-优化升级(安装Apache (Web服务器)软件,测试HTTP)

为了和SDK升级保持协议一致,花了两天时间实现了用LUA开发,MQTT+HTTP方式实现远程升级

安装Apache主要是为了实现通过HTTP下载资源

升级介绍:

1,用户点击检查更新时,APP用HTTP访问云端的更新信息,版本号,升级文件的位置,和这次升级的内容

2,APP通过MQTT把信息(版本号,升级文件的位置)发给设备,设备对比版本号以后把信息通过MQTT发给APP

3,APP根据设备返回的信息判断是不是需要升级,如果需要,弹出一个对话框(设备的版本号,云端的版本号,更新的内容),如果不需要更新则提醒用户版本是最新

4,如果用户点击更新,APP通过MQTT发指令给设备,设备通过HTTP访问下载文件,更新进度通过MQTT发给APP

协议如下:

设备订阅的主题

"user/设备MAC地址"      列如:  "user/dc:4f:22:11:5d:33"

设备发布的主题

"device/设备MAC地址"    列如:  "device/dc:4f:22:11:5d:33"

/********************************************
上位机发送给设备平台的版本号和更新文件的位置(设备先记录下来)
{"data","updata","cmd":"info","version":"1.0.1","url":"http://47.92.31.46/hardware/wifi1"}

设备接收到信息对比版本号以后回复
{"data","updata","status":"unlike",version:XXXX} 或 {"data","updata","status":"alike",version:XXXX} //回复是不是和发给它的版号一致,并回复自己的版本号
*********************************************/

/**********************************
上位机发送给设备升级指令
{"data","updata","cmd":"start"}    

设备回复
{"data":"updata","status":"start"} //开始更新
**********************************/

更新过程中设备发送更新进度

{"data":"updata","status":"starting","percent":"百分比"} 百分比为数字 

更新完成设备发送
{"data":"updata","status":"finish"}

更新过程中的错误,设备发送
{"data":"updata","status":"error","code","-1"}//HTTP request failed
{"data":"updata","status":"error","code","-2"}//HTTP request data error

更新完成以后用新的版本号替换掉旧的版本号

注:
升级程序文件和关于升级的内容(内容里面含有版本号)放在云平台
APP或者wed或者上位机通过http获取关于升级的内容

设备通过http获取升级程序文件

大概了解就好,现在看怎么安装Apache

我就在我的云端电脑上安装,怎么把文件拷贝到云端就不说了

因为Apache需要C++的运行环境,所以先安装这个,根据自己的安装

然后解压出来,自己随意解压哈,然后修改个地方

根据自己的修改

好了,现在安装,进入到bin

// 安装apache服务

httpd.exe -k install

然后是启动

可以用命令

httpd.exe -k start

我不用这个命令了哈,我用另一个实现

双击

现在测试一下

输入自己的电脑的IP,默认访问80端口

其实是访问的这个

咱现在自己弄个文件,然后访问一下,为了避免意外情况

如果有文件夹

这样就可以用APP或者上位机用HTTP实现对文件的访问和下载了

具体如何用APP或者上位机用HTTP下载大家可先百度哈,,百度http  的get 或者 post  ,先用get获取就可以,我先弄升级教程啦....

原文地址:https://www.cnblogs.com/yangfengwu/p/10674294.html

时间: 2024-10-27 19:07:56

6-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇-优化升级(安装Apache (Web服务器)软件,测试HTTP)的相关文章

3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案基础篇(项目功能演示--GPRS )

2-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案基础篇(项目功能演示--Wi-Fi ) 这节演示 STM32采集的温湿度数据通过GPRS模块传给手机APP,APP上有个开关按钮,发指令给GPRS模块,然后发给STM32. 注:GPRS的程序都做成的透传的,就是GPRS模块通过串口接收的数据直接发给服务器,然后服务器再发给手机..GPRS模块通过网络接收的数据直接通过串口发给单片机. 一,给GPRS模块下载程序 ①调整波动开关位置 然后 记得插手机卡 二,测试

1-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(来看一下怎么样监听网络数据,监听电脑上位机软件的数据)

首先安装网络监听软件 运行这个软件 这个软件安装到电脑上,默认是监听咱电脑上的网络通信 咱们先监听电脑的软件的网络通信数据,然后再说怎么监听Wi-Fi和APP的软件的网络通信数据 咱就监听咱基础篇的 打开这个上位机 假设这个软件不是咱做的,IP什么信息都不知道,咱为了获取IP地址,咱不停的点击连接和断开 知道ip是 47.93.14.37以后咱设置一下过滤 ip.addr == 47.93.14.37 全部过滤出来了 咱清理软件的数据,同时断开上位机的连接,咱看一下这个上位机从一开始连接到发送和

3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(购买域名,域名绑定IP)

2-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案安全篇(监听Wi-Fi和APP的数据) 因为安全连接是和域名绑在一块的,所以需要申请域名 有没有不知道域名是什么的,但是大家一定知道访问域名就是访问绑定在域名上的IP地址 域名有个好处就是一个域名可以绑定多个IP. 举个例子:百度的域名是https://www.baidu.com/ 然后咱访问这个域名就访问到了百度的服务器,但是百度的服务器肯定不是一个,因为一个服务器怎么够这么多人访问,所以会有多个服务器,每个服

2-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案基础篇(项目功能演示--Wi-Fi )

教程录制完了,开始把对应的文字描述配上,其实应该先配文字描述,然后再根据文字描述配视频.... 一,下载STM32程序 1,方式一,串口下载(其他下载方式在最后补充) ①调整拨动开关位置 → 短接BOOT0和3.3V → 复位STM32 ②打开下载软件,下载程序 ③测试    二,下载WIFI固件 ①调整波动开关位置→按下固件(WIFI)按钮→按下复位(WIFI)按钮→松开复位(WIFI)按钮→松开固件(WIFI)按钮 注:实质在WIFI模块上电或者复位重启之前按下固件(WIFI)按钮(GPIO

3-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇(项目功能演示--远程升级WIFI模块程序)

2-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇(视频总揽) 为了节省时间,基础篇的基础内容不再叙述 , 原文地址:https://www.cnblogs.com/yangfengwu/p/10360618.html

16-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇(精简版GPRS程序,实现远程升级单片机程序)

https://www.cnblogs.com/yangfengwu/p/10891913.html 请先自行补充基础内容 https://www.cnblogs.com/yangfengwu/p/6921832.html https://www.cnblogs.com/yangfengwu/category/1383497.html    1-3节 这一节的GPRS程序和  https://www.cnblogs.com/yangfengwu/p/10875886.html   这节的WIFI

10-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案微信小程序篇(微信配网配置_Airkiss步骤_1)

https://www.cnblogs.com/yangfengwu/p/11066036.html 如果提交失败多提交两次,只要上一节可以,,这一节一定可以的 如果没有设备 咱就测试一下扫描二维码配网,下一节咱再看怎么嵌入到公众号里面,点击按钮实现 修改咱的程序 所有LUA开发的WIFI程序,配网的地方 以升级篇为例: (其它地方都是这样修改) 纯AT指令实现的不需要修改 稍等有点事情 原文地址:https://www.cnblogs.com/yangfengwu/p/11066472.htm

13-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案微信小程序篇(网页版MQTT)

https://www.cnblogs.com/yangfengwu/p/11148976.html 抱歉哈...最近由于做板子,,教程的进度落下了... 这些天总共做了还几块板子 首先对当前这个教程的这个板子做了修订,调整了下布局,替换换了以前用的Micro USB 接口,开关降压改为MP4462 STM32+Air720H(全网通GPRS)+以太网+422/485+4-20ma采集    https://www.cnblogs.com/yangfengwu/category/1472273.

15-STM32物联网开发WIFI(ESP8266)+GPRS(Air202)系统方案升级篇(根据第2_3节,优化第2_1节和2_2节代码)

https://www.cnblogs.com/yangfengwu/p/10891908.html 本来我想直接修改掉第...我再想想 做完精简版GPRS.... https://www.cnblogs.com/yangfengwu/p/10891914.html 原文地址:https://www.cnblogs.com/yangfengwu/p/10891913.html