| Contents | Index |
Some long-standing issues affect the Embedded Coder product. When you are using ticcs objects and the software methods to work with Code Composer Studio and supported hardware or simulators, recall the information in this section.
The latest issues in the list appear at the bottom. HIL refers to "hardware in the loop," also called processor in the loop (PIL) here and in other applications, and sometimes referred to as function calls.
To run the Embedded Coder demos, you must load the corresponding GEL files before you run the demos. For some boards, the demos run fine with the default CCS GEL file. Some boards need to run device-specific GEL files for the demos to work well.
Here are demos and boards which require specific GEL files.
Board: C5416 DSK
Demos: rtdxtutorial, rtdxlmsdemo
Emulator: XDS-510
GEL file to load: c5416_dsk.gel
In general, if a demo does not run with the default GEL file, try using a device-specific GEL file by defining the file in the CCS Setup Utility.
If you halt the execution of your program on your DSP and modify a local variable's value, the new value may not be acknowledged by the compiler. If you continue to run your program, the compiler uses the original value of the variable.
This problem happens only with local variables. When you write to the local variable via the Code Composer Studio Watch Window or via a MATLAB object, you are writing into the variable's absolute location (register or address in memory).
However, within the processor function, the compiler sometimes saves the local variable's values in an intermediate location, such as in another register or to the stack. That intermediate location cannot be determined or changed/updated with a new value during execution. Thus the compiler uses the old, unchanged variable value from the intermediate location.
When you halt a running program on your processor, Code Composer Studio may display a dialog box that says it cannot find a source code file or a library file.
When you halt a program, CCS tries to display the source code associated with the current program counter. If the program stops in a system library like the runtime library, DSP/BIOS, or the board support library, it cannot find the source code for debug. You can either find the source code to debug it or select the Don't show this message again checkbox to ignore messages like this in the future.
For more information about how CCS responds to the halt, refer the online Help for CCS. In the online help system, use the search engine to search for the keywords "Troubleshooting" and "Support." The following information comes from the online help for CCS, starting with the error message:
The debugger is unable to locate the source file required to enable source-level debugging for this program.
To specify the location of the source file
The next section provides more details about file paths.
The Directories dialog box enables you to specify the search path the debugger uses to find the source files included in a project.
In the Customize dialog box, select the Directories tab. Use the scroll arrows at the top of the dialog box to locate the tab.
The Directories dialog box offers the following options.
Directories. The Directories list displays the defined search path. The debugger searches the listed folders in order from top to bottom.
If two files have the same name and are located in different folders, the file located in the folder that appears highest in the Directories list takes precedence.
New. To add a new folder to the Directories list, click New. Enter the full path or click browse [...] to navigate to a folder. By default, the new folder is added to the bottom of the list.
Delete. Select a folder in the Directories list, then click Delete to remove that folder from the list.
Up. Select a folder in the Directories list, then click Up to move that folder higher in the list.
Down. Select a folder in the Directories list, then click Down to move that folder lower in the list.
Click OK to close the Customize dialog box and save your changes.
You cannot modify the XPC register value directly using regwrite to write into the register. When you are using extended program addressing in C54x, you can modify the XPC register by using regwrite to write a 23-bit data value in the PC register. Along with the 16-bit PC register, this operation also modifies the 7-bit XPC register that is used for extended program addressing. On the C54x, the PC register is 23 bits (7 bits in XPC + 16 bits in PC).
You can then read the XPC register value using regread.
When you have more than one version of Code Composer Studio installed on your machine, you cannot select which CCS version MATLAB Embedded Coder attaches to when you create a ticcs object. If, for example, you have both CCS for C5000 and CCS for C6000 versions installed, you cannot choose to connect to the C6000 version rather than the C5000 version.
When you issue the command
IDE_obj = ticcs
Embedded Coder starts the CCS version you last used. If you last used your C5000 version, the IDE_obj object accesses the C5000 version.
To make your ticcs object access the right processor:
Start and close the CCS version you plan to use before you create the ticcs object in MATLAB.
Create the ticcs object using the boardnum and procnum properties to select your processor, if required.
Recall that ccsboardinfo returns the boardnum and procnum values for the processors that CCS recognizes.
You can use only one version of CCS in a single MATLAB session. Embedded Coder does not support using multiple versions of CCS in a MATLAB session. To use another CCS version, exit MATLAB software and restart it. Then create your links to the new version of CCS.
In MATLAB software, when you create a ticcs object, the construction process for the object automatically starts CCS. If CCS cannot find a processor that is connected to your PC, you see a message from CCS like the following DSP Device Driver dialog box that indicates CCS could not initialize the processor.

Four options let you decide how to respond to the failure:
Abort — Closes CCS and suspends control for about 30 seconds. If you used MATLAB software functions to open CCS, such as when you create a ticcs object, the system returns control to MATLAB command window after a considerable delay, and issues this warning:
??? Unable to establish connection with Code Composer Studio.
Ignore — Starts CCS without connecting to any processor. In the CCS IDE you see a status message that says EMULATOR DISCONNECTED in the status area of the IDE. If you used MATLAB to start CCS, you get control immediately and Embedded Coder creates the ticcs object. Because CCS is not connected to a processor, you cannot use the object to perform processor operations from MATLAB, such as loading or running programs.
Retry — CCS tries again to initialize the processor. If CCS continues not to find your hardware processor, the same DSP Device Driver dialog box reappears. This process continues until either CCS finds the processor or you choose one of the other options to respond to the warning.
One more option, Diagnostic, lets you enter diagnostic mode if it is enabled. Usually, Diagnostic is not available for you to use.
Limitations in Code Composer Studio do not allow you to load programs after you set your CCS working folder to a read-only mapped drive. When you set the CCS working folder to a mapped drive for which you do not have write permissions, you cannot load programs from any location. Load operations fail with an Application Error dialog box.
The following combination of commands does not work:
cd(IDE_obj,'mapped_drive_letter') % Change CCS working directory to read-only mapped drive.
load(IDE_obj,'program_file') % Loading any program fails.
Description On a machine where CCS 3.3 and CCS 3.1 are installed, uninstalling 3.3 makes 3.1 unusable from MATLAB. This is because the CCS 3.3 uninstaller leaves stale registry entries in the Windows Registry that prevent MATLAB from connecting to CCS 3.1.
Texas Instruments has documented this uninstall problem and the solution on their Web site.
Updated information on this issue may also be available from the Bug Reports section of www.mathworks.com at http://www.mathworks.com/support/bugreports/379676
PostCodeGenCommand commands, such as the addCompileFlags and addLinkFlags functions in the BuildInfo API do not affect code generated by Embedded Coder while System Target File is set to idelink_ert.tlc or idelink_grt.tlc.
Use the 'Compiler options string' and 'Linker options string' parameters in the Configuration Parameters > Code Generation > IDE Link pane instead. You can also automate this process using a model callback to SET_PARAM the 'CompilerOptionsStr' and 'LinkerOptionsStr' parameters.
![]() | Tutorial: Using Makefiles with Code Composer Studio 3.x | Working with Texas Instruments Code Composer Studio 4 IDE | ![]() |

Learn more about Simulink through this collection of videos, articles, technical literature and the Getting Started with Simulink Guide.
| © 1984-2012- The MathWorks, Inc. - Site Help - Patents - Trademarks - Privacy Policy - Preventing Piracy - RSS |