1-关于ESP8266配网,单片机程序远程升级(我的配网和升级程序方式)

这一系列文章会把自己所有知道的关于ESP8266配网,单片机程序远程升级等都介绍和说明一下,具体实现要看我的开发板的教程,不过还没写到。。。。

资料  链接:https://pan.baidu.com/s/1az-cNXXdXi6JD1eGtNPrKg 密码:v4qx

先说自己现在做的APP是如何实现的配网和升级程序,这篇文章也作为自己所有WIFI开发板的参考文章,自己的所有的WIFI的开发板配网和升级程序现在都是一个套路。。如果后期自己改变了做法,会再说,,,

先说升级过程,别的文章也说过自己的程序是WIFI模块一开始烧进去一部分,然后另一部分是手机发给的,先说怎么烧第一部分程序,抱歉哈,因为这篇文章会作为所有板子的通用文章,所以会写的详细点。。

自己的源码是公开的,亲们可以直接烧进去自己的源码,然后就能用自己的APP实现远程控制。。

 因为自己的开发板型号不一样所以就用自己的这块开发板

先刷固件,因为自己是用LUA写的,所以先把板子烧进LUA的固件

无论哪一个型号的8266都是先把GPIO0接到低电平,然后复位一下

先烧小板的,

拔掉GPIO0拉低的跳线帽

现在往里面写程序

没有JAVA运行环境的安装这个

也可以自己去下载别的版本

http://www.oracle.com/technetwork/java/javase/downloads/index.html

安装教程()

https://jingyan.baidu.com/article/3c343ff70bc6ea0d377963df.html

https://blog.csdn.net/u012934325/article/details/73441617

只要测试安装了就行

 复位一下板子

因为我这个测试版没有任何灯。。。所以就看打印的信息吧

说一下,如果亲们用

建议控制的引脚是GPIO0

GPIO2有的模块作为了通信指示灯,,,

还有就是千万小心,不要让GPIO0一上电的时候是低电平

或者中间接一个电阻,大一点。。。以至于不会拉低GPIO0

那个大的模块就不说了,一样的方式。。只不过

升级程序和配置连接的路由器实际上是模块连接了手机的TCP服务器,然后通信发给的模块

是这样的,,

1,手机开启无线热点(自己设置了隐藏,固定为qqqqqq密码11223344)

2,手机建了TCP服务器监听一个端口

3,模块默认连接手机的无线,

4,然后连接手机的TCP服务器,

这里大家可能会问,手机的TCP服务器IP地址怎么知道的

因为是手机自己开的热点然后建立的TCP服务器,所以手机服务器的IP当然是网关啦。。。

这不就通信上了,只要通信上了,就好说了。。。发给模块路由器信息什么的不是问题了,,,,

现在看升级

升级其实就是往文件系统里面写程序

看这篇

http://www.cnblogs.com/yangfengwu/p/7534521.html

很多人以为只能保存个数据什么的。。。。其实可以直接往里面写程序然后让它执行这个文件,,知识要学会活学活用

其实写进去直接执行就可以 dofile("XXX.lua")

 第二部分程序就是通过TCP通信发给的模块,模块往updata里面写,不过程序分成了四小份,因为一次性太多,芯片的全局变量存不了。。。。

其实自己在做这个的时候,考虑了好几天实现方式,最终定为这样的方式是因为

1,因为手机是服务器所以一次性可以绑定好多设备(现在不可以,原则上可以,懒,需要再加一个指令,查询下自己有没有程序,程序的版本是不是和手机的一样,然后一样就不管了,不一样就接收)。后期再说,现在还没有感觉到有很大用处

2,程序存在手机里面,我自己认为最好不要自己主动的去更新程序,对于用户感觉是不好的,假设工作着呢,一更新。。。麻烦。更新程序的选择权在用户手里,只有用户重新绑定一下就能够重新更新下程序,(用户绑定的时候设备一定是不用的)

3,我做这个软件面向的是开发者和直接使用者,程序是手机发给的,只要修改手机里面的程序就可以更新,自己的软件后期只要多加个编辑框就可以了,开发者可以写自己的程序,然后下进去

4,因为后期还有上位机软件,上位机软件还要有更新的功能,其实和手机一样,建立TCP服务器(WIFI共享),然后也是做一个编辑框,然后写自己的程序发给模块,主要是面向开发者

5,用TCP是因为TCP都很熟悉,后期讲远程升级,我也会先说TCP如何实现,在云端建一个TCP服务器,然后让模块连接,和现在差不多的意思就实现了远程升级,远程升级的程序可以绑定手机的时候手机发给模块

6,然后再用MQTT实现远程升级,其实一样的道理,手机和上位机以后都可以轻轻松松的让模块升级程序。。。

7,有些是用WEB实现的,和TCP一样的道理,绑定的时候想用什么升级就发什么样的程序。。。。自己自定义去吧

其实综上所诉感觉自己的这种方式挺好的,毕竟先规划了一个多星期。。。。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏Golang语言社区

【Golang语言社区】GO1.9 map并发安全测试

var m sync.Map //全局 func maintest() { // 第一个 YongHuomap := make(map[st...

4698
来自专栏闻道于事

js登录滑动验证,不滑动无法登陆

js的判断这里是根据滑块的位置进行判断,应该是用一个flag判断 <%@ page language="java" contentType="text/html...

6728
来自专栏跟着阿笨一起玩NET

c#实现打印功能

2682
来自专栏我和未来有约会

Kit 3D 更新

Kit3D is a 3D graphics engine written for Microsoft Silverlight. Kit3D was inita...

2516
来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2142
来自专栏大内老A

The .NET of Tomorrow

Ed Charbeneau(http://developer.telerik.com/featured/the-net-of-tomorrow/) Exciti...

31210
来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

4828
来自专栏我和未来有约会

Silverlight第三方控件专题

这里我收集整理了目前网上silverlight第三方控件的专题,若果有所遗漏请告知我一下。 名称 简介 截图 telerik 商 RadC...

3985
来自专栏张善友的专栏

Mix 10 上的asp.net mvc 2的相关Session

Beyond File | New Company: From Cheesy Sample to Social Platform Scott Hansel...

2537
来自专栏转载gongluck的CSDN博客

cocos2dx 打灰机

#include "GamePlane.h" #include "PlaneSprite.h" #include "BulletNode.h" #include...

5346

扫码关注云+社区