Skip to content Skip to navigation Skip to collection information

OpenStax-CNX

You are here: Home » Content » Microcontroller and Embedded Systems Laboratory » Introduction to CrossStudio MSP430 IDE

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 and collection are included inLens: Texas Instruments MSP430
    By: Texas Instruments

    Comments:

    "Basic introduction to microcontroller-based embedded systems development. Includes structured laboratory exercises in the following areas: assembly programming, C language programming, peripheral […]"

    "A quickstart tutorial to the CrossStudio MSP430 IDE. Learn how to create a project, edit files, build solutions, and use the debugger."

    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.
 

Introduction to CrossStudio MSP430 IDE

Module by: Kileen Cheng. E-mail the author

Summary: A quickstart tutorial to the CrossStudio MSP430 IDE. Learn how to create a project, edit files, build solutions, and use the debugger.

Figure 1
CrossStudio MSP430 IDE
 CrossStudio MSP430 IDE  (screenshot.jpg)

Motivations

To develop applications to run on the MSP430 chip, we use the CrossWorks MSP430 IDE (integrated development environment). Not only does this application provide a powerful code editor, but it also allows a simple one-click deployment of the source code onto the MSP chip using USB as well as hardware debugging capabilities that allow you to trace through actual stack calls. This module is intended to get your started using CrossWorks quickly so that you may begin building your own MSP430 applications!

Create a Project

The very first thing you must do before you can start downloading any code onto the MSP, is to create a project in CrossStudio that will contain all of the relevant files for your application. Select File->New->New Project and the New Project dialog will appear. By default, the Standard Projects project type will be selected in the left window pane and you will see templates such as Project Wizard, Executable, Library, etc. Select the Project Wizard template within the Standard Projects project type. Enter in a name in the text field and make sure the location field is set to the correct directory for this project.

Figure 2: In the Standard Projects project type folder, select the Project Wizard template to create the workspace for your application.
Project Creation Wizard
 Project Creation Wizard (wizard.jpg)
If you have an existing solution loaded, then you can put the project into that solution or create a new solution. Don't worry if you do not know what a solution is, as it will be covered later in this tutorial. Click OK to create the project.

The project wizard will now guide you through creating your project. You will see a dialog box in which you need to customize the project based on the processor and project type.

Figure 3: Make sure you choose the right processor for your application! Here, I've selected the MSP430F169 since that is the chip I plan to use.
Adding Your Project
 Adding Your Project  (addproj169.jpg)
Click next and finish creating the project. The project explorer will now show the solution and the project you have just created. You'll notice that the project name is highlighted -- this is now the active project and subsequent build and debug operations will use this project. If you have more than one project then you can set the active project using the combo box on the build toolbar or the context menu of the project explorer.

Adding Files to the Project

If your project consists of more than one file, you will need to add it to the current project. To create a new file, go to Project->Add New File... If the file already exists, then choose Project->Add Existing File...

Building the Solution

The CrossStudio compiler allows you to have multiple projects in different configurations all residing in a given solution. Usually, the projects differentiate themselves as a debug build or as a release build. Debug builds will have different compiler options. Configurations can also be used to produce variants of software. For example, a library could be built for several different hardware variants. Note that configurationsn inherit properties from other configurations, enabling a single point of change for definitions that are common to configurations. A particular proplerty can be overriden in a particular configuration to enable configuration specific settings.

Upon creation of a solution, the Debug and Release configurations are generated automatically.

Setting Heap Size

The next important step that you must take is to make sure that there is heap available for the project to use. By default, there is no heap allocated. If your program will be mallocing and freeing memory dynamically, then you will need to change the heap size to a more appropriate value. To do this, choose menu item Project->Properties... You will then see a dialog box with various project options. In the left pane, click on your solution and then the linker tab on the right pane. There will be a Heap Size category that you can click on to change. The MSP430 has up to 2000 bytes of RAM that can be allocated for the heap.

Figure 4: By default, the heap size is set to zero. Here, I have increased it to 600 bytes.
Changing the Heap Size
 Changing the Heap Size (solutionheap.jpg)
The heap size is an option that is set for a given solution and thus applies to all projects that are contained within a solution. Keep this in mind if your solution contains multiple projects.

Connect to the Target

Before any of the code can be executed, you need to first connect to a target. Make sure the board is connected via USB to the computer.. Then, go to Target->Connect MSP430 USB CrossConnect. CrossStudio should be able to connect rather quickly to the MSP. If the application hangs, then check that the USB connection is secure, that the programming cables are plugged in correctly, and that power is being supplied to the device. If problems continue, try resetting the device, unplugging everything for awhile, and starting over again.

Run Your Program!

This is the part you've been waiting for: actually testing your program! Use the Debug -> Start Debugging menu item to load the currently active project and set your program running. You can also set any breakpoints beforehand; by default, there are no breakpoints set by the debugger.

You can pause the debugger when the target is running if you would like to look at the value of certain variables. Select Debug -> Break and open a watch window to examine the value of certain variables. It is suggested that you copy the variables you are interested in to temporary global variables. Because local variables go out of scope, it is uncertain if their correct value is maintained when the debugger is paused.

Debugging can be stopped using Debug -> Stop. At this point, the watch window will not display your variable values. At this point, I would suggest that you make any modifications to your program as necessary and restart the debugger from the beginning. It is possible to resume debugging by using Debug -> Go, but it is not recommended.

Good luck!

You're all set to start using the CrossStudio compiler to write embedded microcontroller code.

Collection Navigation

Content actions

Download:

Collection 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 ...

Module as:

PDF | More downloads ...

Add:

Collection 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

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