rtt之通用bootloader
目前只支持F1/F4;使用步骤
1 在官网注册产品,根据系列设定参数,接收邮箱,点击生成就可以在自己的邮箱中收到对应的bootloader.bin文件。用jlink就可以将其烧写进单片机。
2 存储被分为4个区,bl,/download /APP/Factory.新的app_new.bin可以通过2个途径烧写进download区
2.1 通过RTT的打包工具将app_new.bin变成app_new.rbl文件,然后通过串口Y-mode/放到服务器上用过网口下载
2.2 在配置工具中使能网口和对应.rbl在RTT网上的URL,通过 http_ota URL地址进行升级。
3 程序的升级:新程序被拷贝到download区后回自动重启在bootload中进行版本比较,download到APP的更新和程序重启,进入APP
4恢复出厂设置:在bootloader中会检测是否触发恢复出厂设置的条件(组合按键+超时)若条件具备则执行Factory到APP的更新和程序重启,进入APP
传统远程自动升级:存储区分为boot/APP/DOWNLOAD三个部分,当然中间需要更多的校验。
1 正常情况下APP向远程服务器发送自己的身份ID(MAC)信息,服务器收到后在数据库列表中看是否注册过,否则进行注册流程,是则查询本类产品的最新软件版本号信息,并将newapp的IP地址和端口/文件名,大小,哈希值等信息返给设备端端。
2设备收到返回的信息并进行解析,判断是否需要升级(版本号或日期比当前设备中的新),否则不处理,是则进行连接升级服务器,获取下载新软件到DOWNLOAD区。然后进行校验,通过后则重启进入bootload程序。
3 上电后进入boot区检查APP更新成功标志(download区为空),成功则跳到APP执行新程序;否则擦除APP程序,并将download区程序搬运到APP区,然后再擦除download区并重启。
rtt之通用bootloader的更多相关文章
- STM32的固件升级(RTT
STM32 通用 Bootloader ,让 OTA 更加 Easy 目前支持F1/F4,在线制作bootloader,准备固件升级,是RTT的云设备管理平台 https://mp.weixin.qq ...
- 【转】Bootloader之uBoot简介(转)
原文网址:http://blog.csdn.net/sadamoo/article/details/8139946 来自http://blog.ednchina.com/hhuwxf/1915416/ ...
- Bootloader之uBoot简介
本文转载自:http://blog.ednchina.com/hhuwxf/1915416/message.aspx 一.Bootloader的引入 从前面的硬件实验可以知道,系统上电之后,需要一段程 ...
- Bootloader之uBoot简介(转)
来自http://blog.ednchina.com/hhuwxf/1915416/message.aspx,感谢作者 一.Bootloader的引入从前面的硬件实验可以知道,系统上电之后,需要一段程 ...
- (五)u-boot2013.01.01 for TQ210:《移植前的准备及u-boot初编译》
移植前的准备 移植前,要做的事情是搭建开发环境以及对U-boot源码的获取.首先说一下开发环境: 1.此次U-boot移植的硬件平台是天嵌的TQ210开发板: CPU:板载核心是S5PV210(Cor ...
- Tiny4412 U-BOOT移植(转)
http://blog.csdn.net/eshing/article/details/37520291(转) 一.移植前说明: 1. 特别声明:此文档是我的学习文档,里面肯定有错误地方,仅供参考! ...
- 第一章、Tiny4412 U-BOOT移植一 说明【转】
本文转载自:http://blog.csdn.net/eshing/article/details/37520291 一.移植前说明: 1. 特别声明:此文档是我的学习文档,里面肯定有错误地方,仅供 ...
- u-boot分析1:Nandflash、Norflash启动
了解u-boot之前首先了解下Bootloader,简单说Bootloader就是一段小程序,它在系统上电时开始运行,初始化硬件设备,准备好软件环境,最后调用操作系统内核. u-boot全称:Univ ...
- RT-Thread—STM32—在线升级(Ymodem_OTA、HTTP_OTA)
概述 本教程主要根据官方推荐的教程进行改编,详细信息请参考OTA Downloader软件包STM32 通用 Bootloader 本例程通过自己实际搭建环境,测试总结. bootloader的制作 ...
随机推荐
- mysql 同时支持多少连接MYSQL 查看最大连接数和修改最大连接数
MySQL查看最大连接数和修改最大连接数 1.查看最大连接数 show variables like '%max_connections%'; 2.修改最大连接数 set GLOBAL max_con ...
- 线性筛-mobius,强大O(n)
首先,你要知道什么是莫比乌斯函数 然后,你要知道什么是积性函数 最后,你最好知道什么是线性筛 莫比乌斯反演 积性函数 线性筛,见上一篇 知道了,就可以愉快的写mobius函数了 由定义: μ(n)= ...
- git之路
1.如何clone代码到本地 答:git clone https://github.com/antirez/redis.git 2.
- go基础_defer
defer defer是go语言中的关键字 特点:FILO 作用:保障一些申请的资源最终得以释放 func main() { defer fmt.Println("line-1") ...
- python获取进程id号:
python获取进程id号: os.getpid()获取当前进程id os.getppid()获取父进程id
- spark-shell中往mysql数据库写数据报错
今天在看spark方面的知识的时候,在spark-shell中往mysql写数据时报错,错误信息如下: ERROR Executor: Exception in task 0.0 in stage 4 ...
- 在elementui表单中实现对vue-quill-editor富文本编辑器内容的绑定
1.v-model(表单标签双向绑定指令) v-model相当于:value=""和@input=""的结合 代码1: <input type=" ...
- C:产生随机数
函数说明 #include <time.h> time_t time(time_t *t); 功能:获取当前系统时间 参数:常设置为NULL 返回值:当前系统时间, time_t 相当于l ...
- The Preliminary Contest for ICPC Asia Shanghai 2019 B Light bulbs (离散的差分)
复杂度分析,询问一千次,区间长1e6,O(1e9)超时. 那么我们知道对于差分来说,没必要一个一个求,只需要知道区间长就可以了,所以我们定义结构体差分节点,一个头结点,一个尾节点. 这样tail.lo ...
- oracle 基础sql语句
修改date日期时间: update T2_FOODS_STORAGE_IN set create_time =to_date('2020-01-15 12:30:20','yyyy-mm-dd hh ...