This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

Unable to Flash C28x on F28M35H52C Device

Part Number: F28M35H52C
Other Parts Discussed in Thread: UNIFLASH

I've been working with an F28M35 for a few weeks in one project, and suddenly, I'm unable to flash the C28. Here are some details about my issue:

  • The control board that I have been using has been tested with a lot of other different projects with no problems in this regard, as well as the JTAG.
  • I can program de M3, and load the symbols of the C28, but cannot program the C28.
  • I have been able to debug the project again more times using a new board, but after some sessions the error comes back and I have to change the DSP again (4 DSP corrupted at the moment). Some times between a session that has worked properly, and the one when the error appears, there has been no changes in the code.
  • The error that I get is the following one:

Cortex_M3_0: GEL Output: Memory Map Initialization Complete
Cortex_M3_0: GEL Output: Watchdog Timers Enabled
Cortex_M3_0: GEL Output: UARTs Enabled
C28xx_0: GEL Output:
Memory Map Initialization Complete
C28xx_0: GEL Output:
RAM Initialization Complete
C28xx_0: Trouble Setting Breakpoint with the Action "Remain Halted" at 0x80e3: (Error -1066 @ 0x80E3) Unable to set/clear requested breakpoint. Verify that the breakpoint address is in valid memory. (Emulation package 6.0.407.3)
C28xx_0: Breakpoint Manager: Retrying with a AET breakpoint
C28xx_0: Can't Run Target CPU: (Error -1156 @ 0x8050) Device may be operating in low-power mode. Do you want to bring it out of this mode? Choose 'Yes' to force the device to wake up and retry the operation. Choose 'No' to retry the operation without waking the device. (Emulation package 6.0.407.3)
C28xx_0: Trouble Halting Target CPU: (Error -1135 @ 0x8050) The debug probe reported an error. Confirm debug probe configuration and connections, reset the debug probe, and retry the operation. (Emulation package 6.0.407.3)
C28xx_0: Error: (Error -1135 @ 0x8050) The debug probe reported an error. Confirm debug probe configuration and connections, reset the debug probe, and retry the operation. (Emulation package 6.0.407.3)
C28xx_0: Unable to determine target status after 20 attempts
C28xx_0: Failed to remove the debug state from the target before disconnecting. There may still be breakpoint op-codes embedded in program memory. It is recommended that you reset the emulator before you connect and reload your program before you continue debugging

A message box with this message appears:

Can't Run Target CPU:
(Error -1156 @ 0x8050)
Device may be operating in low-power mode. Do you want to bring it out of this mode? Choose 'Yes' to force the device to wake up and retry the operation. Choose 'No' to retry the operation without waking the device.
(Emulation package 6.0.407.3)

Either choosing yes or no, I'm unable to wake up or retry the operation.

I have followed the instructions found in the following post with the same error with no success: https://e2e.ti.com/support/microcontrollers/c2000/f/171/p/546273/2001939

Another thing that I have seen is that while I am unable to load a new program or erase the flash using the uniflash application, I can load the symbols when I try to debug. In this case, I have seen the following registers for the security flash settings:

  • Z1_CSMKEY0: 0xFFFFFFFF
  • Z1_CSMKEY1: 0xFFFFFFFF
  • Z1_CSMKEY2: 0xFFFFFFFF
  • Z1_CSMKEY3: 0xFFFFFFFF
  • Z1_CR: 0x04C8 (it should be 0x0770 on a healthy DSP)
  • Z1_ECSLKEY0: 0xFFFFFFFF
  • Z1_ECSLKEY1: 0xFFFFFFFF
  • Z1_EXEONLYR: 0x0000  (it should be 0x3FFF on a healthy DSP)

I have not modified these registers at any point.

My questions are:

  • Can I recover the ability to program my C28? Is there any way to wake it up?
  • If not, how can avoid encountering this problem more times? Why is this happening?

Thanks!!