Microcontrollers (MCU)

C2000 real-time control MCUs – Tools & software

LaunchPad™ development kits

LaunchPad development kits are the lowest cost way to evaluate a C2000™ MCU. They include the C2000 MCU, isolated JTAG emulation, a standard pin-out to headers, as well as various additional connectors, LEDs, and buttons. LaunchPad development kits can be used completely standalone for device evaluation or they can be connected to application-specific BoosterPack™ plug-in modules. LaunchPad kits are often used in reference designs as a flexible way to demonstrate the needed control capability for the application.

C2000 launchpad

controlCARDS

controlCARDs are robust, modular plug-in cards with a standardized pin-out and include the C2000 MCU, common support circuitry,  and often an isolated JTAG connector. Most signals are brought out to the card edge, allowing for more extensive device evaluation and use in multiple application evaluation boards. controlCARDs typically give access to a wider range of the microcontroller’s pins, when compared with the LaunchPad development kit.

C2000 controlCARD

Application evaluation

Applications can be evaluated through BoosterPack modules paired with LaunchPad kits, controlCARDs paired with evaluation modules (EVMs), or in some cases EVMs with the MCU soldered directly to the board.  Some application kits are aimed at experimentation and concept education, while others provide more real-world power levels similar to the end application.  All application kits contain software examples, extensive user’s guides, and a hardware development package to enable rapid customization for your product.

Solar micro inverter development kit

Software

C2000Ware

C2000Ware is a cohesive set of development tools for C2000 real-time controllers. It includes device-specific drivers, bit-fields, libraries (math, DSP, Control, Signal Generation), peripheral examples, utilities, hardware files, and documentation. Application specific software and hardware files are delivered through additional Software Development Kits (SDK).

controlSUITE

controlSUITE is the legacy content delivery tool for device and application support. All new content updates will be through C2000Ware and Application SDK only. 

C2000 software framework

The programming model for C2000 MCUs offers flexibility with various layers of abstraction. While C is the prevalent language, software methods are provided that allow for assembly instructions with direct access to the registers, a #define header file system with easy to interpret bit-fields, or a classical API driver.

C2000 software interfacing

Registers and addresses

  • Baseline assembly communication to all hardware registers and addresses

Bit fields

  • Can be manipulated without masking
  • Flexibility to access a register as a whole or by bits
  • Advanced Code Composer Studio™ IDE features for ease-of-use

API drivers

  • C functions that automatically set register bit fields
  • Reduces learning curve for new embedded programmers
  • Common tasks and peripheral modes supported

Framework

  • State Machine / ISR Based OS
  • Function-based device initialization
  • Built-in task management

Application packages

Historically controlSUITE has been a repository for device support, as well as for application software and hardware.  As more libraries and examples were created, special application-specific packages were developed (DesignDRIVE, MotorWare). With the release of C2000Ware, application-specific packages will now be released as C2000Ware Software Development Kits (SDKs) using C2000Ware as a common device-level software infrastructure.

C2000 DigitalPower SDK

DigitalPower SDK for C2000 MCUs is a cohesive set of software infrastructure, tools, and documentation designed to minimize the design time of C2000 MCU-based digital power system development for various AC-DC, DC-DC and DC-AC power supply applications.

DesignDRIVE

The DesignDRIVE platform combines software solutions with development kits to make it easy to develop and evaluate solutions for many industrial drives and servo topologies. (included in controlSUITE)

MotorWare

MotorWare is the development package for TI’s InstaSPIN three-phase motor control solutions. MotorWare includes all source code, projects, user’s guides and technical manuals needed for development.

Third party software stacks

Software package
Description
Provider
CAN ssCAN is a real-time CAN device driver with sub-microsecond interrupt  Simma Software
CANopen ssCANopen is a high-performance hard real-time CANopen protocol stack supporting a data throughput of 15 Mbps. This product is optimized specifically for the C28x based microcontrollers which include C2000 real-time control microcontrollers.
SAE J1939 ssJ1939 is an extreme performance SAE J1939 protocol stack supporting a data throughput of 20 Mbps. This product is optimized specifically for the C28x based microcontrollers which include C2000 real-time control microcontrollers.
ISO 15765 ssI15765 is an extreme performance ISO 15765 protocol stack supporting a data throughput of 20 Mbps. This product is optimized specifically for the C28x based microcontrollers which include C2000 real-time control microcontrollers.
NMEA 2000 ssNMEA2000 is an extreme performance NMEA 2000 protocol stack supporting a data throughput of 20 Mbps. This product is optimized specifically for the C28x based microcontrollers which include C2000 real-time control microcontrollers.
ssl14229 ssI14229 is an ISO 14229 protocol stack supporting Unified Diagnostic Services (UDS) such as in-field programmability. This product is optimized specifically for the C28x based microcontrollers.  ISO 14229 is used for automotive electronics.
ssBL ssBL is a flash bootloader used for in-field programming of ECUs.  ssBL can be extended to support proprietary requirements such as AES 256 encryption.  Interfaces include CAN, J1939, CANopen, UDS, Bluetooth, USB, and RS-232.

Development toolchain

The C2000 software applications above work together with IDE, compilers and RTOS as well as third party code development tools in order to provide a full development solution for real-time control applications.

Code Composer Studio IDE

TI’s integrated software development environment

  • Includes a debugger, compiler, editor, and more

 

Based on the Eclipse open source software framework

  • Extended by TI to support device capabilities

 

Added functionality with key development tools

  • OS application development tools (TI-RTOS, Linux, Android)
  • Code analysis, source control, controlSUITE integration
Code composer studio icon

Real-time debugging

All C2000 devices include a real-time debugging feature which is better than traditional debugging for the following reasons. 

  • Real-time, non-intrusive, continuous
  • Does not require the use of target memory, special interrupts, or SW intrusiveness
  • Allows time critical interrupts to be marked for special treatment (high priority)
  • Allows time-critical interrupts to be serviced while background program execution is suspended

 

For enhanced debug and system analysis, the latest C2000 MCU series include Embedded Real-Time Analysis And Diagnostic Unit (ERAD). 

Third-party code development tools

There are several companies who produce C2000 MCU customized interface, simulation (controller, plant, hardware, processor-in-the-loop), and code-generation toolsets for visual / block diagram / model-based design.  These products can enable rapid control system prototyping, system modeling and can be used for debug / test / conformance and speed time to production.

MathWorks logo

MathWorks® with Embedded Coder®

Embedded Coder provides engineers using Model-Based Design with fine grain control of software interfaces, execution performance optimizations, and RAM/ROM memory consumption options.

Lets users easily create graphical block diagrams that will simulate and generate efficient fixed and floating point C code for C2000 MCUs. Layered on top of Code Composer Studio IDE.

PSIM logo

Powersim - Simulation and Embedded Code Generation

Supports the full dev. cycle of digital power converter and motor drive projects, from simulation to embedded code generation. PSIM offers a complete sensorless motor drive solution for C2000 MCUs.

Programmers and debuggers

 

Debug probes

JTAG debug probes (emulators) allow you to program the memories and communicate with the C2000 Real-time MCU during development. While almost all C2000 Tools include JTAG emulation on the controlCARD, LaunchPad, baseboard, or application board, once you build your own board you will need external debug probe.  These debug probes are offered at different price points and include different features, comparative performance, and CCS IDE compatibility.

Part number
Description
XDS110
Preferred low-cost debug-probe.  Performance is roughly equivalent to the XDS100V2. Supported only by CCS version 7 and greater.
XDS100V2
Low-cost debug-probe, specifically recommended for older device series or older versions of CCS.  The design is open and may be copied to create your own debug-probe.
XDS200
Preferred mid-class external debug probe for C2000 users. Supports new 2-pin cJTAG mode for use with Piccolo F28004x series.
XDS510USB
Mid-class debug-probe for C2000, but replaced by the XDS200, so no longer recommended.
XDS560
Preferred advanced debug-probe with increased performance over XDS200.
Isolation adapters
Provides electrical isolation to any debug probe.

Flash programming

Part number
Description
Provider
Flash FAQ
C2000 Flash Programming Frequently Asked Questions  
Texas Instruments 
SPRABV4  C2000 Serial Flash Programming Application Note Texas Instruments 
CCS On-Chip Flash programmer CCS has an inbuilt On-chip Flash programmer GUI to program the flash memory on TI MCUs during development. Texas Instruments
UniFlash Uniflash is a standalone tool used to program flash memory on TI MCUs. Uniflash has a GUI, command line, and scripting interface. Code Composer Studio IDE Uniflash is available free of charge. SM motor with a built in encoder used with TMDSHVMTRPFCKIT and TMDXIDDK379D. Texas Instruments
C2000-GANG Multi-device programmer that programs up to 8 C2000 real-time control devices at a time. The C2000 real-time control gang programmer connects to a host PC using a standard RS-232 or USB connection and provides flexible programming options that allow the user to fully customize the process.  C2000-GANG can be used in standalone mode as well. Elprotronic
FlashPro 2000 FlashPro2000 is an automated USB Flash procution Programmer for Texas Instruments C2000 real-time control series MCUs.  FlashPro2000 allows serialization - Connect up to 64 programmers to one PC and control simulataneous programming from one software. Elprotronic
C2Prog C2Prog is a secure, scriptable, industrial grade flash programming tool for TI performance MCUs. In addition to supporting the JTAG interface, C2Prog also permits re-flashing over RS-232, RS-485, TCP/IP, USB and CAN (Controller Area Network). Firmware images can be encrypted and password protected. The programmer is, therefore, well suited for deployment in the field, especially when IP protection is important.
codeskin 
BP Microsystems Programming BPM Microsystems provides a complete ecosystem of manual and automated universal programming solutions:Low cost single socket manual programmers for first article and engineeringMulti-socket manual programmers support low to medium volume productionFlexible Automated Programming Systems to support medium to high volume production. BP Microsystems
Data I/O Programming Data I/O provides complete device programming solutions to customers worldwide. The company offers a full line of single site device programmers & universal, and multi-site concurrent programming systems. Data I/O

Accessories

Part number
Description
TMDSDIM100CON5PK  Package of 5 DIM100 (called DIMM 100 by DigiKey and Mouser) connectors for use with any C2000 real-time controlCARD tools. Molex part number 87630-1001 or equivalent.
HVPMSMMTR High voltage 3-ph PMSM motor with a built in encoder used with TMDSHVMTRPFCKIT and TMDXIDDK379D
HVBLDCMTR High voltage 3-ph BLDC motor with built in hall sensors used with TMDSHVMTRPFCKIT
LVACIMTR Low voltage  3-ph ACI motor typically used with low voltage InstaSPIN-FOC enabled kits
LVBLDCMTR Low voltage 3-ph BLDC (sinusoidal) motor typically used with low voltage InstaSPIN-FOC enabled kits
LVSERVOMTR Low voltage 3-ph PMSM motor with built in encoder and hall sensors typically used with low voltage InstaSPIN-FOC enabled kits
2MTR-DYNO Two LVSERVOMTR, shaft couplings, and mounting block for motor under test and motor under load evaluation