科百科
当前位置: 首页 范文大全

ota固件升级协议(关于智能设备在线升级)

时间:2023-06-04 作者: 小编 阅读量: 6 栏目名: 范文大全

3、升级流程文件传输的过程可以一次性,也可以分包下发。

我们在使用智能设备的时候,过一段时间就会有官方推送的软件更新,大致的意思是升级到哪个版本,版本修复了哪些bug或者新增了哪些功能。大到我们的电脑、小到我们用的智能手机、智能手环等等。

用户需求和功能之间的关联从未中断,亦从未结束,这是一条无尽的道路。那么这篇文章就为大家介绍在线升级需要考虑的东西以及如何去部署我们的升级,文笔拙略,但求能解剖出其中的关键点和命脉。

一、升级流程准备

1、flash和ram大小需要考虑

在实际的项目中应用软件一般都不小,首先需要考虑到flash存放代码够不够,一般需要一个扇区存放bootloader程序,两个较大的扇区存放app应用程序。ram区看个人,如果使用数据校验功能,有时候ram也要满足一定的大小,否则无法从flash提取出来,当然也可以直接对flash数据进行校验。

2、镜像备份

在升级过程中,难免有升级失败的可能,当然在产品成熟之后不会有太大的问题,但是俗话说得好,不怕一万就怕万一,有备无患。

3、升级流程

文件传输的过程可以一次性(如果ram足够大),也可以分包下发。壳子制定自己的私有协议,只要保证数据传输完整就可以。

二、单片机为例,准备升级文件

在此之前先给大家介绍需要用到的软件Jflash,这个软件功能很强大,可以对单片机下载程序、可以合成代码、可以生成不同格式的文件。

1、bin文件

打开工程文件,在Run后面输入指令:fromelf--bin--output.\output\obj\EDFA_Project.bin .\Output\Project.axf然后重新编译整个工程,就会在\keil_project\output\obj文件夹下生成所需要的bin文件。还有另一种生成bin文件的方法,就是使用jflash打开app.Hex文件,直接另保存为bin文件即可。

2、bootloader程序

在keil软件里面建立好工程,并配置好环境,环境配置主要如下图,因为程序是在0x8000000这个地方开始的,所以引导程序必须是这个地址开始,大小是整个flash的大小,右边是ram的存储区。

bootloader详细逻辑代码在boot程序里面体现,大体逻辑如下:

①、先从flash里面获取更新标志位,如果标志位为1,则启动升级判断

②、从flash里面取出升级到哪个区0代表app1区,1代表app2区

③、boot刚开始从默认的1区启动

3、app应用程序

建立工程文件,跟一般的app文件差不多,只需要改变偏移量,具体如下:

在程序开始的地方设置偏移量,0x20000表示相对0x8000000偏移,也就是说这个app程序将会在0x8020000这个地方开始运行。这里普及一个小知识点,flash默认或者擦写的时候,内部的值都是FF,所以看到判断为0xff,就应该知道程序一烧写的时候,默认值就是0xff,默认从app1启动程序。

4、下载文件合成

前面bootloader程序和app应用程序生成的HEX文件,用jflash合成所需要的下载代码,这里注意,如果单独烧写其中一个文件程序是起不来的。如下图EDFA_down.hex就是通过前面两个程序合成的。

生成的hex文件

制作过程如下:

①首先用到软件jflash,先打开软件JFlash.exe选择芯片

新建工程

选择芯片

选择下载模式

选择菜单栏File/Open data file 选择bootloader或者app其中一个hex文件,再点击File/Merge data file 选择另一个hex文件,然后保存为下载文件即可

②、jflash下载使用

设置一下,点击 Options,选择 Project settings,选择 Production,勾选图中选项,点击 OK 就可以了。

在菜单栏 Target 中点击 connect,连接软件和芯片,连接好后在底下出现连接成功,接下来就是把文件下载到芯片,选择 Target,选择 production programming,或者直 接按 F7 就可以下载,等待下载成功,就可以正常运行。

至此,在线升级的全过程以及文件的制作给大家分享完了,有不理解的朋友欢迎交流。

    推荐阅读
  • 黄金甲是什么意思 穿上黄金甲是什么意思

    黄金甲的意思是金黄色的铠甲,亦指身披金黄色铠甲的人。王昌龄《从军行》:“三面黄金甲,单于破胆还”。秋瑾《秋风曲》:“塞外秋高马正肥,将军怒索黄金甲”。也比喻菊花,黄巢《不第后赋菊》:“衝天香阵透长安,满城尽带黄金甲”。

  • 炭火炒南瓜(儿时的记忆炒南瓜)

    也许厨艺的最高境界不是高在云端,反而是落入平常人家的食材。南瓜现在的做法花样百出,但往往是用最简单的做法做出的食材才是最好吃的。材料:老南瓜(绿皮),葱,油做法:1南瓜洗净去头尾,用勺子挖出南瓜子,把南瓜(带皮)改成块备用。2起锅烧油,油略多点,爆香葱,倒入南瓜翻炒,添适量水小火慢炖。炖至汤汁浓稠,香味四溢即可盛出撒上葱花。南瓜面软香甜,汤汁细滑,很是好吃。

  • 和平精英服饰币用不了(服饰币使用方法)

    和平精英服饰币用不了?我们一起去了解并探讨一下这个问题吧!虽然可能在拿到助力礼包之后很多玩家都会感觉自己突然间拥有了好多的服饰币,不过实际上考虑到每件皮肤或者着装的售价其实也换不了太多东西。注意:之前购买套装是分7天/30天/永久的,现在不存在这个问题,购买的话就直接入手了,需要注意,一定要确定好再买,毕竟是氪金物品了!

  • 鱼缸过滤是生化棉好还是滤材好(鱼缸过滤是生化棉好还是滤材好呢)

    是细菌培养的初级位置,在生化棉上放上硝化细菌,在避光高氧,过滤设备不停机的环境下,可以慢慢繁殖硝化细菌消除缸内有害物质,清洁水质。

  • 盈科而后进什么原则(盈科而后进的出处)

    下面更多详细答案一起来看看吧!盈科而后进什么原则盈科而后进体现了循序渐进的教学原则。“盈科而后进”原意是指水遇到坑洼之处,要充满之后才能继续向前流,而不能逾越而进。比喻学习应步步落实,不能只图虚名。盈科而后进出自《孟子·离娄下》:“源泉混混,不舍昼夜,盈科而后进,放乎四海。”常用于学习与工作。

  • 为什么要推荐一款好的收音机(五款皮实的收音机)

    在海外的少数人特别要求使用NOAA/加拿大环境气象台的收音机。请注意,尽管已经选择了许多此类产品,但同时考虑了北美的居住者,但欧洲,亚洲和太平洋地区有许多具有DAB/DAB接收功能的类似产品。这并不是最便宜的收音机产品:新款零售价从45美元到60美元不等。它甚至具有天气警报功能。与该列表中的其他收音机不同,PR-D4W需要四个“D”电池供电。该收音机在亚马逊价格为48美元,这是一个便宜货。市场上有太多AM/FM收音机,我们无法涵盖所有产品。

  • 倡导低碳生活的方式有哪些?(倡导低碳生活的方式)

    倡导低碳生活的方式有哪些?下面内容希望能帮助到你,我们来一起看看吧!倡导低碳生活的方式有哪些少用纸巾,保护森林;随手关灯;节约用纸,每张纸双面打印,双面写;上下班多步行;尽量不用一次性塑料袋,改用可循环利用的布袋;使用肥皂洗澡,比沐浴露更环保。每天的淘米水可以用来洗手、洗脸、洗去含油污的餐具、擦家具、浇花等。干净卫生,天然滋润。出门购物,尽量自己带环保袋,无论是免费或者收费的塑料袋,都减少使用。

  • 末世觉醒之入侵主角(末世觉醒的剧情简介)

    末世觉醒之入侵主角末世觉醒之入侵主角是马三。《末世觉醒》系列动画主要描绘末世人类与AI智能之间残酷的生存战。在未来科技为王的时代,人类败给觉醒的人工智能强AI,被实验失败产生的“意识消失者”感染。少数幸存者在世界角落苟活,争夺灾变前遗留的生存物资。地球一片荒芜,马三等人为了生存走上反抗道路,这段热血征程却意外频发。故事围绕能源争夺展开,突出种族利益纷争,跨越时空维度,描绘出一幅反乌托邦的现实主义画卷。

  • 泰剧霸道总裁剧(泰剧出逃的公主)

    另外,耶梭吞王国内外的权势斗争与政治阴谋,也烘托着娜拉从少女到女王的蜕变。也只有这样的娜拉,才配得上如太阳般闪光的阿诺泰。娜拉在爱人离世之后,还得拖着没了灵魂的躯体,完成爱人的意志。《出逃的公主》以温馨浪漫,充满幻想的剧情设计为主,加上主演多是混血的帅哥美女,自然容易得到女性观众青睐。