Other Parts Discussed in Thread: UNIFLASH
Hi,
I am running into an inconvenience that I hope I can get some help with.
I am using the TMS320F280039 MCU with the XDS200 USB Debugger.
When I start a debugging session in CCS 12.7.0.00007 the system will hang at the OnTargetConnect() Gel Step. If I hit cancel the connection session continues and I can start debugging. I've added prints to the Gel Script and it appears that the following line is never evaluating to true.
while(!(*(int *) (MEMCFG_BASE + MEMCFG_O_DXINITDONE) == 0x3)); /* Wait for InitDone Status */
Can someone explain why the M0/M1 RAM initialization would not occur successfully? It is also worth nothing that I do have the JTAGLock enabled as well and the SecureFlash Configured.
I've attached the entire OnTargetConnect function from the f280039.gel file.
Thanks,
-Colin
OnTargetConnect() { *(int *)(MEMCFG_BASE + MEMCFG_O_DXINIT) = 0x0003; /* RAM INIT FOR M0/M1 Memory */ while(!(*(int *) (MEMCFG_BASE + MEMCFG_O_DXINITDONE) == 0x3)); /* Wait for InitDone Status */ *(int *)(MEMCFG_BASE + MEMCFG_O_LSXINIT) = 0x00FF; /* RAM INIT FOR LS1..LS7 Memory */ while(!(*(int *) (MEMCFG_BASE + MEMCFG_O_LSXINITDONE) == 0xFF)); /* Wait for InitDone Status */ *(int *)(MEMCFG_BASE + MEMCFG_O_GSXINIT) = 0x000F; /* RAM INIT FOR GS0.GS3 Memory */ while(!(*(int *) (MEMCFG_BASE + MEMCFG_O_GSXINITDONE) == 0xF)); /* Wait for InitDone Status */ GEL_TextOut("\n\nRAM initialization done\n\n"); if (GEL_IsInRealtimeMode()) /* If in real-time-mode */ { } else /* Put device into C28x Mode */ { C28x_Mode(); } f280039_Memory_Map(); /* Initialize the CCS memory map */ /* Check to see if CCS has been started-up with the DSP already */ /* running in real-time mode. The user can add whatever */ /* custom initialization stuff they want to each case. */ if (GEL_IsInRealtimeMode()) /* Do real-time mode target initialization */ { } else /* Do stop-mode target initialization */ { GEL_Reset(); /* Reset DSP */ } }