痞子衡嵌入式:超级下载算法RT-UFL v1.0在MCUXpresso IDE下的使用


  痞子衡主导的"学术"项目 《RT-UFL - 一个适用全平台i.MXRT的超级下载算法设计》 v1.0 版发布近 4 个月了,部分客户已经在实际项目开发调试中用上了这个超级下载算法,目前反馈还可以,但这个超级下载算法远未到成熟状态,痞子衡正在策划 v2.0 版本。

  超级下载算法 RT-UFL v1.0 版本主要针对 Segger J-Link 调试器,开发测试也都是在 J-Link Commander 和 J-Flash 软件下进行的,但其实它也适用各大常用 IDE,今天我们就来聊聊它在 MCUXpresso IDE 下的使用:

一、准备测试环境

  首先需要准备好测试环境,包含必要的软件和硬件,痞子衡的环境如下:

  • 集成开发环境: MCUXpresso IDE v11.4.0_6224,点此下载
  • 软件开发包: SDK_2.10.0_EVKB-IMXRT1050(Toolchain需包含MCUXpresso IDE),点此下载
  • 软件驱动: J-Link driver v6.86f,点此下载
  • 硬件工具: J-Link Plus调试器
  • 硬件开发板: MIMXRT1050-EVKB (Rev.A1)

  上述软件环境里,MCUXpresso IDE 版本与 SDK 软件包版本之间有一定依赖关系(见下图),但 J-Link 软件驱动版本与 MCUXpresso IDE 版本没有明确依赖关系。

  J-Link 软件驱动不是一定限制在 v6.86f,只是超级下载算法 v1.0 是在这个版本下详细测试的,其他 J-Link 版本也可能适合,具体需要进一步测试。

二、在MCUXpresso IDE下使用步骤

2.1 将超级下载算法包打进J-Link驱动

  第一步其实跟 MCUXpresso IDE 无关,因为是基于 J-Link 的超级下载算法,所以要给 J-Link 软件驱动先打个更新包,具体参照 《超级下载算法RT-UFL v1.0发布,附J-Link下安装教程》 一文。

  • Note: MCUXpresso IDE 安装过程中会顺便在 C:\Program Files (x86)\SEGGER\JLink 路径下安装一个默认的 J-Link 驱动(版本不可控,应该是跟 MCUXpresso IDE 匹配的),但为了避免不可预见的问题发生,最好自己手动安装一个明确的 J-Link 驱动版本来使用(痞子衡安装在了 C:\tools_mcu\SEGGER\JLink_V686f)。

2.2 使用MCUXpresso IDE导入一个SDK工程

  然后我们需要一个 MCUXpresso IDE 工程,参照 《MCUXpresso IDE下SDK工程导入与workspace管理机制》 一文,这里我们导入了 \SDK_2.10.0_EVKB-IMXRT1050\boards\evkbimxrt1050\demo_apps\led_blinky 工程。

2.3 在SDK工程设置里指定包含超级下载算法的J-Link驱动

  前面讲了,在安装 MCUXpresso IDE 时会同时安装一个默认 J-Link 驱动,MCUXpresso IDE 会默认调用这个驱动,我们需要在 MCUXpresso IDE 里重设 J-Link Server 路径,指向打了超级下载算法的 J-Link 驱动。

  • Note: MCUXpresso IDE 安装目录 \MCUXpressoIDE_11.4.0_6224\ide\binaries\Flash 下自带的 .cfg 格式下载算法主要适用 CMSIS-DAP 型硬件仿真器,不可用于 J-Link 仿真器,在这点上 MCUXpresso IDE 与其他 IDE 设计不太一样。

2.4 确保板卡处于Flash启动模式且SDK工程能够XIP

  现在可以将板卡供上电,确保板卡处于 NOR Flash 启动模式(Boot Mode 以及 Boot Cfg 要设置正确),然后再检查一下 MCUXpresso IDE 工程里的 Flash 启动头是否与板卡上的实际 Flash 型号相匹配。

  • Note:要想在 IDE 设置的 Hardware Reset 复位类型下实现在 Flash 调试,上述条件必须要满足,但如果改为 Software/Core Reset 类型,则板卡启动模式以及工程里 Flash 启动头并不影响调试。

2.5 选择合适的超级下载算法进行在线下载调试

  还差最后一步就可以愉快地在 Flash 调试了,我们将 J-Link 仿真器连接上板卡,点击左下角 J-Link 图标进行调试会出现一个弹框,IDE 会自动发现可用的 J-Link 设备,点击确认后会在工程目录下生成一个 xxProject JLink Debug.launch 文件,双击这个 .launch 文件进入 J-Link 具体设置界面,这里主要是要在 JLink Debugger 下的 Device 里填入超级下载算法代号(下拉选项里没有,需要手动输入),然后就可以正常下载调试了(如果调试不稳定,可尝试降低 J-Link Speed)。

  • Note: 超级下载算法具体代号详见 C:\tools_mcu\SEGGER\JLink_V686f\JLinkDevices.xml 文件,代号后缀 _L0 适用 QSPI 和 Octal Flash,代号后缀 _L1/L2 适用 Hyper Flash。

欢迎订阅

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

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

posted @ 2021-10-20 20:36  痞子衡  阅读(189)  评论(0编辑  收藏  举报