Eclipse IDE with MSPGCC
As a primary statement it must be noted that TI also provides an
Eclipse-based environment, named Code Composer Essentials (CCE). A
version with an 8 KB binary limit is free of charge. However,
the JTAG communication is not very reliable. This is a known problem
at TI. They are willing to improve CCE, but currently (end of 2005)
no time resources are planned for doing this. As of january 2006 CCE
still is living in version 1.0.
Meanwhile, Eclipse has been evolved further and today good universal
support for embedded systems is present (i.e. configuration
capability for debug sessions). So, debugging MSP430 programs within
standard Eclipse is possible yet. The only drawback is the lack of a
comprehensive view of peripheral registers (which is definitely an
advantage of CCE). And there is a lack of comfort with handling the
Development process: A so called proxy program must execute in order
to convert GDB debug commands into a communication flow with the JTAG pod.
Of course, CCE provides a compiler from TI. It is said that Gnu is
not as good with floating point operations, but in general the Gnu
compiler for the msp430 is excellent. Moreover, header files are very
well organized. There are separate header files for each peripheral
unit, and these are included in derivative specific header files.
Compared to other vendors this is advantageous, because an update in
a certain peripheral header file inherently affects all derivatives.
The compiler that goes with CCE provides absolute references to
variables (e.g. peripheral symbols) using a linker command file. This
is a clean solution, formally better than e.g. "unsigned char
p3out @ 0x0070", because this sort of references make compilers
less ANSI-compliant. However, it is better to have it the usual way,
because it is simpler to define aliases of the same symbol, e.g. with
byte access or with bit access (using a struct). With the CCE
compiler, header file(s) and also the linker command file must be
altered to accomplish this.
Installation Preparation
The following files must be downloaded prior to starting any
installation (the versions are given as of january 2006):
-
Eclipse IDE V3.1, at eclipse.org
(approx. 30 MB). With this resource, Eclipse is able to handle
Java projects (which was the original target of Eclipse). Eclipse
itself is written in Java. It is assumed that a Java runtime system
is already present.
-
CDT plugin package V2.1 (handles C projects) in a modified version
optimized for embedded systems, at zylin.com.
According to the information at this link location, two files must
be downloaded (click on "latest snapshot", then load
embeddedcdt-{datecode}.zip (approx. 12 MB) and
zylincdt-{datecode}.zip (approx. 80 KB)). The page provides some more information.
With these downloads, a universal embedded debug system can be
established for a wide range of controllers. Within an eclipse
session it is possible to maintain more than one project for
different targets, with different compilers.
Eclipse installation
Eclipse need not be "installed" (but you may also have
downloaded an executable that does a normal installation). Simply
unzip the eclipse file (e.g. eclipse-platform-3.1.1-win32.zip). and
place the files at a suitable location for storage of programs.
Create a link to eclipse.exe on your desktop etc.
Principally, eclipse can be started now. However, yet it would not
handle C-projects.
CDT installation
Installation of embeddedCDT only requires that files be copied to the
"features" and "plugins" directory of your
eclipse program directory. The unzipped EmbeddedCDT consists of these
two directories, so copying to the proper location is easy.
ZylinCDT must also be unzipped. Here only plugin files are present.
These must be copied to the plugins directory of your eclipse program location.
When eclipse was running during these actions, close it and reopen
eclipse again. The features and plugins are recognized now.
MSPgcc installation
This file is downloaded as executable. Start this one, and a
comprehensive installation procedure is started. By end of an
installation one must add (at least inspect) the binary path of
mspgcc to autoexec.bat (W98) or the path environment variable.
This installation also contains a copy of cygwin1.dll, a necessary
cygwin resource. When a cygwin system already resides on your
computer, problems might arise. But that can be solved by specifying
the proper cygwin1.dll.
A make program is also included. When another make program is present
on your system, this may have priority in the path search order of
windows and hence can cause problems. A solution to this problem is
presented in the tutorial.
Installation has been completed now. Next page, a tutorial from the
beginning of a project until debugging is presented. |