![](images/texas_instruments.png)
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
-
- Click the Tools > Package Manager menu option to open the package manager window.
- Right click on the Texas Instruments Hercules CPU Support Package entry and select Install Selected Packages.
- Click Next to take you to the summary page.
- Click Next to install the package.
- Click Finish to close the package manager window.
- Click the Tools > Show Installed Packages.
- Click on the Texas Instruments Hercules CPU Support Package link to view the package and its contents.
- To manually install this support package
-
- If you have not done so already, follow the CrossWorks Tasking Library Package installation instructions.
- Download the file Hercules.hzq using your web browser.
- Click the Tools > Manually Install Packages menu option.
- Select the file you have just downloaded to install the package.
- Click the Tools > Show Installed Packages.
- 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
- Initial Release.
Documentation
1) Creating Projects
To create a new project
- Select the File > New > New Project menu item.
- Select the appropriate Generic TMS570LS/RM48 or Generic TMS470M from the Categories list.
- Select the required project template type from the Templates list.
- Set the required project name and location directory.
- Click OK.
To build and debug an application the runs in Flash memory
- Select the project to work on by using the Project > Set Active Project menu option.
- Select the configuration you require by using the Build > Set Active Build Configuration menu option.
- Right click on the project node in the project explorer and select the Flash placement.
- Build the project by using the Build > Build Project menu option.
- Connect to the appropriate target in the target window. If you are using the Texas Instruments XDS100v2 then you will need to set a JTAG clock divider of 3 or 4.
- Download and start debugging the current project by using Debug > Start Debugging.
To make the application startup from reset
- Right click on the project node in the project explorer and select Properties...
- In the properties window scroll down to the Preprocessor Options section.
- Type STARTUP_FROM_RESET into the Preprocessor Definitions property editor.
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:
- Flash application runs in internal Flash memory.
- RAM application runs internal SRAM memory.
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:
- Flash application runs in internal Flash memory.
- Flash Vectors In RAM application runs in internal Flash memory with exception vectors in RAM.
- Flash Copy To RAM application starts in internal Flash memory then copies itself to RAM.
- RAM application runs internal SRAM memory.
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 TMS570LS20x USB Stick Shared Samples (click to load project)
- TI TMS570LS20x USB Stick CTL Samples (click to load project)
- TI TMS570LS20x USB Stick CTL VFP Sample (click to load project)
TI TMS570LS31x USB Stick
- TI TMS570LS31x USB Stick Shared Samples (click to load project)
- TI TMS570LS31x USB Stick CTL Samples (click to load project)
- TI TMS570LS31x USB Stick CTL VFP Sample (click to load project)
TI RM48x USB Stick
- TI RM48xx USB Stick Shared Samples (click to load project)
- TI RM48xx USB Stick CTL Samples (click to load project)
- TI RM48xx USB Stick CTL VFP Sample (click to load project)
TI TMS470M USB Stick
- TI TMS470M USB Stick Shared Samples (click to load project)
- TI TMS470M USB Stick CTL Samples (click to load project)