找回密码
 立即注册
首页 业界区 业界 痞子衡嵌入式:在MDK5.40开发环境下添加用户下载算法FLM ...

痞子衡嵌入式:在MDK5.40开发环境下添加用户下载算法FLM文件的方法

蓟晓彤 昨天 18:16
  大家好,我是痞子衡,是正经搞技术的痞子。今天痞子衡给大家分享的是在MDK5.40开发环境下添加用户下载算法FLM文件的方法
  最近痞子衡给一个 RT1170 客户制作了一个 SEGGER 下载算法,在 J-Flash 下测试一切正常,于是直接发给了客户。当客户尝试将这个下载算法添加进 MDK 里使用时发现无法成功添加(我们知道 SEGGER 与 MDK 下载算法共用了同一套 API 接口与文件格式 FLM,原则上两者可以互相替代),这是怎么回事?今天痞子衡就来聊聊这个话题:


  • Note: 测试 MDK 版本为 V5.40
一、传统添加算法方法失效

  MDK 安装完成后,在如下路径会放一些下载算法。当我们制作好一个新的下载算法后,传统的方法就是将这个算法 FLM 文件直接拷贝一份放到该路径下:
MDK自带下载算法路径:\Keil_v5\ARM\Flash
  这时随便打开一个 MDK 工程,找到算法选择界面(Origin 属性为 MDK Core 表明是自带算法路径),就会看到这个新算法(由于算法可能会重名,这里主要看下方文件路径),选中保存似乎就可以了,然而不幸的是,当你再次打开算法选择界面会发现这个算法选择没有被正常保存。这就是客户遇到的问题。


  • Note:该问题在早期 MDK v5.31 应该不存在,V5.40 可能更改了设计(也可能是 bug)
1.png

  要解决这个问题,也有替代方法,那就是在 MDK 里直接用我们在 SEGGER 安装目录里添加的的新下载算法(详见 《超级下载算法RT-UFL v1.0在Keil MDK下的使用》 一文 2.5 小节),不过这个替代方法仅适合 J-Link 调试器,如果用 DAP-Link 调试器那就无能为力了。所以我们还是要直接解决 MDK 添加算法问题。
二、借助DFP包来添加算法

  如果你阅读过痞子衡旧文 《NOR Flash下载算法(Keil MDK篇)》 应该知道 MDK 从 V5 开始分成 MDK Core 和 Software Packs 两部分,后者是全新的芯片支持包管理方式。在 Pack Installer 里可以安装芯片 DFP 包, DFP 包里也包含下载算法:
2.png

DFP下载算法路径:\Arm\Packs\NXP\MIMXRT1176_DFP\25.03.00\devices\MIMXRT1176\arm
  我们试试将自己制作的下载算法添加到这个 DFP 包下载算法路径里,然后编辑 .pdsc 文件(默认文件属性是 Read-only,需更改文件属性方可编辑)照葫芦画瓢添加一句代码完成新算法的支持。
3.png

  如果此时 MDK 工程是打开的状态,需要先关闭一下再重新打开(否则 DFP 包里新添加算法不能正常识别),找到算法选择界面(Origin 属性为 DFP 表明是DFP算法路径),看到新添加算法选中保存,这次就能正常保存了,客户问题完美解决。
4.png

  至此,在MDK5.40开发环境下添加用户下载算法FLM文件的方法痞子衡便介绍完毕了,掌声在哪里~~~
欢迎订阅

文章会同时发布到我的 博客园、CSDN、微信公众号、知乎、与非网、电子技术应用AET、电子星球、51CTO 平台上。
微信搜索"痞子衡嵌入式"或者扫描下面二维码,就可以在手机上第一时间看了哦。
5.jpeg


来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
您需要登录后才可以回帖 登录 | 立即注册