zoukankan      html  css  js  c++  java
  • 痞子衡嵌入式:MCUBootUtility v3.3发布,可配合SBL项目使用

    --
      痞子衡维护的NXP-MCUBootUtility工具距离上一个大版本(v3.0.0)发布过去4个多月了,期间痞子衡其实断断续续做个几个小版本更新,这一次痞子衡为大家带来了稳定版本v3.3.0,顺便将之前的所有新增功能改动一并介绍。其实这次更新主要是跟恩智浦SE团队近期主推的一个神秘大项目SBL有关。

    一、v3.1 - v3.3更新记录

    -- v3.3.0
    Features:
        1. 支持对源image文件进行部分签名
        2. 支持SBL设备的ISP下载
        3. 通用编程器模式下增加支持带格式源image文件(hex/s19)
    Improvements:
        1. 启动头IVT中entry参数既支持设为复位函数也支持中断向量表
    
    -- v3.2.0
    Features:
        1. 支持i.MXRT116x
        2. 支持RT500/600下SB文件生成
    Bugfixes:
        1. 修复RT1170下SB文件无法正常生成问题
    
    -- v3.1.1
    Bufixes:
        1. 修复RT1170下UART口无法正常下载问题
    
    -- v3.1.0
    Features:
        1. 支持i.MXRT1024 SIP
        2. 支持Kinetis K32L系列
    

    二、关于新型号MCU的支持

      从v3.0到v3.3,工具一共增加了三款MCU型号的支持:Kinetis K32L、i.MXRT1024、i.MXRT1160。

      Kinetis K32L是以前老的Kinetis KL43系列的改良版。i.MXRT1024是i.MXRT1020的SIP版(就是内部绑了一个4MB串行NOR Flash)。i.MXRT1160是i.MXRT1170的低配版,官网还没上线,痞子衡给大家放个型号表尝尝鲜。

    三、不可忽视的重要改进

    3.1 自动生成的IVT头entry参数增加中断向量表选项

      在菜单栏Tools里新增了IVT Entry Type选项,这个选项的具体作用,详见痞子衡写过的一篇文章 《IVT里的不同entry设置可能会造成i.MXRT1xxx系列启动App后发生异常跑飞》,原先版本默认都是用Reset Handler做IVT.entry,但是有时候一些源可执行文件里Reset Handler值可能不正确,所以这里增加中断向量表的选项。

    3.2 通用编程器下新增.s19/.hex格式支持

      原先工具通用编程器界面下仅支持.bin格式下载,现在新增支持经典的.s19和.hex文件格式,这样下载时就不用再手动填写起始下载地址了。

    3.3 可以仅签名程序部分区域

      原先工具对于i.MXRT签名启动模式的支持,均是默认签名全部程序区域。但实际应用中,客户会有仅签名程序一部分区域的需求,因此v3.3里新增了部分区域签名的功能,最大支持3个区域。注意:第一个区域最好包含程序中断向量表(这是HAB的限制)。

    四、配合恩智浦全新大项目SBL

      恩智浦MCU SE团队近期一直在加班加点赶一个大项目,这个项目是为客户产品OTA需求而生的。我们知道在线升级是每个智能产品都不可绕开的话题,恩智浦SE团队为了方便客户在基于i.MXRT/LPC的产品上做在线升级,特别推出OTA参考设计,下面是功能架构简图:项目分为SBL + SFW两部分,SBL负责ISP本地更新(UART/USB)以及App切换管理;SFW是一个示例App,其除了客户项目业务功能外,也集成了远程更新功能(WiFi、以太、U盘、SD卡四种升级方式)。这个项目近期将会在恩智浦官方github上以源码形式开源,敬请关注。

      工具为了支持这个大项目,在菜单栏Tools/Run Mode里新增了“SBL OTA”选项,切换到这个选项后,工具就可以配合SBL里的ISP功能(可以理解为二级L2 bootloader,其usb id固定为0x15A2, 0x0073)进行应用程序下载了,注意下载操作主要在通用编程器界面里完成。

      至此,这次更新的主要特性便介绍完了。MCUBootUtility项目地址如下。虽然当前版本(v3.3.0)功能已经非常完备,你还是可以在此基础上再添加自己想要的功能。如此神器,还不快快去下载试用?

    欢迎订阅

    文章会同时发布到我的 博客园主页CSDN主页知乎主页微信公众号 平台上。

    微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。

      最后欢迎关注痞子衡个人微信公众号【痞子衡嵌入式】,一个专注嵌入式技术的公众号,跟着痞子衡一起玩转嵌入式。

    痞子衡嵌入式-微信二维码 痞子衡嵌入式-微信收款二维码 痞子衡嵌入式-支付宝收款二维码

      衡杰(痞子衡),目前就职于恩智浦MCU系统部门,担任嵌入式系统应用工程师。

      专栏内所有文章的转载请注明出处:http://www.cnblogs.com/henjay724/

      与痞子衡进一步交流或咨询业务合作请发邮件至 hengjie1989@foxmail.com

      可以关注痞子衡的Github主页 https://github.com/JayHeng,有很多好玩的嵌入式项目。

      关于专栏文章有任何疑问请直接在博客下面留言,痞子衡会及时回复免费(划重点)答疑。

      痞子衡邮箱已被私信挤爆,技术问题不推荐私信,坚持私信请先扫码付款(5元起步)再发。


  • 相关阅读:
    linux下解除端口占用
    设计模式(二)观察者模式
    设计模式(一) 策略模式
    loj #6235. 区间素数个数
    loj #2013. 「SCOI2016」幸运数字
    loj #6014. 「网络流 24 题」最长 k 可重区间集
    loj #6013. 「网络流 24 题」负载平衡
    loj #2255. 「SNOI2017」炸弹
    loj #2051. 「HNOI2016」序列
    loj #6122. 「网络流 24 题」航空路线问题
  • 原文地址:https://www.cnblogs.com/henjay724/p/14797175.html
Copyright © 2011-2022 走看看