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的制作 ...
随机推荐
- Unity小知识点大全(一)
原帖地址:https://zhuanlan.zhihu.com/p/54763553 1. 高亮选择 在Scene面板右上角的Gizmo下拉列表中,可以通过设置Selection Outline选项决 ...
- jquery获取select多选框选中的文本值
$("#select option:selected").text();
- 关于video++,jsrun,有道笔记等的感想
这几天一直在思考切入点.想了很多,有关于给初创企业提供社交平台营销的,如公众号,小程序,支付宝的到位,附近等.这些初看起来可行,细想起来有一些根本不完备.如通过微小宝多平台客户端了解最热的内容,在内容 ...
- 剑指offer 面试题36.二叉搜索树与双向链表
中序递归,一个pre节点记录前一个节点 /* struct TreeNode { int val; struct TreeNode *left; struct TreeNode *right; Tre ...
- docker为镜像添加SSH服务
启动并进入容器中 这里用db1容器完成实验. 安装openssh服务和修改sshd配置文件 安装openssh yum install openssh-server openssh-clients - ...
- webview在compileSdkVersion 大于等于23 android6.0以上系统执行js代码异常,但是在compileSdkVersion小于23 android6.0以下系统却执行正常问题
问题分析: 在compileSdkVersion>=23 android6.0以上webview.loadUrl用这个方法执行js时会将js中的一些代码当做特殊字符处理, 比如js中var t= ...
- [Java] 多线程基础详细总结,附加详细实例
详细代码在文章底部 目录 基础概念 进程与线程 单线程与多线程 实现线程的4中方式 thread.start()和runnable.run()的区别 Thread和Runnable的异同 线程的基本操 ...
- Django之form表单操作
小白必会三板斧 from django.shortcuts import render,HttpResponse,redirect HttpRespone:返回字符串 render:返回html页面 ...
- C++ 宏定义创建(销毁)单例
Util.h: #define CREATE_SINGLETON_POINTER(CLASS,INSTANCE,MUTEX) if (NULL == INSTANCE) \ { \ MUTEX.loc ...
- ASP.NET CSRF 解决【网摘】
http://stackoverflow.com/questions/29939566/preventing-cross-site-request-forgery-csrf-attacks-in-as ...