Renesas EK-RA8M1 (Cortex-M85) 开发板 - 不再通过 J-Link 连接,可以恢复吗?

问题描述 投票:0回答:1

我最近买了一块EK-RA8M1板。我能够为其生成一个项目、编译、刷新、调试、通过 SEGGER RTT 接收数据等。一切都运行得非常完美。

然而,这一切都是通过 gcc 编译器完成的。我的一个要求是让它与 clang 一起工作,所以我正在尝试它。当我设法使用 clang 生成 .ELF 文件后,我启动了一个调试会话,刷新该二进制文件,并在地址 0xdeadbeee 中的断点处停止(显然生成的二进制文件有问题,但是好的,这是在开发过程中发生的) .

问题是,在我停止此调试会话后,我从此无法再连接到开发板。 J-Link 给我这样的消息:

$ JLinkExe -if SWD -device R7FA8M1AH -speed auto
SEGGER J-Link Commander V7.96h (Compiled May 15 2024 15:50:52)
DLL version V7.96h, compiled May 15 2024 15:50:24

Connecting to J-Link via USB...O.K.
Firmware: J-Link OB-RA4M2 compiled Apr 23 2024 10:48:30
Hardware version: V1.00
J-Link uptime (since boot): 0d 00h 00m 07s
S/N: 1083797446
USB speed mode: Full speed (12 MBit/s)
VTref=3.300V


Type "connect" to establish a target connection, '?' for help
J-Link>connect
Device "R7FA8M1AH" selected.


Connecting to target via SWD
ConfigTargetSettings() start
Configuring FlashDLNoRMWThreshold=0x200 in order to make sure that option bytes programming is done via read-modify-write
ConfigTargetSettings() end - Took 22us
InitTarget() start
Identifying target device...
SWD selected. Executing JTAG -> SWD switching sequence...
Initializing DAP...
Error: Failed to initialize DAP.
Attach to CPU failed. Trying connect under reset.
Identifying target device...
SWD selected. Executing JTAG -> SWD switching sequence...
Initializing DAP...
DAP initialized successfully.
Determining TrustZone configuration...
Error: Failed to configure AP.
  Secure Debug: Enabled (SSD)
Determining currently configured transfer type by reading the AHB-AP CSW register.
Error: Failed to configure AP.
Transfer type does not match DLM state. Changing transfer type accordingly.
InitTarget() end - Took 254ms
Found SW-DP with ID 0x6BA02477
Failed to power up DAP
ConfigTargetSettings() start
Configuring FlashDLNoRMWThreshold=0x200 in order to make sure that option bytes programming is done via read-modify-write
ConfigTargetSettings() end - Took 19us
InitTarget() start
Identifying target device...
SWD selected. Executing JTAG -> SWD switching sequence...
Initializing DAP...
Error: Failed to initialize DAP.
Attach to CPU failed. Trying connect under reset.
Identifying target device...
SWD selected. Executing JTAG -> SWD switching sequence...
Initializing DAP...
DAP initialized successfully.
Determining TrustZone configuration...
Error: Failed to configure AP.
  Secure Debug: Enabled (SSD)
Determining currently configured transfer type by reading the AHB-AP CSW register.
Error: Failed to configure AP.
Transfer type does not match DLM state. Changing transfer type accordingly.
InitTarget() end - Took 254ms
Found SW-DP with ID 0x6BA02477
Failed to power up DAP
Error occurred: Could not connect to the target device.
For troubleshooting steps visit: https://wiki.segger.com/J-Link_Troubleshooting

我已经为此工作了几个小时,尝试了很多不同的事情,但没有效果:

  • 拔下并重新插入板。
  • 尝试在 J-Link Commander 中使用 JTAG 而不是 SWD。
  • 在 J-Link Commander 内,按下重置按钮时尝试连接。
  • 我将原来打开的J16(启动模式跳线)(出厂时的默认位置)设置为关闭,然后重新插入J-Link USB线。我的理解是,J16 应该将其置于 USB/SCI 引导加载程序模式,在我的 STM32 板中,该模式始终足以通过 SWD 连接并擦除任何行为不当的代码,从而恢复板。然而,我仍然从 J-Link 收到与上面相同的消息。
  • 将 J16 设置为关闭(因此在 USB/SCI 引导加载程序模式下),我尝试连接到 J-Link 连接器对面的每个 USB 连接器(请注意,我只使用一根电缆,因此无论是连接 J-Link,或 USB 全速,或 USB 高速,切勿同时连接两个或三个)。我在我的计算机中没有看到任何可用的新设备。

因此,就目前而言,这块板已成为镇纸。虽然我有使用 STM32 设备的经验,但我对瑞萨电子世界完全陌生,所以对于那些有瑞萨电子经验的人来说,我可能遗漏了一些明显的东西(或者可能这些具有 TrustZone 安全功能的新 ARMv8.1-M MCU 需要某种特殊处理),但我现在束手无策。对于如何重振董事会,我根本没有任何其他想法。

有什么建议给我吗?

编辑:向后滚动我的终端,我在将板变砖之前找到了 J-Link 的日志。这就是它的样子,与上面的木板砖砌后的日志进行比较:

SEGGER J-Link Commander V7.96h (Compiled May 15 2024 15:50:52)
DLL version V7.96h, compiled May 15 2024 15:50:24

Connecting to J-Link via USB...O.K.
Firmware: J-Link OB-RA4M2 compiled Apr 23 2024 10:48:30
Hardware version: V1.00
J-Link uptime (since boot): 8d 16h 49m 51s
S/N: 1083797446
USB speed mode: Full speed (12 MBit/s)
VTref=3.300V


Type "connect" to establish a target connection, '?' for help
Target connection not established yet but required for command.
Device "R7FA8M1AH" selected.


Connecting to target via SWD
ConfigTargetSettings() start
Configuring FlashDLNoRMWThreshold=0x200 in order to make sure that option bytes programming is done via read-modify-write
ConfigTargetSettings() end - Took 20us
InitTarget() start
Identifying target device...
SWD selected. Executing JTAG -> SWD switching sequence...
Initializing DAP...
DAP initialized successfully.
Determining TrustZone configuration...
  Secure Debug: Enabled (SSD)
Determining currently configured transfer type by reading the AHB-AP CSW register.
  --> Correct transfer type configured. Done.
InitTarget() end - Took 12.7ms
Found SW-DP with ID 0x6BA02477
DPIDR: 0x6BA02477
CoreSight SoC-400 or earlier
Scanning AP map to find all available APs
AP[2]: Stopped AP scan as end of AP map has been reached
AP[0]: AHB-AP (IDR: 0x84770001)
AP[1]: APB-AP (IDR: 0x54770002)
Iterating through AP map to find AHB-AP to use
AP[0]: Core found
AP[0]: AHB-AP ROM base: 0xE00FE000
CPUID register: 0x410FD232. Implementer code: 0x41 (ARM)
Feature set: Mainline
Cache: L1 I/D-cache present
Found Cortex-M85 r0p2, Little endian.
FPUnit: 8 code (BP) slots and 0 literal slots
Security extension: implemented
Secure debug: enabled
CoreSight components:
ROMTbl[0] @ E00FE000
[0][0]: E00FF000 CID B105100D PID 000BB4D4 ROM Table
ROMTbl[1] @ E00FF000
[1][0]: E000E000 CID B105900D PID 000BBD23 DEVARCH 47702A04 DEVTYPE 00 ???
[1][1]: E0001000 CID B105900D PID 000BBD23 DEVARCH 47711A02 DEVTYPE 00 DWT
[1][2]: E0002000 CID B105900D PID 000BBD23 DEVARCH 47701A03 DEVTYPE 00 FPB
[1][3]: E0000000 CID B105900D PID 000BBD23 DEVARCH 47701A01 DEVTYPE 43 ITM
[1][5]: E0041000 CID B105900D PID 002BBD23 DEVARCH 47754A13 DEVTYPE 13 ETM
[1][6]: E0003000 CID B105900D PID 000BBD23 DEVARCH 47700A06 DEVTYPE 16 ???
[1][7]: E0042000 CID B105900D PID 000BBD23 DEVARCH 47701A14 DEVTYPE 14 CSS600-CTI
[0][1]: E0040000 CID B105900D PID 000BBD23 DEVARCH 00000000 DEVTYPE 11 TPIU
I-Cache L1: 16 KB, 256 Sets, 32 Bytes/Line, 2-Way
D-Cache L1: 16 KB, 128 Sets, 32 Bytes/Line, 4-Way
Memory zones:
  Zone: "Default" Description: Default access mode
Cortex-M85 identified.
'loadfile': Performing implicit reset & halt of MCU.
Reset: ARMv8M core with Security Extension enabled detected. Switch to secure domain.
Reset: Halt core after reset via DEMCR.VC_CORERESET.
Reset: Reset device via AIRCR.SYSRESETREQ.
Downloading file [bench.elf]...
CPU is running at low speed (8354 kHz).
J-Link: Flash download: Bank 3 @ 0x02000000: Skipped. Contents already match
O.K.
embedded microcontroller bootloader segger-jlink swd
1个回答
0
投票

我希望您现在已经解决了这个问题。如果没有,您可以尝试使用瑞萨闪存编程器应用程序初始化设备。您可以在目标设备 -> 初始化设备下找到此选项。

© www.soinside.com 2019 - 2024. All rights reserved.