--
痞子衡维护的NXP-MCUBootUtility工具距离上一个大版本(v3.0.0)发布过去4个多月了,期间痞子衡其实断断续续做个几个小版本更新,这一次痞子衡为大家带来了稳定版本v3.3.0,顺便将之前的所有新增功能改动一并介绍。其实这次更新主要是跟恩智浦SE团队近期主推的一个神秘大项目SBL有关。
从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升级以及App切换管理;SFW负责远程更新(也包含U盘和SD卡方式升级),这个项目近期将会在恩智浦官方github上以源码形式开源,敬请关注。
工具为了支持这个大项目,在菜单栏Tools/Run Mode里新增了“SBL OTA”选项,切换到这个选项后,工具就可以配合SBL里的ISP功能(可以理解为二级L2 bootloader,其usb id固定为0x15A2, 0x0073)进行应用程序下载了,注意下载操作主要在通用编程器界面里完成。
至此,这次更新的主要特性便介绍完了。MCUBootUtility项目地址如下。虽然当前版本(v3.3.0)功能已经非常完备,你还是可以在此基础上再添加自己想要的功能。如此神器,还不快快去下载试用?
地址1: https://github.com/JayHeng/NXP-MCUBootUtility
地址2: https://gitee.com/jayheng/NXP-MCUBootUtility
欢迎订阅文章会同时发布到我的 博客园主页、CSDN主页、知乎主页、微信公众号 平台上。
微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。