Texas Instruments Hercules CPU Support Package

This package contains project templates and system files for the Texas Instruments Hercules.

CrossWorks Version 4 Installation Instructions

To install this support package
  1. Click the Tools > Package Manager menu option to open the package manager window.
  2. Right click on the Texas Instruments Hercules CPU Support Package entry and select Install Selected Packages.
  3. Click Next to take you to the summary page.
  4. Click Next to install the package.
  5. Click Finish to close the package manager window.
  6. Click the Tools > Show Installed Packages.
  7. Click on the Texas Instruments Hercules CPU Support Package link to view the package and its contents.
To manually install this support package
  1. If you have not done so already, follow the CrossWorks Tasking Library Package installation instructions.
  2. Download the file Hercules.hzq using your web browser.
  3. Click the Tools > Manually Install Packages menu option.
  4. Select the file you have just downloaded to install the package.
  5. Click the Tools > Show Installed Packages.
  6. Click on the Texas Instruments Hercules CPU Support Package link to view the package and its contents.
To install this support package using other versions

Release Notes

1.0

Documentation

1) Creating Projects

To create a new project
To build and debug an application the runs in Flash memory
To make the application startup from reset

2) TMS570 and RM48 Project Specifics

Target Processor

Once a project has been created you can select different target processors by right clicking on the project node in the project explorer and selecting the Target Processor entry.

Selecting the target processor will specify the memory map that is used for the build and debug. You can view the selected memory map by right clicking on the project node in the project explorer and selecting View Memory Map or View Memory Map (as text).

Section Placement

CrossStudio for ARM supports TMS570/RM48 projects running applications in a number of different memory configurations. You can select the memory configuration you require by right clicking on the project node in the project explorer and selecting the Placement entry.

For TMS570/RM48 projects the set of placements are:

Note that RAM build will NOT remap the internal SRAM memory to be at address zero. As such you will need to have previously loaded a Flash application that has exception handlers placed at address zero.

Target Startup Code

The startup code TMS570LS_Startup.s implements the startup code and default irq and fiq handling code. There is a call out to a symbol systemInit that should be implemented by the application to setup clocks and memories.

Header Files

The header file TMS570LS.h, is provided that specify the peripheral registers of the TMS570LS/RM48x. All names used in these header files match the names in the TMS570LS/RM48 user manuals.

Target Reset Script

The reset script TMS570LS_Target.js is used to program the ICEPick and to reset the CPU.

Flash Loader

The source code to the flash loaders for the internal Flash of the TMS570LS20_10x, TMS570LS31x_21x and RM48x is provided. The ECC is computed and written by the flash loader as part of the loading process. Note that the CPU frequency in Mhz is supplied to the flash loader using the Target Loader Parameter which is set to be 16 by default.

Memory Simulator

A memory simulator is provided that simulates the memories of the various TMS570LS/RM48 devices. The memory simulation parameter (which is initially set by the Target Processor selection) specifies the size of the internal Flash and RAM memories and then the sizes of 4 external async memories and the size of a sync memory.

CTL support

The file TMS570LS_ctl.c implements the CTL interrupt support functions ctl_set_isr, ctl_unmask_isr and ctl_mask_isr. The CTL timer is implemented using the RTI unit with a callout to the board specific function RTIClockFrequency.

3) TMS470M Project Specifics

Target Processor

Once a project has been created you can select different target processors by right clicking on the project node in the project explorer and selecting the Target Processor entry.

Selecting the target processor will specify the memory map that is used for the build and debug. You can view the selected memory map by right clicking on the project node in the project explorer and selecting View Memory Map or View Memory Map (as text).

Section Placement

CrossStudio for ARM supports TMS470M projects running applications in a number of different memory configurations. You can select the memory configuration you require by right clicking on the project node in the project explorer and selecting the Placement entry.

For TMS470M projects the set of placements are:

Target Startup Code

The startup code TMS470M_Startup.s implements the startup code and default irq and fiq handling code. There is a call out to a symbol SystemInit that should be implemented by the application to setup clocks and memories.

Header Files

The header file TMS470M.h, is provided that specify the peripheral registers of the TMS470M. All names used in these header files match the names in the TMS470M user manuals.

Target Reset Script

The reset script TMS470M_Target.js is used to program the ICEPick and to reset the CPU.

Flash Loader

The source code to the flash loaders for the internal Flash of the TMS470M. The ECC is computed and written by the flash loader as part of the loading process. Note that the CPU frequency in Mhz is supplied to the flash loader using the Target Loader Parameter which is set to be 16 by default.

Memory Simulator

A memory simulator is provided that simulates the memories of the various TMS470M devices. The memory simulation parameter (which is initially set by the Target Processor selection) specifies the size of the internal Flash and RAM memories.

CTL support

The file TMS470M_ctl.c implements the CTL interrupt support functions ctl_set_isr, ctl_unmask_isr and ctl_mask_isr. Note that a Flash build will put the exception vectors in Flash and as such the names of the exception handlers in the application must match the names in the startup file - you can use the C preprocessor property to rename the used exception handlers in the startup file. The CTL timer is implemented using the RTI unit with a callout to the board specific function RTIClockFrequency.

5) Sample Projects

TI TMS570LS20x USB Stick
TI TMS570LS31x USB Stick
TI RM48x USB Stick
TI TMS470M USB Stick