单片机MCU OTA升级技术
云端OTA通知推送
云端只会给当时在线设备推送;对于当时不在线,或者没升级成功的设备,云端会每天推送一次。
MCU OTA:包括下载、存储、校验、传输4个过程。
下载、存储、校验同GAgent OTA一样;
传输:通知MCU有固件传输,并分片传输给MCU,每片需要进行sum校验,传输完成后MCU需要进行MD5校验。MCU成功后重启GAgent,以让GAgent重新握手获取更新后的MCU信息。
MCU实现OTA流程:
1.GAgent首先检查Wi-Fi固件是否需要升级,有则进行OTA,无则进行MCU固件检查,有muc固件需要OTA则进入第2步。
2.下载对应mcu新固件到wifi模组的flash区域。并对其做固件完整性校验(一般是MD5校验)。
3.固件检查完成且正确,通知MCU有新固件可以给MCU OTA。
4.MCU接收到OTA信息之后,自己判断是否需要OTA,需要则发送需要OTA固件信号给GAgent,这个时候GAgent则发送固件数据给MCU。
5.MCU接收到数据之后,自行做数据处理,实现对MCU的升级。
原文:http://bbs.elecfans.com/jishu_1113576_1_2.html
单片机MCU OTA升级技术相关推荐
- 单片机中OTA升级流程及bootload软件框架
OTA升级流程及bootload软件框架 为什么要进行OTA升级 OTA升级的流程 bootload软件框架 bootload软件源码(针对接收HEX文件) 为什么要进行OTA升级 OTA 英文全称是 ...
- 16*64点阵屏的c语言程序,16*64点阵程序 - 单片机/MCU论坛 - 电子技术论坛 - 广受欢迎的专业电子论坛!...
最近在家无聊,做了一个16*64的点阵,行扫描用的是154,列用的是595,效果还不错,把程序贴出来共享. #include #define uchar unsigned char #define u ...
- 在线升级:OTA升级的原理和实现方式
目录 1.OTA 在线升级 2.实现方式 3.操作方式 3.1.后台式升级 3.2.非后台式式更新 4.STM32 的在线升级 4.1.划分 Flash 区域 4.2.实操1 - Flash空间地址的 ...
- 13.1-自己开发一个“单片机烧写工具”!不是开玩笑吧?原来如此^~^(OTA升级)
听到这个"需求"的第一反应"这是开玩笑吧".我是是一个普通的码农,怎么可能开发出了那么复杂的东西. 带着一头冷汗,开始查资料中- 原来如此,有一种下载程序的方式 ...
- 差分升级 增量升级 单片机 STM32 IAP升级OTA升级,物联网车联网可用
差分升级 增量升级 单片机 STM32 IAP升级OTA升级,物联网车联网可用 介绍博客 https://blog.csdn.net/zhou74281/article/details/1177776 ...
- stm32f407单片机rt thread 片外spi flash OTA升级配置示例
参考地址https://www.rt-thread.org/document/site/application-note/system/rtboot/an0028-rtboot/ 第一步,生成Boot ...
- STM32 OTA应用开发——通过串口/RS485实现OTA升级(方式2)
STM32 OTA应用开发--通过串口/RS485实现OTA升级(方式2) 目录 STM32 OTA应用开发--通过串口/RS485实现OTA升级(方式2) 前言 1 环境搭建 2 功能描述 3 程序 ...
- 基于STM32单片机的差分升级(增量升级)算法移植手册V.3 STM32+BSDiff+LZ77
基于STM32单片机的差分升级算法移植手册V.3 STM32+BSDiff+LZ77 更新时间:2022-03-10 版本V1.3 同步更新如下: 基于STM32单片机的差分升级(增量升级)算法V1. ...
- ADAS处理器集成功能安全单片机MCU
ADAS处理器集成功能安全单片机MCU ADAS processors integrate functional safety MCU 拉斯维加斯-德州仪器公司引进了ADAS和网关处理器TDA4VM和 ...
- IAP:物联网终端软件升级技术
本文分享自华为云社区<物联网终端软件升级技术---IAP(因芯片类型较多,本文仅针对STM32的Cortex-M系列)>,原文作者:o0龙龙0o . 现在升级已经成为IoT领域边缘升级的基 ...
最新文章
- codeforces37C
- python实现根据经纬度画地图热力图
- Eclipse配置国内镜像源
- 分析师称iPhone 13将支持卫星通信,但仅限特定市场
- JavaScript实用代码片段
- EasyUI:datagrid分页显示+嵌入select下拉选项框
- 父组件直接触发子组件中的函数
- 微课有关计算机应用基础,【计算机仿真论文】微课在计算机应用基础课的应用(共3802字)...
- h5带mysql数据库的留言板_html5实现留言板的代码实例分享
- wps android 接口,Android调用WPS接口打开office类型文件
- Android 8.0 新特性(一) - 可下载字体
- 微型计算机系统结构中的总线,微型计算机的总线结构
- 实验室设备管理系统C语言——课程设计实习
- mysql.sock文件的作用
- copyproperties爆红_一屋模玩怎样不能价值300万?分分钟用超.......
- 重要的是商业,不是应用(Building a bussiness, not an app)
- 数据增强 - Cutout、Random Erasing、Mixup、Cutmix
- 吃得苦中苦 方为人上人
- Unity UGUI 设置Dropdown的选项菜单显示在上面
- H3C NE实验合集
热门文章
- 华硕飞行堡垒扬声器没声音_华硕飞行堡垒FX50J音频系统是什么?FX50J有扬声器吗?...
- ESP8266-Arduino网络编程实例-BME280传感器数据仪表显示
- linux 显卡驱动错误,ubuntu下 Nvidia显卡驱动错误的解决
- H3C交换机配置简单教程
- 前端导出PPT,关于ppexgen.js的详细介绍(个人使用记录)
- 微型计算机键盘ins代表,微型计算机技术69124.ppt
- JavaScript中 切割截取字符串的几种方法
- 软件测试基础理论知识点
- 实现MySQL读写分离---maxscale代理服务器配置(详解)
- 测试实践:华为测试流程总结