--

  痞子衡维护的 NXP-MCUBootUtility 工具距离上一个大版本(v3.3.0)发布过去 4 个多月了,这一次痞子衡为大家带来了版本升级 v3.4.0,这个版本主要有几个非常重要的更新需要跟大家特别说明一下。

一、v3.4更新记录

Features:
1. 支持下载应用程序进主动启动设备 - FlexSPI NAND接口Flash
2. 支持对启动设备进行全擦操作
Improvements:
1. 支持SDK 2.10及其之后生成的可启动文件作为源文件
2. 添加更多的串行NOR Flash模型

二、几个不可忽视的更新

2.1 支持下载串行NAND

  i.MXRT 系列支持的启动设备种类非常丰富,工具已经支持了大部分类型的启动设备,这次新增支持的串行 NAND 是所剩不多的未支持设备类型了。

  NAND 相比 NOR 有着容量大、价格便宜的优势,但是因为天然不支持 XiP,所以在 i.MXRT 项目上用得并不广泛。此外 NAND 还分 Raw NAND 和 串行 NAND,前者问世时间更早一些,在 Linux 世界里有一定群众基础,因此即使客户选 NAND 作为启动设备,一般也是 Raw NAND 居多。

  为何痞子衡这次花费精力去升级工具支持串行 NAND 呢?当然是来生意了,最近有国外客户选择了用串行 NAND 作为启动设备,但是恩智浦这边相关资料较少,想要搞定启动不太容易,所以痞子衡只能先顶上了,让工具把串行 NAND 第一时间支持起来。

2.2 支持SDK 2.10.x例程

  工具设计之初本打算仅支持裸应用程序,即用户只需要关心应用程序本身,不用管 i.MXRT 启动头(FDCB, IVT, BD等),工具会自动添加合适的启动头,但恩智浦 SDK 里的示例例程包含了启动头(见工程选项里的 XIP_BOOT_HEADER_ENABLE=1),所以工具(从 v1.1 版本开始)不得不要去支持可启动应用程序源文件。

  工具 v1.1 版本发布之时,当时恩智浦 SDK 版本才 2.3.x,三年过去了,目前 SDK 版本已经升级到了 2.10.x。从 SDK 2.10.x 版本开始,启动头设定有了一些变化,IVT 里的 entry 值从中断向量表首地址变成了复位函数地址,这个变化对工具产生了影响,因此工具需要升级支持 IVT.entry 是复位函数地址的可启动程序。

  • Note: 当前功能有一个限制,就是假定应用程序中断向量表是以 0x400 对齐的,因为工具需要根据这个假定来从源程序文件中寻找出中断向量表地址。

2.3 更多的NOR Flash模型

  NOR Flash 模型设计是工具的一大特色,之前版本没有把支持的所有厂商型号都罗列出来,只给了一些代表型号。如果模型里没有客户选择的 Flash 型号,很多客户就不知道该选哪个模型了(其实选相近类型即可,不一定需要厂商一致)。这次升级直接就一步到位了,把该加上的模型全部加上,如果有遗漏,欢迎大家给我留言或者提 issue。

  • Note: 模型设计的前提是这些 Flash 里均包含 SFDP,鉴于有些厂商手册里标称包含 SFDP,实际却没有的情况,需要选择 Complete FDCB 来支持。

2.4 支持Flash全擦操作

  工具本身也是一个基于 i.MXRT 的通用 Flash 编程器,我们可以对连接到 i.MXRT 的 Flash 进行任意的读写擦,之前版本的擦除操作主要通过 Sector Erase 和 Block Erase 命令组合实现的,如果客户想将 Flash 全部擦除,花费时间较久。为了提高全擦效率,这次新增了一个 Mass Erase 按钮,即调用 Chip Erase 命令来实现,耗时缩短不少。

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

欢迎订阅

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

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

痞子衡嵌入式:MCUBootUtility v3.4发布,支持串行NAND的更多相关文章

  1. 痞子衡嵌入式:揭秘i.MXRT1170上串行NOR Flash双程序可交替启动设计

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT1170上串行NOR Flash双程序可交替启动设计. 在上一篇文章 <i.MXRT1060/1010上串行NOR F ...

  2. 痞子衡嵌入式:测一测i.MXRT1170 Raw NAND启动时间(从POR到进App的Reset_Handler)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是恩智浦i.MX RT1170 Raw NAND启动时间. 关于i.MXRT1170这颗划时代的MCU,痞子衡去年10月在其刚发布的时候, ...

  3. 痞子衡嵌入式:导致串行NOR Flash在i.MXRT下无法正常下载/启动的常见因素之SFDP

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是导致串行NOR Flash在i.MXRT下无法正常下载/启动的常见因素之SFDP. i.MXRT系列MCU发布已两年多了,基于i.MXR ...

  4. 痞子衡嵌入式:借助Serial Plot软件测量i.MXRT系列FlexSPI驱动Flash页编程执行时间

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家介绍的是i.MXRT系列FlexSPI驱动Flash页编程执行时间. 痞子衡之前写过一篇文章 <串行NOR Flash的页编程模式对于量产 ...

  5. 痞子衡嵌入式:i.MXRT中FlexSPI外设不常用的读选通采样时钟源 - loopbackFromSckPad

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是i.MXRT中FlexSPI外设不常用的读选通采样时钟源 - loopbackFromSckPad. 最近碰到一个客户,他们在 i.MX ...

  6. 痞子衡嵌入式:MCUBootUtility v3.0发布,开始支持LPC, Kinetis啦

    -- 痞子衡维护的NXP-MCUBootUtility工具距离上一个版本(v2.4.0)发布过去2个半月了,这一次痞子衡为大家带来了全新版本v3.0.0,从这个版本开始,NXP-MCUBootUtil ...

  7. 痞子衡嵌入式:MCUBootUtility v3.5发布,支持串行NOR的ECC及双程序启动

    -- 痞子衡维护的 NXP-MCUBootUtility 工具距离上一个大版本(v3.4.0)发布过去半年了,这一次痞子衡为大家带来了版本升级 v3.5.0,这个版本主要有几个非常重要的更新需要跟大家 ...

  8. 痞子衡嵌入式:MCUBootUtility v3.3发布,可配合SBL项目使用

    -- 痞子衡维护的NXP-MCUBootUtility工具距离上一个大版本(v3.0.0)发布过去4个多月了,期间痞子衡其实断断续续做个几个小版本更新,这一次痞子衡为大家带来了稳定版本v3.3.0,顺 ...

  9. 痞子衡嵌入式:MCUBootFlasher v3.0发布,为真实的产线操作场景而生

    -- 痞子衡维护的NXP-MCUBootFlasher工具(以前叫RT-Flash)距离上一个版本(v2.0.0)发布过去一年半以上了,这一次痞子衡为大家带来了全新版本v3.0.0,从这个版本开始,N ...

随机推荐

  1. noip模拟14

    T1 离散化后线段树维护\(dp\),\(fi\)表示最小值为\(i\)时最多点亮多少个, 区间操作即可. Code #include<cstring> #include<cstdi ...

  2. kivy之CheckBox属性实操学习

    checkbox部件属性不多,本练习举例了单选,复选二种方式,并将各checkbox进行id命名,每个都绑定了相同的动作,具体大家可以看源码进行学习. 先在开发工具pycharm里新建一个项目,然后新 ...

  3. js 遍历数组对象求和

    这个通常是求多个商品的总价遇到的情形: [ 0: {id: 1, name: "服务费", price: "1.00"} 1: {id: 2, name: &q ...

  4. react启动报babel-eslint依赖版本不一致

    遇到的问题: gitlab上拉的react的项目,下载依赖之后,yarn start启动报错 因为按他说的步骤:1.改动比较大, 2.完全没什么作用(重点) 解决方案:直接忽略,如果项目没有.env文 ...

  5. Navicate 连接阿里云MySQL(两种方式及原理讲解)

    Navicate 连接阿里云(两种方式及原理讲解) 一.直连方式(通过3306端口) 1.概述 2. 环境准备 3.操作及讲解 二.使用SSH通道 1.概述 2.环境准备 3.操作及讲解 如果对你有帮 ...

  6. 一、vue基础语法(轻松入门vue)

    轻松入门vue系列 Vue基础语法 一.HelloWord 二.MVVM设计思想 三.指令 1. v-cloak 2. v-text 3. v-html 4. v-show 4. v-pre 5. v ...

  7. Spring PropertyPlaceholderConfigurer 自定义扩展

    原文地址:https://blog.csdn.net/feiyu8607/article/details/8282893 Spring中PropertyPlaceholderConfigurer这个类 ...

  8. Python 3.10 is coming!

    看看Python 官网的文档 whatsnew,Python 3.10 已然距离我们越来越近了,然我们看看 Python 3.10 相较于 Python 3.9 有哪些改变吧 新特性 通过括号来组织多 ...

  9. Visual Studio 2022 预览版3 最新功能解说

    我们很高兴地宣布Visual Studio 2022 的第三个预览版问世啦!预览版3 提供了更多关于个人和团队生产力.现代开发和持续创新等主题的新功能.在本文中,我们将重点介绍Visual Studi ...

  10. 一. Go微服务--隔离设计

    1. 前言 隔离设计源于船舶行业,一般而言无论大船还是小船,都会有一些隔板,将船分为不同的空间,这样如果有船舱漏水一般只会影响这一小块空间,不至于把整个船都给搞沉了. 同样我们的软件服务也是一个道理, ...