使用JTAG与我的自定义板的连接不稳定。

⚠️
大家好. .感谢来到论坛。令人兴奋的消息!我们现在正在转移到新的论坛平台的过程中,它将提供更好的功能,并包含在主对话网站。所有的帖子和账号已经迁移。我们现在只接受新论坛的流量-请发布任何新的帖子在//www.xmece.com/support.我们会在接下来的几天修复bug /优化搜索和标记。
12个职位/ 0个新职位
最后发表
daniel59
离线
最后看到:6个月前1年
加入:2016-01-08 04:34
使用JTAG与我的自定义板的连接不稳定。

你好,

我的连接是不稳定的使用JTAG与我的定制板。

首先我可以检测到我的板,但是当我进入工具箱时,下载Booter固件,它出错了。

日志显示如下:

[INFO General @19-01-11 16:33:26]找到ID为0x0BB11477的SWD-DP
[信息概述@ 19-01-11 16:33:26]找到了Cortex-M0 R0P0,Little Endian。
[信息概述@ 19-01-11 16:33:26] FpUnit:4代码(BP)插槽和0个字幕插槽
[信息概述@ 19-01-11 16:33:26] Coresight组件:
[信息概述@ 19-01-11 16:33:26] romtbl 0 @ E00FF000
[INFO General @19-01-11 16:33:26] ROMTbl 0 [0]: FFF0F000, CID: B105E00D, PID: 000BB008 SCS
[信息概述@ 19-01-11 16:33:26] Romtbl 0 [1]:FFF02000,CID:B105E00D,PID:000BB00A DWT
[INFO General @19-01-11 16:33:26] ROMTbl 0 [2]: FFF03000, CID: B105E00D, PID: 000BB00B FPB
[信息普通@ 19-01-11 16:33:26]选择了BTLE设备。
[信息概述@ 19-01-11 16:33:34]找到了带ID 0x0BB11477的SWD-DP
[errow aligent @ 19-01-11 16:33:34]读取DP-Ctrl-Stat寄存器时DAP错误。
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[error aligent @ 19-01-11 16:33:35]无法读取内存地址0x50003200功能jlinkarm_readmemhw
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[ERROR General @19-01-11 16:33:35]无法读取内存地址0x50003201与函数JLINKARM_ReadMemHW
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[errow aligent @ 19-01-11 16:33:35]无法使用jlinkarm_readmemhw读取内存地址0x50003202
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[error aligent @ 19-01-11 16:33:35]无法读取内存地址0x50003200功能jlinkarm_readmemhw
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[error aligonal @ 19-01-11 16:33:35]无法阅读内存地址0x50003204功能jlinkarm_readmemhw
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[error alignal @ 19-01-11 16:33:35]无法阅读内存地址0x50003208功能jlinkarm_readmemhw
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[errow aligent @ 19-01-11 16:33:35]无法读取内存地址0x5000320c与功能jlinkarm_readmemhw
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[ERROR General @19-01-11 16:33:35] failed read memory address 0x50040200 with function JLINKARM_ReadMem .
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[error aligent @ 19-01-11 16:33:35]无法读取内存地址0x50040204与函数jlinkarm_readmem
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[ERROR General @19-01-11 16:33:35] failed read memory address 0x50040208 with function JLINKARM_ReadMem .
[INFO General @19-01-11 16:33:35]无法测量总的IR len。TDO是恒定的高。
[errow aligent @ 19-01-11 16:33:35]无法读取内存地址0x5004020c与函数jlinkarm_readmem
[error alional @ 19-01-11 16:33:35]在打开jlink连接时找不到已知的芯片。终止Proccess ...
[错误Booter @ 19-01-11 16:33:35]将固件文件下载到电路板上。

有什么问题?我的电缆或我的董事会?

设备:
PM_Dialog
离线
最后看到:2天3小时前
工作人员
加入:2018-02-08 11:03
嗨daniel59,

嗨daniel59,

这是来自JLINK软件而不是来自智能片段的指示(当通过JTAG连接时,智能代码段使用JLink以访问设备)。您提到您有一个定制板,所以您是否在自定义PCB上有JTAG,或者您正在使用Pro或基本DK以便编程您的电路板?我强烈建议您检查您是否已正确配置SmartSnippet Toolbox的“电路板设置”选项卡中的SPI闪存引脚。可能在自定义PCB上的处理器和试图与设备通信的JLINK FW之间没有连接。这可能是从与PCB的问题联系起来,这使得580无法操作的PCB。我的建议是检查引导加载程序是否正在执行,以便验证580是否正常运行。您可以探测P04和P05引脚,并且应切换引导程序的一部分的引脚,因此在连接到终端时,您应该看到设备打印垃圾。此外,我建议您使用jlink本身连接电路板,而是使用智能片段,而且我也会尝试通过keil下载代码。

谢谢,PM_Dialog

daniel59
离线
最后看到:6个月前1年
加入:2016-01-08 04:34
嗨pm_dialog,

嗨pm_dialog,

我想我正在使用一个自定义的JTAG设备,连接到我的自定义板。

我可以使用Keil进入调试会话,但当我使用ble_app_barebone项目运行代码时,它会进入代码:
if ((GetWord16(SYS_STAT_REG) & DBG_IS_UP) == DBG_IS_UP
__asm(“BKPT # 0 \ n”);

我测试了我的5块板,只有1块板可以通过代码。

我的电路板质量不好吗?

PM_Dialog
离线
最后看到:2天3小时前
工作人员
加入:2018-02-08 11:03
嗨daniel59,

嗨daniel59,

你能澄清你用自定义JTAG设备的意思吗?您使用的是哪个版本的J-Link?这意味着你得到了一个nmi。你能试着调试你的代码并尝试找到nmi的原因吗?您的申请代码卡在哪里?如果没有意识到如何找到NMI的原因,我会建议你看看教程8:调试method_v1.1来自我们的支持门户。此外,很可能是错误的,因为您的PCB质量差。

谢谢,PM_Dialog

daniel59
离线
最后看到:6个月前1年
加入:2016-01-08 04:34
谢谢,PM_Dialog

嗨,pm_dialog.

呃......我的意思是自定义J-Link设备。这就像J-Link Edu Mini,但只有SWDIO,SWCLK,VCC和GND。

我正在使用jlink v5.12f,由smartsnippets studio v2.0.6推荐用于DA14580。

我看一个教程8,但我无法找到错误使用两种方法的位置。

我在考虑我的电源。常用的J-link是直接连接swdio引脚25,swclk引脚26,vcc引脚15和gnd引脚16,使用QFN40 DA14580。

但是对于我,因为我想充电电池和JTAG,我连接swdio销25日swclk销26,接地针16但vcc电池管理芯片ltc4054锂电池充电,然后将电池连接到3.3 v LDO, LDO 3.3 v输出连接到15针。

这会让事情错了吗?

我尝试了很多次,有时工具箱可以找到芯片,但显示CPU无法停止,有时工具箱不能找到芯片,有时它直接显示写文件失败D:桌面\empty_peripheral_template_580。十六进制地址20000000。

PM_Dialog
离线
最后看到:2天3小时前
工作人员
加入:2018-02-08 11:03
嗨daniel59,

嗨daniel59,

请注意,我们在开发板中使用H-Link Lite,我不完全确定我们是否曾经使用过J-Link EDU Mini。你能不能试着用Keil把固件下载到SysRAM中,以确保你的定制板正常工作?只有一个董事会有这个问题,还是所有董事会都有?

谢谢,PM_Dialog

daniel59
离线
最后看到:6个月前1年
加入:2016-01-08 04:34
嗨,pm_dialog.

嗨,pm_dialog.

使用keil将固件下载到Sysram进入调试会话吗?

只有我的一些董事会有这个问题......

有时日志显示无法启动CPU核心。(错误代码:1)。

和一些板后,我尝试和尝试它可以连接的SPI Flash程序员,但然后下一次失败。如附件日志所示。

我用的电缆长度将用J-Link连接我的电路板是否会影响连接?

丹尼尔

附件:
PM_Dialog
离线
最后看到:2天3小时前
工作人员
加入:2018-02-08 11:03
嗨daniel59,

嗨daniel59,

您能否检查您是否正确配置了SmartSnippet的“Booter&Boars Setup”选项卡的SPI Flash PIN?“SPI Flash引脚配置”应根据您的电路板连接。您提到您能够连接到SPI闪光灯,因此在尝试读取或写入闪存时的过程失败时?电缆的长度可能是一个问题,因此尝试使用更短的电缆。关于Sysram,是的,我的意思是使用Keil下载固件。这是一点奇怪的行为,所以这可能是你的PCB上的硬件问题。你也提到只有一些板有这个问题,所以让我问你一些澄清。除了那些董事会,如果您有任何完全功能的板(连接,读取,写SPI闪光,可引导和启动广告,请告诉我,您可以让我知道吗?

谢谢,PM_Dialog

daniel59
离线
最后看到:6个月前1年
加入:2016-01-08 04:34
嗨,pm_dialog.

嗨,pm_dialog.

使用keil,当我运行代码时,使用ble_app_barebone项目,它转到代码:
if ((GetWord16(SYS_STAT_REG) & DBG_IS_UP) == DBG_IS_UP
__asm(“BKPT # 0 \ n”);

我的意思是SPI Flash错误是,例如,这次我按下连接它显示成功,下次我按连接它显示失败。

是的,我有一个完全运行的板,它可以正确连接。所以我认为J-Link设备运行良好。

丹尼尔

PM_Dialog
离线
最后看到:2天3小时前
工作人员
加入:2018-02-08 11:03
嗨daniel59,

嗨daniel59,

这意味着你的应用程序代码在某个地方卡住了NMI_HandlerC或HardFault_HandlerC。你能解释一下哪里卡住了吗?我已经向您推荐了一篇教程,教你如何找到NMI / HARDFAULT的原因。因为你有功能板,你运行一些代码,我认为你的一些板有硬件问题。

谢谢,PM_Dialog

daniel59
离线
最后看到:6个月前1年
加入:2016-01-08 04:34
嗨pm_dialog,

嗨pm_dialog,

是的,我尝试了Tutorial 8,2种方法都不工作。

Show callee just jump to __asm("BKPT #0\n");

MSP方法显示地址0xFFFF0000;也就是MOVS r0,r0

也许是因为我的自定义J-Link设备?

有什么方法可以检测出坏的芯片或板吗?

PM_Dialog
离线
最后看到:2天3小时前
工作人员
加入:2018-02-08 11:03
嗨daniel59,

嗨daniel59,

您是否检查了引导加载程序是否正在执行,以便验证580是否正常运行?您可以探测P04和P05引脚,并且应切换引导程序的一部分的引脚,因此在连接到终端时,您应该看到设备打印垃圾。

谢谢,PM_Dialog