痞子衡主导的"学术"项目 《RT-UFL - 一个适用全平台i.MXRT的超级下载算法设计》 历时 8 个月终于迎来了 v1.0 版发布,因为是第一个正式版,为了保证质量,痞子衡做了大量的测试工作,几乎测遍了恩智浦官方 IMXRT-EVK 板(部分板子上还更换过不同型号Flash),确认全部板卡均测试通过,RT-UFL 达到了发布条件。
RT-UFL v1.0下载地址:https://github.com/JayHeng/RT-UFL/archive/refs/tags/v1.0.zip
超级下载算法 RT-UFL v1.0 版本主要针对 Segger J-Link 调试器,这也是本项目最原始的需求。当然为了能扩展支持各种 DAP-Link 类调试器,项目还有其他分支,即与 IDE 紧相关的下载算法,这些分支会在后续的版本里陆续完善。
要使用 Segger J-Link 调试器去下载 Flash,就离不开 J-Link 的下载算法,可以先浏览一遍痞子衡旧文 《串行NOR Flash下载算法(J-Link工具篇)》,对 J-Link 下载算法有个初步设计,超级下载算法 v1.0 其实就是 J-Link 下载算法的一种特殊实现。
Segger J-Link 调试器的功能离不开上位机的 J-Link 软件驱动,痞子衡手头的硬件调试器是正版 J-Link Plus v10.1,它可以配合不同版本 J-Link 驱动使用(如果安装新版软件驱动,在第一次使用时,硬件调试器里的 MCU 固件可能会被建议更新)。
J-Link驱动下载地址:https://www.segger.com/downloads/jlink
我们可以从 Segger 官网下载到所有历史版本 J-Link 驱动,默认总是下载最新版本驱动,但是痞子衡不能保证超级下载算法总是适用最新版软件驱动,所以还是建议下载安装 v6.86f 版本驱动,这个版本是痞子衡实测的版本。
安装好 J-Link 驱动,下一步就是将超级下载算法源文件以补丁形式放入 J-Link 驱动,打补丁其实很简单,就是把 \RT-UFL-1.0\algo\SEGGER\JLink_Vxxx 路径下的全部文件拷贝覆盖到 \SEGGER\JLink_V686f\ 目录下即可。
打完超级下载算法补丁后,可以先用 J-Link 驱动里的 JFlash 上位机软件测试一下功能。双击打开 JFlash.exe 软件,在新建工程 "Target device" 选项框里输入 "UFL" 选择对应 i.MXRT 芯片型号即可,其中 _L0 后缀算法适用于 QSPI Flash 和 Octal Flash(Page 大小是256 Bytes,Sector 大小是 4KB),_L1/2 后缀算法适用于 Hyper Flash(Page大小是512 Bytes,Sector 大小是 4KB/64KB)。
痞子衡测试的板卡是 MIMXRT1062-EVK,板载 Flash 为 IS25WP064A,这是颗典型的 QSPI Flash,因此建 J-Flash 工程时选择 "MIMXRT1060_UFL_L0",然后选择你要下载的 App 镜像文件,依次点击菜单栏 "Target" 里的 Connect 和 Production Programming 操作即可完成超级下载算法的测试。
Note: 建议将 i.MXRT 的 Boot Mode 设为从 Flash 启动,并且保证 Flash 里已有 App 是能正常启动的(即 App 没有跑飞)。
超级下载算法除了在 J-Flash 下量产使用之外,还会在各大 IDE 下用于辅助在 Flash 下载调试。因此我们需要将打过超级下载算法补丁的 J-Link v6.86f 驱动指定到各 IDE 下(用于取代各 IDE 下自带的 J-Link 驱动),这里借助 JLinkDLLUpdater.exe 软件来实现。注意 MCUXpresso IDE 不能被自动识别,其指定 J-Link 驱动方法见下文。
每个 IDE 一般都有自定义的下载算法,这个下载算法常常是配套 DAP-Link 类调试器使用的,当然在 J-Link 调试器下一样可以使用(MCUXpresso IDE除外)。关于各 IDE 算法设计参看痞子衡旧文:
《串行NOR Flash下载算法(MCUXpresso IDE篇)》
《串行NOR Flash下载算法(IAR EWARM篇)》
《串行NOR Flash下载算法(Keil MDK篇)》
现在我们有了基于 J-Link 的超级下载算法,这个下载算法是否可以在各 IDE 下直接使用呢?答案是肯定的,由于每个 IDE 下具体设置不一,痞子衡会另写文章一一介绍。
1.容器技术,与嵌入式系统有多大关系?
2.@关注RISC-V嵌入式系统开发已久的你
3.聊聊身边的嵌入式,热卖的九阳豆浆机,为什么藏着财富密码?
4.教你动手移植RT-Thread到国产MCU
5.一个小技巧,减少MCU现场的麻烦
6.MCU硬件延时和软件延时有什么区别?
免责声明:本文系网络转载,版权归原作者所有。如涉及作品版权问题,请与我们联系,我们将根据您提供的版权证明材料确认版权并支付稿酬或者删除内容。