Skip to content Skip to navigation

Connexions

You are here: Home » Content » Project Configuration details

Navigation

Lenses

What is a lens?

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

This content is ...

Affiliated with (What does "Affiliated with" mean?)

This content is either by members of the organizations listed or about topics related to the organizations listed. Click each link to see a list of all content affiliated with the organization.
  • TI MSP430 display tagshide tags

    This module is included inLens: Texas Instruments MSP430
    By: Texas InstrumentsAs a part of collection: "Teaching and classroom laboratories based on the “eZ430” and "Experimenter's board" MSP430 microcontroller platforms and Code Composer Essentials"

    Comments:

    "This is an excerpt from the MSP430 Teaching CD produced under TI sponsorship and review at the University Beira Interior in Portugal. The material covers everything from "hello world" on an eZ430 […]"

    Click the "TI MSP430" link to see all content affiliated with them.

    Click the tag icon tag icon to display tags associated with this content.

Recently Viewed

This feature requires Javascript to be enabled.

Tags

(What is a tag?)

These tags come from the endorsement, affiliation, and other lenses that include this content.
 

Project Configuration details

Module by: Pedro Dinis, António Espírito Santo, Bruno Ribeiro. E-mail the authors

Project Configuration details

The project configuration defines a set of options to build it. The options defined at this level are applied to all the files of the project. CCE allows setting different options for building at different stages of the project.

Building a project is a process that generates new features starting from the existing ones, or updates them if they already exist. In the workspace, different builds for different types of projects, or for different stages of development can be invoked. The different build types are:

- An Incremental build uses a build held earlier. Thus, from a past build state, it applies the necessary changes to the resources that have been changed;

- A Clean Build ignores all previous builds as well as problems or errors that led to them. This type of build will transform all resources in accordance with the set of rules in the project build configuration.

The project builds can be done in two different ways. The behaviour configuration can be defined in Window > Preferences > General > Workspace:

- Automatic builds are always incremental and are always carried out throughout the workspace. Whenever there is resource alteration, it will initiate a build process. This option may be disabled in Window > Preferences > General > Workspace;

- A manual build is always triggered by the user. This type of project build option can be clean or incremental, and can be applied on a group of project files, or to the whole workspace.

The order in which the build is processed is configurable. If the project contains mentions to another project, the CDT (C/C++ Development Tools) must first build the initial project. The order in which the build takes place may be selected in Window > Preferences > General > Workspace > Build Order.

In order to bring the various parts of a project together, it is necessary to build the project using a configuration stored in a file. There are several build files available, giving different build alternatives, so the build file most appropriate to the stage of the project must be selected. The CDT can automatically generate build files whenever a Managed Make C project or Managed Make C++ project is created. Each project is therefore created with two default settings: Debug and Release. Other additional settings can be configured. Whenever a project is created or an existing project is opened, the first configuration in the list of alphabetically sorted items, is taken as active.

The project’s compiler and linker definition options are complex. Therefore, it is recommended to carefully read the documentation related to the compiler and to the assembler/linker.

After the project’s creation, it must be configured for the appropriate compiler, linker and debugging options. By selecting the option Properties from the context menu of the view C/C++ Project, the project’s configuration window is displayed (Figure 1). The compiler, linker and debug options can be defined here.

Figure 1
CCE workbench – Configuration window.
CCE workbench – Configuration window. (graphics1.png)

The management of build configurations is found under the option C/C++ Build, accessed via the Manage button. Through it the management features can be accessed (see Figure 2).

Figure 2
CCE workbench – Manage window.
CCE workbench – Manage window. (graphics2.png)

It is possible to create new build configurations, delete the existing ones or modify their names. The name of the modified configuration is selected in configuration.

The C/C++ compiler used by the project is controlled by the project’s properties. To view the project properties in the dialog box that appears, the page C/C++ Build allows control of the variety of configurations, including:

Build Options: specifies the options that affect all project files. This dialog page allows selection of the appropriate options, including those for compiling and linking. It is also possible to specify whether the compiler uses Stop On Error or Keep Going On Error. The second option allows the compiler to build all projects referenced, even if the current project contains errors. The build command specifies the make file to use.

The MSP430X devices allow data to be located anywhere in the 20-bit address space. By enabling this option, the compiler will use instructions that need a larger space for their storage. Hence, the memory space occupied by the final program will be greater. The option (- large_memory_model) is valid only when the project is intended as a MSP430X device defined by the compile option (- vmspx). The programs for MSP430X processors should be compiled with RTS libraries supplied for that purpose (rts430xl.lib and rts430xl_eh.lib).

The compilation option (- silicon_version) selects the CPU version using the 4 least significant processor’s identification digits. If this option is not used, the compiler will construct the default code for the device.

In the process of linking, if all references to the multiplication routines of integers are to be replaced by the routines versions that use the hardware multiplier option (- use_hw_mpy), the device multiplier’s length must be specified. To use the 16-bit hardware multiplier, present in most devices, choose the option 16. For devices belonging to the F4xx family, which has a 32-bit multiplier module, chose the option 32. Finally, for the new 5xx family, which also has a 32-bit multiplier, use the F5 option. The default option is 16-bit hardware multiplier module.

The model used for the initialization of static variables in the C program can be specified as: None, Link using ROM autoinitialization model (- rom_model), or link using RAM autoinitialization model (- ram_model). The C/C++ compiler produces tables of data for automatic initialization of global variables. These tables are placed in the section identified by .cinit.

The memory space reserved for the passing of arguments by the C routines is defined in (--arg_size). The space reserved for the dynamic allocation of memory by the program is defined in the option (--heap_size). The system stack size used by the program is set by the option (--stack_size). See Figure 3.

Figure 3
CCE workbench – Memory space configuration.
CCE workbench – Memory space configuration. (graphics3.png)

The device for which the project is intended is configured in the Properties> TI Building Setting. The window is in every way identical to that presented in the project’s creation (Figure 4).

Figure 4
CCE workbench – Device configuration.
CCE workbench – Device configuration. (graphics4.png)

The project debugging is carried out as specified in the window TI Debug Settings. With the Setup tab, using the option connection, the method of connecting to the device is established, either parallel port or USB port. The Debugger tab can be used to specify whether to load the all application (Load program) or just load the project’s symbols (Load symbols only). These options can be used to choose between loading the entire program, or just the symbols. This last option is valid when the development environment cannot load the software, such as in the case of the software runs in ROM.

Using the Target tab, it is possible to define various aspects related to the device. Thus, it is possible to enable the use of IO functions in Enable CIO functions use, or establish the starting point for the code execution when a reset occurs or a program is loaded. In the MSP430 properties, it is possible to specify the supply voltage and the types of breakpoints: software or hardware. The memory storage process can also be defined using this tab (Figures 5 to 7).

Figure 5
CCE workbench – Device options configuration.
CCE workbench – Device options configuration. (graphics5.png)

Figure 6
CCE workbench – Device options configuration: TI Debug Settings – Target: Generic.
CCE workbench – Device options configuration: TI Debug Settings – Target: Generic. (graphics6.png)

Figure 7
CCE workbench – Device options configuration: TI Debug Settings – Target: MSP430 properties.
CCE workbench – Device options configuration: TI Debug Settings – Target: MSP430 properties. (graphics7.png)

The first time that the project is built, the Project > Build All option must be selected. The project build status can be examined in the Console window. If there is a problem, the Problems window will list them all. After a successful build of the project, the output file can be automatically loaded into the device.

Alternatively, a project can be built at the beginning of the debug session. The option Debug Active Project will recompile the project and launch the debugger, using the device information defined in the project options.

Note that an attempt to update the firmware can occur when the debugger is used for the first time, after a software release has been installed or a new USB interface is used.

Finally, the active perspective must be switched to the Debug perspective. This operation can be carried out with the perspective selection buttons located on upper right corner of the workspace window, or alternatively, by selecting Window > Open Perspective > Debug.

When the project is debugged, the errors are identified on the right hand side of the editor as red marks while the problems are identified as white marks. A mark is added on the left hand side of the editor to the lines that contain an error. When this mark is selected, the compiler provides information about the error.

When the project is made (make option), the resources used can be accessed on Properties > C/C++ Build > MSP430 Linker V3.0 > Linker Output in the option Produce list of input and output sections.

Request the MSP430 Teaching ROM Materials here https://www-a.ti.com/apps/dspuniv/teaching_rom_request.asp

Content actions

Download module as:

PDF | EPUB (?)

What is an EPUB file?

EPUB is an electronic book format that can be read on a variety of mobile devices.

Downloading to a reading device

For detailed instructions on how to download this content's EPUB to your specific device, click the "(?)" link.

| More downloads ...

Add module to:

My Favorites (?)

'My Favorites' is a special kind of lens which you can use to bookmark modules and collections. 'My Favorites' can only be seen by you, and collections saved in 'My Favorites' can remember the last module you were on. You need an account to use 'My Favorites'.

| A lens I own (?)

Definition of a lens

Lenses

A lens is a custom view of the content in the repository. You can think of it as a fancy kind of list that will let you see content through the eyes of organizations and people you trust.

What is in a lens?

Lens makers point to materials (modules and collections), creating a guide that includes their own comments and descriptive tags about the content.

Who can create a lens?

Any individual member, a community, or a respected organization.

What are tags? tag icon

Tags are descriptors added by lens makers to help label content, attaching a vocabulary that is meaningful in the context of the lens.

| External bookmarks