I have run into a issue where I cannot connect to an LPC55S69 which is "factory fresh". In this state, the MCU will enter its ROM bootloader as there is not valid application in Flash. I am working with NXP on determining what the initialial state of the Flash memory and what configuration bits are.
I can get a J-Link to program, erase, etc if I connect using a CMSIS-DAP probe (I am using an LPC-LINK II with MCU XPresso). Once I use MCUXPresso and a CMSIS DAP adapter to program the device (or even just erase) , I can succussfully connect witha jlink (via both Ozone and GDB).
Here is some output when there is a failure:
Here is the Console Output when i try to connect:
VTref=3.299V
Target connection not established yet but required for command.
Device "LPC55S69" selected.
Connecting to target via SWD
ConfigTargetSettings() start
Disabling flash programming optimizations: Compare, SkipBlankDataOnProg
ConfigTargetSettings() end
InitTarget() start
InitTarget() end
Found SW-DP with ID 0x6BA02477
DPIDR: 0x6BA02477
Scanning AP map to find all available APs
AP[3]: Stopped AP scan as end of AP map has been reached
AP[0]: AHB-AP (IDR: 0x84770001)
AP[1]: AHB-AP (IDR: 0x84770001)
AP[2]: JTAG-AP (IDR: 0x002A0000)
Iterating through AP map to find AHB-AP to use
AP[0]: Core found
AP[0]: AHB-AP ROM base: 0xE00FE000
CPUID register: 0x410FD213. Implementer code: 0x41 (ARM)
Found Cortex-M33 r0p3, Little endian.
FPUnit: 8 code (BP) slots and 0 literal slots
Security extension: implemented
Secure debug: enabled
CoreSight components:
ROMTbl[0] @ E00FE000
ROMTbl[0][0]: E00FF000, CID: B105100D, PID: 000BB4C9 ROM Table
ROMTbl[1] @ E00FF000
ROMTbl[1][0]: E000E000, CID: B105900D, PID: 000BBD21 Cortex-M33
ROMTbl[1][1]: E0001000, CID: B105900D, PID: 000BBD21 DWT
ROMTbl[1][2]: E0002000, CID: B105900D, PID: 000BBD21 FPB
ROMTbl[1][3]: E0000000, CID: B105900D, PID: 000BBD21 ITM
ROMTbl[0][1]: E0040000, CID: B105900D, PID: 000BBD21 Cortex-M33
SetupTarget() start
Disabling flash programming optimizations: Compare, SkipBlankDataOnProg
SetupTarget() end
Cortex-M33 identified.
Reset delay: 0 ms
Reset type NORMAL: Resets core & peripherals via SYSRESETREQ & VECTRESET bit.
ResetTarget() start
Reset strategy selected in debugger ignored. Performing device specific reset.
Reset handler addr: 0x00000000
ResetTarget() end
AfterResetTarget() start
AfterResetTarget() end
**************************
WARNING: CPU could not be halted
**************************
****** Error: Failed to halt CPU.
**************************
WARNING: CPU could not be halted
**************************
Downloading file [C:\ELI\lpc55s69_mini\SRC\MiniMonkeyTimeSeries\Debug\TimeSeries.hex]...
**************************
WARNING: CPU could not be halted
**************************
****** Error: Failed to read back RAMCode for verification.
Failed to prepare for programming.
Failed to download RAMCode!
Can not read register 16 (XPSR) while CPU is running
Can not read register 20 (CFBP) while CPU is running
Can not read register 0 (R0) while CPU is running
Can not read register 1 (R1) while CPU is running
Can not read register 2 (R2) while CPU is running
Can not read register 3 (R3) while CPU is running
Can not read register 4 (R4) while CPU is running
Can not read register 5 (R5) while CPU is running
Can not read register 6 (R6) while CPU is running
Can not read register 7 (R7) while CPU is running
Can not read register 8 (R8) while CPU is running
Can not read register 9 (R9) while CPU is running
Can not read register 10 (R10) while CPU is running
Can not read register 11 (R11) while CPU is running
Can not read register 12 (R12) while CPU is running
Can not read register 14 (R14) while CPU is running
Can not read register 15 (R15) while CPU is running
Can not read register 17 (MSP) while CPU is runn
Unspecified error -1
Script processing completed.
Unable to perform operation!
Command failed with exit code 1
I can get a J-Link to program, erase, etc if I connect using a CMSIS-DAP probe (I am using an LPC-LINK II with MCU XPresso). Once I use MCUXPresso and a CMSIS DAP adapter to program the device (or even just erase) , I can succussfully connect witha jlink (via both Ozone and GDB).
Here is some output when there is a failure:
Here is the Console Output when i try to connect:
VTref=3.299V
Target connection not established yet but required for command.
Device "LPC55S69" selected.
Connecting to target via SWD
ConfigTargetSettings() start
Disabling flash programming optimizations: Compare, SkipBlankDataOnProg
ConfigTargetSettings() end
InitTarget() start
InitTarget() end
Found SW-DP with ID 0x6BA02477
DPIDR: 0x6BA02477
Scanning AP map to find all available APs
AP[3]: Stopped AP scan as end of AP map has been reached
AP[0]: AHB-AP (IDR: 0x84770001)
AP[1]: AHB-AP (IDR: 0x84770001)
AP[2]: JTAG-AP (IDR: 0x002A0000)
Iterating through AP map to find AHB-AP to use
AP[0]: Core found
AP[0]: AHB-AP ROM base: 0xE00FE000
CPUID register: 0x410FD213. Implementer code: 0x41 (ARM)
Found Cortex-M33 r0p3, Little endian.
FPUnit: 8 code (BP) slots and 0 literal slots
Security extension: implemented
Secure debug: enabled
CoreSight components:
ROMTbl[0] @ E00FE000
ROMTbl[0][0]: E00FF000, CID: B105100D, PID: 000BB4C9 ROM Table
ROMTbl[1] @ E00FF000
ROMTbl[1][0]: E000E000, CID: B105900D, PID: 000BBD21 Cortex-M33
ROMTbl[1][1]: E0001000, CID: B105900D, PID: 000BBD21 DWT
ROMTbl[1][2]: E0002000, CID: B105900D, PID: 000BBD21 FPB
ROMTbl[1][3]: E0000000, CID: B105900D, PID: 000BBD21 ITM
ROMTbl[0][1]: E0040000, CID: B105900D, PID: 000BBD21 Cortex-M33
SetupTarget() start
Disabling flash programming optimizations: Compare, SkipBlankDataOnProg
SetupTarget() end
Cortex-M33 identified.
Reset delay: 0 ms
Reset type NORMAL: Resets core & peripherals via SYSRESETREQ & VECTRESET bit.
ResetTarget() start
Reset strategy selected in debugger ignored. Performing device specific reset.
Reset handler addr: 0x00000000
ResetTarget() end
AfterResetTarget() start
AfterResetTarget() end
**************************
WARNING: CPU could not be halted
**************************
****** Error: Failed to halt CPU.
**************************
WARNING: CPU could not be halted
**************************
Downloading file [C:\ELI\lpc55s69_mini\SRC\MiniMonkeyTimeSeries\Debug\TimeSeries.hex]...
**************************
WARNING: CPU could not be halted
**************************
****** Error: Failed to read back RAMCode for verification.
Failed to prepare for programming.
Failed to download RAMCode!
Can not read register 16 (XPSR) while CPU is running
Can not read register 20 (CFBP) while CPU is running
Can not read register 0 (R0) while CPU is running
Can not read register 1 (R1) while CPU is running
Can not read register 2 (R2) while CPU is running
Can not read register 3 (R3) while CPU is running
Can not read register 4 (R4) while CPU is running
Can not read register 5 (R5) while CPU is running
Can not read register 6 (R6) while CPU is running
Can not read register 7 (R7) while CPU is running
Can not read register 8 (R8) while CPU is running
Can not read register 9 (R9) while CPU is running
Can not read register 10 (R10) while CPU is running
Can not read register 11 (R11) while CPU is running
Can not read register 12 (R12) while CPU is running
Can not read register 14 (R14) while CPU is running
Can not read register 15 (R15) while CPU is running
Can not read register 17 (MSP) while CPU is runn
Unspecified error -1
Script processing completed.
Unable to perform operation!
Command failed with exit code 1