授人以鱼不如授人以渔,目的不是为了教会你具体项目开发,而是学会学习的能力。希望大家分享给你周边需要的朋友或者同学,说不定大神成长之路有博哥的奠基石。。。
共同学习成长QQ群 622368884,不喜勿加,里面有一大群志同道合的探路人
如果觉得有用,麻烦点赞收藏,您的支持是博主创作的动力。
文章目录
1. 前言
前面的博文中,我们编写的固件都是通过ArduinoIDE往串口线上的ESP8266模块去烧写固件。这样就会有几个弊端:
- 需要经常插拔转接线,很容易造成8266串口丢失;
- 如果是将ESP8266做成产品并交付到客户手上之后应该如何更新产品中的ESP8266固件呢?难道要用户拿到技术中心来更新?如果是这样,这个产品必定属于失败产品。
在这里,就引入我们本篇章需要了解的实用知识 —— OTA功能。
OTA —— Over the air update of the firmware,也就是无线固件更新,这个可以说是非常炫酷且实用的功能。
那么OTA的本质是什么?它又是如何工作的呢?
一般情况下,当我们使用串口线更新8266的固件是通过SerialBootLoader来更新,这个属于开发板内置好的默认方式。
而OTA因为用到的是WIFI网络,所以我们假设也有一个名为“WIFIOTABootLoader”的东西来处理固件的无线写入更新,但是这个WIFIOTABootLoader需要我们先通过串口线预先写入到ESP8266。换句话说就是,我们得在项目代码中嵌入用于OTA的 WIFIOTABootLoader。
那么问题来了,WIFIOTABootLoader到底是什么原理呢?
万变不离其宗,博主第一个想到的就是 WebServer、UDP、mDNS的混合使用,通过mDNS可以解决域名访问问题,WebServer提供web页面供开发者上传固件文件,然后WebServer处理具体的请求,再把文件写入flash中(万
本文介绍了ESP8266的三种OTA固件更新方式:通过ArduinoIDE的ArduinoOTA、WebUpdateOTA和ServerUpdateOTA。详细探讨了每个方法的实现原理、配置及安全策略,提供了示例代码和流程,帮助开发者理解并实现实时无线固件更新。
订阅专栏 解锁全文
3万+

被折叠的 条评论
为什么被折叠?



