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

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 就可以下载,等待下载成功,就可以正常运行。

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

    推荐阅读
  • 蟹味菇炒肉家常做法(蟹味菇烧豆腐成本低廉)

    豆腐,始于东汉淮南王刘安,距今已有2000多年的历史了。现如今,豆腐已经是日常生活中最常见的食材,豆腐以地域和制作手法可以简单的分为南豆腐和北豆腐。南豆腐多用石膏点卤,含水量高,质地细嫩。相对于南豆腐,北豆腐多用卤水调制,质地比较韧,更适合煎、炒等烹饪方法。今天就分享一道用北豆腐做的家常菜——蟹味菇肉末烧豆腐。步骤3、蟹味菇去老根洗净放入沸水中焯水捞出。

  • 儿童营养搭配关键要点需记牢(如何搭配儿童的营养)

    儿童营养搭配关键要点需记牢保证儿童餐的营养均衡和充分。儿童的饮食应该要易于消化。因此,儿童的日常饮食还需要注意要易于消化,这样更有利于儿童的营养吸收和成长。比如说牛奶,牛奶可以说是能够在很大程度上帮助儿童的成长的了,对于儿童来说,牛奶能够提供一个相对高级的营养物质,促进儿童的成长。

  • 最高院关于隐名股东的司法解释中的认定标准是什么?

    它不仅是隐名股东用来约束显名股东的依据,也是证明隐名股东对于公司实际出资的有力证据。隐名股东以自己名义参与公司经营,行使股东权利,是公司以及其他股东知道并且认可隐名投资行为存在的证据。在这种情况下,隐名股东如果向法院提起确认之诉,将不会受到法院的认可,对于隐名股东以及显名股东双方而言,都将承担较大的风险。

  • 刘公岛历史简介(刘公岛历史简介是什么)

    上午10时,日本舰队驶往港湾南口,首先对刘公岛上的东泓炮台发炮轰击。2月5日,日艇再次偷袭,击中了定远舰的尾部,舰体受到严重破坏,定远舰驶到刘公岛南岸海摊处搁浅。2月6日,日艇发射鱼雷,击中来远舰,舰内30余人全部遇难。当天下午日本联合舰队又对刘公岛发动海上进攻,经过激战,日本舰队再次被击退。2月7日,日本联合舰队司令伊东祐亨决心一举攻下刘公岛,全歼北洋舰队。北洋舰队各舰与刘公岛、日岛炮台进行还击。

  • 柑和橘的区别 柑和橘的区别哪个吃了上火

    2、分布范围不同:柑主要分布在我国云南、广西、广东等地,而橘子的分布范围相对更广一些,南起海南,北至陕西,东起台湾,西至西藏,都有橘子分布。

  • 玉米铜锣饼(香脆玉米饼)

    烙玉米饼的火一定要非常小,否则饼很易烙糊。油也要少,否则容易烙硬。玉米做法推荐:玉米糕用料玉米粉面粉葡萄干红枣做法1.玉米粉、面粉按1:1的比例掺好,加酵母粉和,面和的软一点,和好了放至发酵2.葡萄干,红枣泡软备用3.面团加葡萄干,红枣揉匀4.面团做成一圆形面坯,水开上锅蒸二十分钟,取出,切块小贴士爱吃甜的话就加点糖,但是你就吃不到玉米的本来味道了。

  • 做梦梦到耳朵掉了一半(睡觉的时候梦见耳朵掉了一半)

    以下内容大家不妨参考一二希望能帮到您!做梦梦到耳朵掉了一半单身女人梦之,身边桃花运颇多之迹象,与异性关系虽有真诚相待,却多被他人所利用,感情进展多有不利之事。单身男人梦之,有情牵意挂之人,却是你二人感情难以长久之迹象,心中多有不安生活,有烦闷之意,感情之事一切随缘。已婚女人得此梦,事业多被他人所影响,乃心中有不安之迹象,事业发展难以顺遂,身边小人颇多之,求财者应有个人主见。

  • 读呼兰河传心灵感悟一句话(读呼兰河传有感)

    读《呼兰河传》有感三年五班王露瑶,现在小编就来说说关于读呼兰河传心灵感悟一句话?这本书主要讲述了在作者的家乡呼兰河里发生的故事。这里的人们对于平静的生活、平凡的生活已经麻木。在这里,有祖母的冷酷严厉,父亲的暴戾残忍,母亲的冷言冷语,使作者感不到温暖,唯一让作者感到温暖的人便是祖父。祖父是一个善良慈爱的老人,是一个喜欢孩子,擅长游戏的人。其中有一个人是我最同情的,那就是有二伯。

  • 薇娅“消失”之后带货主播们的现状(迎来洗牌)

    “看鉴”2022:薇娅李佳琦双双翻车直播带货迎来洗牌?CNMO联合智车派,发起“看鉴2022”系列报道。薇娅逃税事件是直播带货行业一个税法普及的“标杆”案例,我们试图从这里切入,探讨2022年直播带货行业的发展趋势。薇娅“倒”了,李佳琦“摔”了借用一句名言,对于直播带货行业来说,这是一个最好的时代,也是一个最坏的时代。