0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

J-Link添加Geehy芯片

Geehy极海半导体 来源:21ic论坛极海半导体专区 作者:21ic论坛极海半导体 2022-07-25 14:57 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

前言

最近调试Geehy的APM32芯片想着替换STM32,发现在使用Keil+J-Link的调试过程中总是发现J-Link会在初次下载的时候提示

9e18f790-041e-11ed-ba43-dac502259ad0.png

虽然说我们可以选择相应芯片内核即可下载。

9e2b127c-041e-11ed-ba43-dac502259ad0.png

但是如此多此一举,还是让人有点累。我就计划鼓捣去除掉这个提示窗口。

使用环境:

* Windows 11

* J-Link V9(v7.62)

* APM32F407ZG芯片

* Keil MDK 5.36

1 基础学习

从提示窗口看出,是J-Link未能识别我们的目标芯片是啥子,那我们只需要知道如何使得J-Link支持的芯片列表里面有我们的目标型号即可。

通过翻找J-Link安装目录(我的是C:Program FilesSEGGERJLinkDocManuals),我发现了它的用户手册:

9e3e08d2-041e-11ed-ba43-dac502259ad0.png

通过阅读,我在UM08001_JLink.pdf内容中了解到了如何添加设备给J-Link。

1.1 JLinkDevices.xml

在J-Link的4.5.26章节,它提醒到这个文件可以存放一些尚未公开的新设备。所以我们只需要将我们需要添加的新设备进去,就可以使得J-Link支持我们的芯片了。

9e4dbbe2-041e-11ed-ba43-dac502259ad0.png   9e6d1b54-041e-11ed-ba43-dac502259ad0.png

我们也可以打开安装目录下的JLinkDevices.xml,看看它的庐山真面目。

通过手册我们可以知道在给J-Link添加新设备时,我们需要关注两个标签。它们里面的一些内容是必须我们去提供的,

1.2 ChipInfo

里面,我们分别需要提供芯片的厂商(Vendor)、芯片名称(Name)、芯片内核(Core)、芯片RAM基地址(WorkRAMAddr)和芯片RAM大小(WorkRAMSize)。了解完这些,我们可以看到该手册中还给我们举了个例子说明:

9e96a3e8-041e-11ed-ba43-dac502259ad0.png   9ebb33de-041e-11ed-ba43-dac502259ad0.png

1.3 FlashBankInfo

同样的,我们可以了解到里面我们需要填写的内容。

9f06fe4a-041e-11ed-ba43-dac502259ad0.png
9f251402-041e-11ed-ba43-dac502259ad0.png

值得注意的是,在Loader内容说明中,J-Link提及到了下载算法是相对个文件"JLinkDevices.xml"的路径,这意味着我们的下载算法需要拷贝到J-Link的安装目录下面。

2 下载算法

在学习完基础知识后,我们得知添加芯片的一些内容是非常容易就可以获取得到的,比如说芯片厂商、名称、内核、RAM信息、Flash信息这些。唯一的难点就是下载算法我们要怎么搞?

我们回忆一下,Keil是可以正常给APM32系列的MCU进行正常下载的,那Geehy是提供了下载算法的。那它在哪里呢?我们能不能使用它?

好了这里不卖关子了,Keil使用的下载算法是基于CMSIS标准的FLM文件,这个算法J-Link也是支持的,大家可能没有留意到在 FlashBankInfo标签内容在下载算法一栏有着说明。

9f8b5f32-041e-11ed-ba43-dac502259ad0.png

这个下载算法就在我们Keil的Pack安装目录下面。可以点击Keil的Pack管理窗口看到。

9fb45716-041e-11ed-ba43-dac502259ad0.png

在Pack安装目录下面我们去寻找Geehy提供的算法。

9fc8f8a6-041e-11ed-ba43-dac502259ad0.png

我们就得到了APM32F4编程Flash的APM32F4xx_512.FLM和APM32F4xx_1024.FLM。

3 编辑JLinkDevices.xml

获取了下载下载算法我们就可以编辑JLinkDevices.xml文件以支持新设备了。下面举个例子:

注意JLinkDevices.xml文件需要管理员权限进行编辑。

4 添加全部APM32型号

我这边也抽空完成了所有有下载算法的的APM32型号的文件制作,

9fe3eae4-041e-11ed-ba43-dac502259ad0.png

完成支持分两步走

1.将给大家的“Devices”复制至J-Link的安装目录,注意是安装目录!不是J-Link下的“Devices”目录。

2.将JLinkDevices_Geehy.xml里面的内容复制至J-Link安装目录下的JLinkDevices.xml中,注意复制粘贴区域在中间。如:

a04fa39c-041e-11ed-ba43-dac502259ad0.png

接下来我们验证一下添加芯片的效果,在所有应用中打开“J-Link GDB Server”,

a0735062-041e-11ed-ba43-dac502259ad0.png

在弹出的设置窗口选择设备。

a0998958-041e-11ed-ba43-dac502259ad0.png

在设备窗口的厂商一栏选择Geehy。

a0a8df48-041e-11ed-ba43-dac502259ad0.png

我们就可以看到我们刚刚添加的芯片了。

a0bba1c8-041e-11ed-ba43-dac502259ad0.png

此时我们如果打开新的工程,就不会再提醒我们未知设备了。

至此,J-Link添加Geehy芯片到此结束,由于本人为初学者,难免有些许问题,请各位指出。如果该帖子对您有一点点帮助请给我点个赞~

审核编辑:彭静

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    463

    文章

    54706

    浏览量

    471472
  • mcu
    mcu
    +关注

    关注

    147

    文章

    19265

    浏览量

    405329
  • J-Link
    +关注

    关注

    0

    文章

    91

    浏览量

    24140

原文标题:APM32芯得 EP.05 | J-Link 添加Geehy APM32系列MCU

文章出处:【微信号:geehysemi,微信公众号:Geehy极海半导体】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    NXP KW45B41Z-EVK 板将 J-Link/CMSIS-DAP 固件刷新到板上的问题求解

    你好 我正在尝试使用 NXP KW45B41Z-EVK 板。但是,继续使用他们的用户指南页面(KW45B41Z评估套件入门 |恩智浦半导体),我遇到将 J-Link/CMSIS-DAP 固件刷新
    发表于 05-26 06:01

    iMXRT1062和IS25WP QSPI闪存芯片为什么不能通过 J-Link 加载我的组合 HEX 文件,然后开始运行?

    。 所有BOOT_CONFIG引脚都被拉低。 我使用 Zephyr 构建了运行没有问题的代码,并且我使用 MCUBoot 创建了具有签名保护的引导加载程序,用于加载映像。 如果我使用 J-Link 将组合
    发表于 05-18 07:01

    无法通过 J-Link SWD 连接到定制板上的S32K144, “在 Coresight setu 中找不到内核,怎么解决?

    我正在使用使用 S32K144 MCU 的定制板并尝试通过SEGGER J-Link使用 SWD。 我在连接 JLink.exe(或通过 S32 Design Studio)时遇到
    发表于 04-28 06:21

    用于在FRDM-i.MX93上调试Cortex-M33的推荐J-Link 型号?

    大家好 我正在使用 FRDM-I.MX93 开发板,目标是 Cortex-M33(实时内核)。我已经通过AN14120和一些社区讨论,我知道通过 SWD(P14 标头)上的 J-Link 支持调试
    发表于 04-22 06:56

    昂瑞微OM662X系列MCU正式获得SEGGER J-Link/Flasher支持

    北京昂瑞微电子技术股份有限公司(以下简称为“昂瑞微”)宣布,其OM662X系列实时控制MCU已正式完成与微控制器调试下载与量产编程工具厂商SEGGER旗下J-Link调试器及Flasher 编程器的生态适配。相关型号现已上线至SEGGER官网支持设备列表。
    的头像 发表于 04-16 11:38 2452次阅读

    【教程】CW32之使用J-Link烧录.hex文件

    在平时调试时,我们也可以使用DAP-Link、ST-Link等进行烧录和Debug,使用方法和STM32类似。然而当我们手头只有hex文件(或bin文件)时,可以尝试使用J-Link进行烧录。
    的头像 发表于 04-01 16:56 3463次阅读
    【教程】CW32之使用<b class='flag-5'>J-Link</b>烧录.hex文件

    使用 J-LINK 调试时发生错误,是什么原因导致的?如何解决?

    使用J-Link调试时发生错误,如图所示。我应该如何解决这个错误?
    发表于 02-26 10:08

    多多盒子助手 J-link RTT实时助手 串口助手 波形图显示非常好用的工具

    曲线增益调节 - 各通道独立增益和偏置调整 多协议多设备支持 串口调试 - 完整串口参数配置(波特率、数据位、校验位等) J-Link集成 - 内置SEGGER J-Link,支持RTT实时
    发表于 12-12 09:26

    CWDAPLINK与J-link下载有什么区别?哪一款比较好?

    CWDAPLINK与J-link下载有什么区别?哪一款比较好?
    发表于 12-02 06:06

    使用J-Link Attach NXP S32K3导致对应RAM区域被初始化成0xDEADBEEF

    在IAR Embedded Workbench for Arm中使用J-Link Attach NXP S32K3的时候,会提示对应RAM区域被初始化成0xDEADBEEF,导致对应RAM区域的数据被“篡改”。
    的头像 发表于 11-03 15:26 5694次阅读
    使用<b class='flag-5'>J-Link</b> Attach NXP S32K3导致对应RAM区域被初始化成0xDEADBEEF

    生态芯进阶 | SEGGER J-Link/Flasher深度适配极海G32R50x系列实时控制MCU!

      近日,SEGGER 宣布通过J-Link Prime芯片伙伴计划, 其“开盒即用”的 J-Link调试器和Flasher编程器,已完成对极海G32R50x系列实时控制MCU的生态适配。 深度适配
    的头像 发表于 09-22 14:23 1533次阅读
    生态芯进阶 | SEGGER <b class='flag-5'>J-Link</b>/Flasher深度适配极海G32R50x系列实时控制MCU!

    【RA4E2开发板测评】MDK程序开发+J-LINK下载-&gt;RA4M2配置方法

    习惯STM32开发转RA4M2开发的童鞋可能更习惯MDK和采用J-LINK实现开发和调试。 1.使用配置工具配置端口(类似于STM32CUBEMX) 型号选型和开发环境选择设置 2配置GPIO口
    发表于 08-31 13:55

    是否可以使用 SEGGER J-Link(JTAG/SWD)重写 PMG1-S3 的量产固件?

    是否可以使用 SEGGER J-Link(JTAG/SWD)重写 PMG1-S3 的量产固件?
    发表于 07-31 06:31

    使用Segger J-Link Pro对XMC7200的CM0+内核进行编程遇到的问题求解

    当我使用 GNU C 编译器编译起始(.text)地址为 0x10000000 的 CM0+ 程序时,我无法在 Segger J-Link Pro 中下载该程序。我在输出窗口中收到一个空白的错误弹出
    发表于 07-21 06:05

    SEGGER J-Link调试器支持Allegro微控制器

    SEGGER领先的J-Link调试器现在可用于Allegro MicroSystems MCU的程序下载和在线调试。有了J-Link的支持,结合Ozone多平台调试器,以及Flasher系列的专业在线编程器,技术人员可以实现A892xx的应用开发和生产编程。
    的头像 发表于 06-10 09:29 1658次阅读