TI Code Composer Studio
This article describes the usage of TI Code Composer Studio (CCS) in combination with J-Link.
- 1 Minimum CSS Version Requirements
- 2 Adding J-Link support at installation time
- 3 Updating J-Link inside CCS
- 4 Using TI CCS with J-Link
- 5 Adding J-Link support to older CCS versions
- 6 Connecting to a J-Link via Ethernet
- 7 Using J-Link Script Files
- 8 Setting a breakpoint while the target is running
Minimum CSS Version Requirements
In order to use J-Link with TI CCS, min. V6.1.3 of TI CCS is required. Earlier versions might work but are not guaranteed to do so. Please understand that SEGGER does not provide any support for CCS versions earlier than V6.1.3.
Adding J-Link support at installation time
Since TI CCS v7, J-Link is supported out-of-the-box if J-Link support is selected to be added at installation time of CCS. For more information regarding older versions of CCS: Adding J-Link support to older CCS versions.
Updating J-Link inside CCS
Using TI CCS with J-Link
In the following, a short step-by-step tutorial how to configure a Code Composer Studio project to be used with J-Link, is given.
- Open the project to configure
- Open project properties by clicking Project | Properties from the main menu and go to the General tab
- Make sure that the proper device is selected
- Make sure that Segger J-Link Emulator is selected as connection type
Ready for debugging
Adding J-Link support to older CCS versions
In order to get started with J-Link and CCS, please make sure that latest SEGGER software and documentation pack is installed, which can be downloaded here.
Adding J-Link to Available Software Sites
- Open CCS
- Open Window | Preferences
- In Install/Update select Available Software Sites
- Press Add...
- Enter "J-Link Support" as Name
Add the following URL as Location:
- Press OK
- Open Help | Install New Software
- In Work With: field: Choose "J-Link Support" from the drop down list
- Check J-Link support
- Click Next
- Click Next
- Click Next
- Accept the license
- Click Finish
- Restart TI CCS
Using J-Link in a project
- Open the target configuration (.ccxml file in the project)
- View | Target Configuration can be used to find the target configuration file if necessary
- In the Connection field choose "SEGGER J-Link Emulator" from the drop down list
- Check the correct target in the list below
- In the Advanced tab, additional settings are configurable , e.g. the JTAG speed
- The project is now ready to be debugged with J-Link
Connecting to a J-Link via Ethernet
In current versions of the TI Code Composer Studio (CCS), the host interface to the J-Link (USB / Ethernet) can not be specified in the project settings.
The J-Link DLL allows to override the used host interface using the J-Link Commander String SetHostIF. This command string can be passed to the J-Link DLL using the J-Link Script File function InitEMU(). Please find below an example J-Link Script File, which forces the J-Link DLL to open a connection to the J-Link via IP (192.168.104.174). How to use J-Link script files in CCS is described in the article below.
Using J-Link Script Files
- Make sure that J-Link CCS uses at least J-Link software version V6.20g
- Open the project
- Switch to the Project Explorer, browse to %PROJECT_NAME% --> targetConfigs and open the active target config with *.ccxml extension (e.g. CC2650F128.ccxml)
- Select the Cpu properties (see screenshot below)
- Switch to the Advanced tab (see screenshot below)
- Select the desired J-Link script file in the Cpu Properties tab --> J-Link Scriptfile Path (see screenshot below)
Setting a breakpoint while the target is running
Per default a TI CCS project is in a so-called "non-intrusive" debug mode. In this mode CCS will not set any breakpoints while the target is running, because this could effect realtime behavior as the target needs to be halted before setting a breakpoint.
It is possible to change this behavior. To do so, the following steps are necessary:
- Open your project in TI CCS
- Navigate to the Project Explorer
- Open the properties of your project (right click on the project -> Properties)
- Activate the intrusive mode: Debug -> Auto Run and Launch Options -> Realtime Options -> set Halt the target before any debugger access