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.

LAUNCHXL-F28379D: Issue with Missing SysCtl_delay() Function in TMS320F28379D Project

Part Number: LAUNCHXL-F28379D
Other Parts Discussed in Thread: TMS320F28379D, C2000WARE

Hello TI Community,

I'm currently working on a project using the TMS320F28379D microcontroller and have encountered a debugging issue. When I attempt to step into or over the void spi_updateController() function, the debugger redirects to a message stating "No source available for 'SysCtl_delay()'" with a file path pointing to my project's output file.

Additionally, I've noticed a warning in my project: #10373-D library "C:/ti/c2000/C2000Ware_5_00_00_00/driverlib/f2837xd/driverlib/ccs/Debug/driverlib_coff.lib" contains TI-COFF object files which are incompatible with the ELF output file.

I'm unable to locate the SysCtl_delay() function in my code, which suggests it might be part of an external library or indirectly called. I'm seeking assistance to understand:

  1. Why the debugger is pointing to SysCtl_delay() and how to resolve the "No source available" issue.
  2. The impact of the mentioned warning about library incompatibility on my project.
  3. Any insights into how SysCtl_delay() is being used in the context of TMS320F28379D projects.

Any guidance or suggestions would be greatly appreciated.

Thank you!

Nero

28379d_sci_11_28.zip

  • Hello Nero,

    Why the debugger is pointing to SysCtl_delay() and how to resolve the "No source available" issue.

    The debugger may be pointing to this because the program is running that function or was at some point; if you believe this function is running in error, check the Disassembly to see if the program has hit an ITRAP (invalid instruction). If so, you will likely see the assembly execution stopped at an ESTOP0 command. Your assumption that the SysCtl_delay function is part of an external library is correct.

    The impact of the mentioned warning about library incompatibility on my project.

    It means that your project may be configured for EABI but a library which is used in the project (in this case driverlib) is using COFF format. You need to make sure that the correct driverlib library file is included by checking your File Search Paths in the C2000 Linker, as well as the Linked Resources in your Project Properties.

    Any insights into how SysCtl_delay() is being used in the context of TMS320F28379D projects.

    This is used in many functions to set a delay to allow certain configurations to be set before configuring something else or exiting a function call. You will need to look at your code to see this (additionally, you can set a breakpoint within this function and check the return address in the Core Registers in the Registers view to see which function called this).