- Important information
- New features
- Known problems
- Program corrections
- User guide corrections
- Miscellaneous
- Release history
Important information
This release includes version 2.4.3.0 of the msp430.dll.
Support for the IAR J-Link and SoftBaugh USBP debug probes has been removed in this release.
USB drivers for TI USB FET debug modules
The installation program automatically installs the correct USB driver for the TI USB FET module, depending on your host operating system. Drivers for the following operating systems are included in the product installation in the directory430\drivers\TIUSBFET
:
Windows XP 32/64, Windows Vista 32/64, Windows 7 32/64.On Windows Vista 32/64 you must reboot the PC after the installation.
If you need to reinstall the driver for some reason, you can run the program called
InstallDriver32.exe
orInstallDriver64.exe
depending on your host operating system.USB driver installation instructions for Elprotronic debug modules
The USB drivers for Elprotronic debug modules are NOT automatically installed during the product installation. Installation instructions are provided in the installation directory430\drivers\Elprotronic
.- Device-specific files
Look for device specific files for new MSP430 devices My Pages on IAR Systems web site. Here you can find linker command files (.xcl
), device description files (.ddf
), and include files (.h
) for new devices which have been released after this product release.Upgrade information
-
None.
New features
Automatic driver installation
The installation program automatically installs the correct USB driver for the TI USB FET module depending, on your host operating system. The following operating systems are supported:
Windows XP 32/64, Windows Vista 32/64, Windows 7 32/64.The debug protocol for the FET debugger is now automatically selected. The debugger will detect if Spy-Bi-Wire or 4-wire JTAG should be used.
New C-SPY macros
Two new C-SPY macros has been added;__isBatchMode()
and__targetDebuggerVersion()
. For more information see User guide corrections.Possible to jump from debug log to source
If a entry in the Debug Log window has the following format:
<path> (<row>):<message>
or
<path> (<row>,<column>):<message>
you can double click the row to open the file and go to the row and column in the text editor.
Debugger driver specific information
Simulator
- None.
FET debugger
-
Breakpoints
There is a limited amount of hardware breakpoints available. When all available hardware breakpoints have been used, the FET debugger can use virtual breakpoints. This means that you will be able to set an unlimited number of breakpoints. The performance of the debugger will however be reduced as the debugger is forced to enter single-step mode as soon as the first virtual breakpoint has been set.If you are using the CLIB library, the debugger will set breakpoints on the exit label, and if terminal I/O is used, a breakpoint will also be set on the putchar/getchar label. It is possible to turn of the reservation of breakpoints on the exit and putchar/getchar labels. This can be done in the Flash Emulation Tool options dialog box.
If you are using the DLIB library, the debugger will set a system breakpoint on the
__DebugBreak
label. You cannot dissable this behaviour. -
The Run to option
The Run to option (available on the C-SPY setup options page) requires one breakpoint. If all hardware breakpoints have already been used, a virtual breakpoint will be set even if the use of virtual breakpoints has been turned off. This will force C-SPY into single-step mode and may, depending on the application, make the time to get to the specified location very long. -
In the list below the number of available hardware breakpoints and Enhanced
Emulator features are listed for each group of devices.
Device
Breakpoints
(N)Conditional
BreakpointsRange
BreakpointsClock
ControlState
StorageTrace
BufferAdvanced
TriggerMSP430F11x1 2 MSP430F11x2 2 MSP430F12x 2 MSP430F12x2 2 MSP430F13x 3 X X X MSP430F14x 3 X X X MSP430F15x 8 X X X X X X MSP430F16x 8 X X X X X X MSP430F20xx 2 X MSP430F21xx 2 X MSP430F22xx 2 X MSP430F23x 3 X X X MSP430F23xx 2 X MSP430F24x 3 X X X X MSP430F241x 8 X X X X X X MSP430F261x 8 X X X X X X MSP430F41x 2 X MSP430F42xA 2 X MSP430F42xx 2 X MSP430F43x 8 X X X X X X MSP430F43x1 8 X X X X X X MSP430F44x 8 X X X X X X MSP430F47xx 2 X MSP430F5xx 8 X X X X X X MSP430F66xx 8 X X X X X X MSP430FE42x 2 X MSP430FE42xA 2 X MSP430FG42x0 2 X MSP430FG43x 2 X X MSP430FG46x 8 X X X X X X MSP430FW42x 2 X - J-Link JTAG interface connector signals
Pin Name Function 1 TDO JTAG data output from target CPU 2 VCC Target supply voltage, may be delivered from J-Link 3 TDI JTAG data input of target CPU 4 Vsense Target voltage sense, used to measure target voltage 5 TMS JTAG mode set input of target CPU 6 not connected 7 TCK JTAG clock signal to target CPU 8 TEST Mode selection signal, used for some target CPUs 9 GND Common ground 10 not connected 11 RESET Target CPU reset signal 12 not connected 13 not connected 14 not connected
Target CPU board may be supplied from J-Link via pin 2. Some target boards may require modification: If the target supply voltage is not applied to pin 2, the target board cannot be supplied by J-Link. This may require that pin 2 and 4 have to be connected on the target board if the supply voltage of the target is connected to pin 2.
- Emulator Clock Control dialog bit meanings for MSP430F54xx devices
Bit# |
31 - 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
Current Implementation |
|||||||||||||||||
Meaning |
N/A | MCLK on Pin |
SMCLK on Pin |
ACLK on Pin |
ADC | Flash Cntrl. | USART1 | USART0 | Timer Port | 8bitTimer Counter |
LCD freq. | Basic Timer | TimerB | TimerA | WDT | ||
5xx Interpretation |
|||||||||||||||||
Meaning |
Reserved | ADC12_A | RTC | USCI3 | USCI2 | USCI1 | USCI0 | TA5 | TB7 | TA3 | WDT_A | ||||||
|
|||||||||||||||||
Default setting applied by debug DLL for F5438 | |||||||||||||||||
bin |
x | x | x | x | 0 | 1 | 0 | 0 | 0 | 0 | x | 1 | x | 1 | 1 | 1 | |
hex |
0 | 4 | 1 | 7 |
Known Problems
EW21236: The graphical stack bar that you set up on the Tools>Options>Stack page does not work correctly with devices with a mirrored RAM when the lower memory range is used in the linker configuration file.
EW21159: The Edit>Navigate>Go to definition command does not jump to the corresponding definition of a function if the
__data20
memory attribute is used on any of the function parameters.EW21096: The debugger can in some rare case crash with an "Unknown exception in drive(#E6)" when C-SPY macros are used for external communication.
EW20818: It is not possible to download a msp430txt output file using cspybat.
- EW20579: The IDE might get unresponsive if you unplug the USB-FET cable during a debug session.
- EW19351: If there should be if verify errors during download, C-SPY fails to start the debug session.
- EW18638: In code like in the example below:
void main(void) { int i = 0; i += 1; #include "FileWithCode.c" i += 1; }
variablei
will not be shown in correctly in Locals/Watch/Quickwatch windows while executing code fromFileWithCode.c
. - EW17964: It is not possible to combine a register write trigger to any other defined trigger.
- EW17957: Some interrupts with multiple sources, like ADC12, have interrupt vector registers like ADC12IV. These registers will not be set according to the triggered interrupt. As a result the interrupt simulations for those modules are not as useful. The simulation of TimerA1 and TimerB1 can handle multiple interrupt sources.
- EW17527: If an application uses the same variable name for a static
variable in more than one function, the debugger will not be able to display
the variable in the watch window while debugging one of these functions.
As a workaround, use
<function name>::<variable name>
in the watch window and the variable will be visible independently of which function currently is being debugged. - EW17284: The Watch window is not able to display a structure if the structure has the same name as its type.
- The J-Link USB debugger driver does not work on Win98 and WinME.
- If you modify a breakpoint that is used by the sequencer, this breakpoint will be disabled. Therefore, to enable the breakpoint in the sequencer, open the Sequencer dialog box and add it again.
- EW14622: If the sizeof operator is used in the watch window on a
character array e.g.
char str[] = "test"
, thensizeof str
will not be 5 as expected, but the size of a character pointer. The array literal is implicitly (and inappropriately) converted to a pointer to the first element before the size is computed.
- EW14134: Setting breakpoints on CPU registers is not supported. Now, the simulator will report an error on an attempt to do so.
- EW11699: When using
_OPC()
, the debug information becomes incorrect if the instruction is 4 or 6 bytes.
Program Corrections
version 5.10.1
EW21663: When using the option Use Extra Images with the FET debugger, the code was sometimes not downloaded properly. This has been corrected.
EW21611: Using Terminal I/O and the function
printf
could on some rare occasions reset the program. This has been corrected.EW21609: When using the
jmp
instruction at addresses higher than 0xFFFF, the highest bits were not always saved properly when an interrupt occured. This has been corrected.EW21587:State storage now works when the FET debugger is started without code download.
EW21585: The ADC12 interrupt simulation was not working correctly; once it was triggered, it remained triggered. This has been corrected.
EW21584: The Function Profiler reported cycles as if they occurred in the last function even after it had returned. This has been corrected.
EW21559: There is no longer a discrepancy between the Live Watch window and the Watch window when writing to an SFR register.
EW21546: It is now possible to assign a value to the PC register from a C-SPY macro.
EW21531: Breakpoints are now restored when a forced hardware reset is initiated from the IDE. However, if the application initiates a forced reset, the debugger can not restore breakpoints.
EW21519: Opening the context menu in the Editor window no longer produces strange error entries in the Debug Log window.
EW21419:If you exited the debugger while the application was running and the option Leave Target Running had been selected, an incorrect stack treshold exceeding warning was issued.
EW21369: When using the option Forced hardware RST/NMI, the debugger did not stop on breakpoints. This has been corrected.
EW20730: TI eZ430 kits now work with the USB-FET and IAR Embedded Workbench also on HP computers.
version 4.21.8
Writing to peripheral registers failed on the CC430Fxxx family of devices, because wrong memory address space had been specified in the
.ddf
file. This has been corrected.
version 4.21.7
EW21375: A problem with erasing memory on small F54xx(A) and F54xx devices at addresses above 0x30000 has been corrected.
EW21335: When breakpoints are used in a system with a cyclic interrupt, the debugger no longer stops in the interrupt service routine instead of at the breakpoint.
version 4.21.6
EW21388: Writing to peripheral registers failed because the wrong memory address space had been specified in the
.ddf
file. This has been corrected.EW21377: The register SYSBERRIV was incorrectly included in the register description for MSP430F5438 and MSP430F5438A. It has been removed so that it no longer causes the debugger to stop the execution when the Register window is displayed.
EW21349: When an interrupt occurs with a PC larger than 0xFFFF, the simulator no longer uses an address to the interrupt service routines that incorrectly also is above 0xFFFF. The interrupt service routines are always located below 0xFFFF.
User guide corrections
The corrections below refer to the PDF versions of the user guide MSP430 IAR Embedded Workbench IDE User Guide, U430-6. The information in the PDF file is, in the event of any differences, more accurate than the printed user guide and the online help files.Loading multiple images
Normally, a debuggable application consists of exactly one file that you debug. However, you can also load additional debug files (images) after a debug session has started. This means that the complete program consists of several images.
Typically, this is useful if you want to debug your application in combination with a prebuilt ROM image that contains an additional library for some platform-provided features. The ROM image and the application are built using separate projects in the IAR Embedded Workbench IDE and generate separate output files.
Follow these steps:
- To load an additional debug file in the IDE, choose
Project>Options>Debugger>Images.
To load an additional debug file from the command line,
use the __loadImage system macro.
- To display a list of loaded debug files, choose Images from the View menu. The Images window is diplayed.
If more than one image has been loaded, you will have access to the combined debug information for all the loaded images. In the Images window you can choose whether you want to have access to debug information for one image or for all images.- To load an additional debug file in the IDE, choose
Project>Options>Debugger>Images.
To load an additional debug file from the command line,
use the __loadImage system macro.
Part 6, IAR C-SPY FET Debugger, C-SPY FET-specific debugging, Attach to running target, page 205
The procedure for using Attach to running target should be:- Disable the option Attach to running target on the debugger options page
- Start the debugger using the Download and debug button.
- Verify that the command Leave target running is selected on the Emulator menu.
- Start the application.
- Stop the debugger.
- Select the Attach to running target option
- Disable the Run to main option.
- Start the debugger with the Debug without downloading button.
Part 7, Reference Information, The C-SPY Command Line Utility - cspybat, Using C-SPY in batch mode, page 413
In the example for how to start cspybat using the FET debugger, the option-d
is missing. The example should be like:
EW_DIR\common\bin\cspybat EW_DIR\430\bin\430proc.dll
EW_DIR\430\bin\430fet.dll PROJ_DIR\myproject.d43 --plugin
EW_DIR\430\bin\430bat.dll --backend -d fet -B --connection ti_usb
--derivative msp430F449 --erase_main_and_infoPart 7, Reference Information, C-SPY macros reference, C-SPY system macros, page 434
__loadImage
Syntax:__loadImage(filename, suppressDownload)
Description
Loads an image (debug file).
Parameters
filename The debug file to be loaded. The filename must include a path, which must either be absolute or use argument variables. suppressDownload A non-zero value if no code or data should be downloaded to the target system, which means that C-SPY will only read the debug information from the debug file. Or, 0 (zero) for download.
Return value
Non-zero integer number - A unique module identification.
int 0
- Loading failed.
Part 7, Reference Information, C-SPY macros reference, C-SPY system macros, page 434
The following C-SPY system macros have been added:__isBatchMode()
Description: It returns true if the debugger is running in batch mode, and false otherwise.
Syntax:__isBatchMode();
__targetDebuggerVersion()
Description: It returns the version of target debugger in form of a string.
Syntax:__targetDebuggerVersion();
Example:__var toolVer; toolVer = __targetDebuggerVersion(); __message "Target debugger version is: ", toolVer;z
Miscellaneous
Nothing.
Release history
v 4.21.2 - 2009-09-01
Program correctionsEW21060: It is now possible to place the application in RAM when using the C-SPY Simulator.
EW20939: The IDE no longer freezes when the Watch window displays floating-point numbers within a certain range.
EW20889: The tooltip functionality now works as expected for all floating-point variables.
EW20838: If Attach to running target is selected when starting the debugger with Download and debug a warning will now appear and no downloading will occur.
EW20836: The IDE no longer hangs during download to the debugger when the option Retain unchanged memory is used and the application code is crossing the 64K boundary on a MSP430X device.
EW20804: The debugger no longer crashes when a conditional breakpoint is set and the debugger session is stopped while the application is running.
64-bit device drivers for the TI FET USB tool are now included in the product installation. Drivers for the following systems are included:
Windows XP 32/64, Windows Vista 32/64, Windows 7 32/64.Debugging multiple images
C-SPY is now capable of debugging several independently built images during one debug session. Under Project options>Debugger>Images you specify the location of the images to be downloaded in addition to the current application. There is also a new debugger window called Images where you select for which application debug information shall be displayed.Auto refresh in the debugger memory window
The debugger memory window can be refreshed during program execution, both manually and periodically.New cspybat features
These new features have been added to cspybat:- code coverage
- download only mode
- timeout option
New C-SPY macro
__delay(milliseconds)
Note: C-SPY macro
__loadModule(filename, suppress)
has been renamed to__loadImage(filename, suppress)
v 4.20.1 - 2008-12-08
Program corrections- EW20658: The IDE now prevents that a conditional breakpoint is set on a register before the debugger has been started.
- EW20527: The value of 64-bits large double numbers could be incorrectly displayed when using the default display format. This has been corrected.
- EW20513: The interrupt table has been corrected for MSP430F247, MSP430F248, MSP430F249, and MSP430F2410.
- EW20377: The BSL flash memory option is now disabled when using J-Link.
- EW20260: It is now possible to change the values of special function
registers in the Registers window also in the range above
0x01FF
.
- Advanced cycle counter for MSP430F5xx
The advanced cycle counter on MSP430F5xx devices is now supported. The support includes a number of predefined application examples. For more information, see the MSP430 IAR Embedded Workbench IDE User Guide. - Symbols window
A new Symbols window has been added to the C-SPY debugger. It displays the complete list of symbols used within the project. In contrast to the Source Browser, the list of symbols is not based on project source files but is retrieved from the debug information. This means that it also lists symbols from libraries for which you do not have the source for. It also lists assembler labels, which are not conveniently visible in any other window. - Start the debugger without download
You can now start the debugger with or without downloading code, using two new buttons on the toolbar or two new entries in the Project menu. There are also two new corresponding ways to restart the debugger during the debug session. - A new argument variable
$CONFIG_NAME$
has been added. It expands to the name of the current build configuration, for exampleDebug
orRelease
. - A new editor window context menu command Set Data Breakpoint for 'xxx' sets data breakpoints on variables with static storage duration.
v 4.11B - 2008-07-10
Program corrections- EW20055: In some cases, evaluating variables of the type complex structures, for example via ToolTip, could lead to an abnormal termination of the IDE session. This has been corrected.
- EW19968: Some register names in the ddf files for MSP430F2132 and MSP430FG4270 have been corrected.
- EW19950: A problem with identifying the device when a MSP430F2617 was used has been corrected.
- EW19941: The "New Breakpoint..." dialog box would occasionally become too large, partially hiding window contents. This has been corrected.
- EW19901: A problem that caused the debugger to freeze at an invalid memory address (using MSP430X) has been corrected.
- EW19900: In some environments the IAR Embedded Workbench IDE could crash when the C-SPY debugger was started.
- EW19824: The IDE could in some rare cases terminate when the value of a variable was changed using the Locals window.
- EW19787:
An unknown exception in driver (#E6) could occur when the the macro
__orderInterrupt
was used when running CSpyBat. This has been corrected. - EW19782: The problem when unplugging the target device from the JTAG port has been corrected.
- EW19770: When using MSP430F2417 an error occurred: "Chosen derivate and actual hardware do not match", this has been corrected.
- EW19583: A problem related to connecting to the MSP4304619 through CSpyBat has been corrected.
- EW19497:
Previously the IAR Embedded Workench IDE crashed when starting the debug
session using the
EEM_examples
with conditional breakpoints enabled. This has been corrected.
- Memory Window save/restore in TI-TXT format
It is now possible to save and restore the content of the Memory window in TI-TXT format. - Support for MSP430F5xx BSL memory
It is possible to enable erase/write access to the Bootstrap Loader (BSL) flash memory. Use the option Allow erase/write access to BSL flash memory on the FET Debugger>Download options page.
V4.10E patch release 2008-02-14
- EW19900: In some environments the IAR Embedded Workbench IDE could crash when the debugger was started.
4.10A 2007-09-27
Program corrections
- EW19610: A step over operation in the simulator could in some rare cases make the IDE to close down. This has been corrected.
- EW19560: Static variables could in some cases not we displayed in the watch window. This has been corrected.
- EW19418: A problem related to the system macro
__clearBreak()
has been corrected. - EW19319: The end address of the RAM area has been corrected in
the file
msp430F2232.ddf
. - EW19286: The forced interrupt functionality now always generates an interrupt.
- EW18846: Forced interrupts now work as expected.
- Support for debug modules from Elprotronic and Olimex has been added in the C-SPY FET debugger.
- Support has been added for the 32-bit HW multiplier.
- The different breakpoint types in the FET debugger are now displayed with different symbols in the editor window.
- TimerA1 and TimerB1 are now simulated when the C-SPY simulator is used.
3.42B 2007-01-24 (patch release)
- EW18760: The size limitation was incorrect in the simulator and in the FET debugger driver. This problem only existed in the Baseline edition.
3.42A 2006-12-07
Program corrections
- EW18102: On a 430X device it was not possible to erase only main memory when downloading to flash. It was only possible to erase 'main and information memory'. This has been corrected.
- Support for multiple TI USB FET modules
It is now possible to attach multiple TI USB FET modules to a PC and select from the IDE which module to use in a debug session. - Statics watch window
The Statics window displays the value of variables with static storage duration, typically variables with file scope, but also static variables in functions and classes. - Symbolic Memory window
The Symbolic Memory window (similar to the Stack window) displays how variables with static storage duration are laid out in memory. - Improved breakpoint display
Breakpoints are now displayed in the editor window using different icons depending on the breakpoint type. Information about a specific breakpoint is displayed in a tool tip. - Memory save/restore
Transfers memory contents from/to a file. Restoring from file recognizes format automatically, saving to file requires specifying of format; available are intel-extended or different motorola format variants. This functionality is available from the Debug>Memory menu or through the Memory window context menu. - µC/OS-II Kernel Awareness Plug-in in C-SPY
The µC/OS-II kernel awareness allows you to display µC/OS-II's internal data structures in a convenient series of windows integrated with the C-SPY debugger. This provides you with information about each of the active tasks in the target application, about each semaphore, mutex, mailbox, queue and event flag group along with a list of all the tasks waiting on these kernel objects, and more. - Support for debug modules from SoftBaugh
Support for the debug modules USBP, USBP-PRO, and FETP from SoftBaugh has been added in the C-SPY FET debugger. - Exporting command line for CSpyBat
C-SPY now generates a file with helpful information that can be used to run the debugger from the command line using the CSpyBat utility. Every time the debugger is initialized (technically, it happens when a project is loaded and when terminating a debug session) a.bat
file is generated that can be used almost without changes to start CSpyBat from the command line with the same settings as in the IDE. The file is generated as$PROJ_DIR$\settings\projectname.cspy.bat
3.41A 2006-04-13
Program corrections
- EW17848: Run to main did not work when main label was located in the upper memory on MSP430X devices.
- EW17847: The hardware was reset if the PC register was changed in the register window when a MSP430X device was used.
- EW17846: The status dialog box did stay for ever on the desktop during the flash erase programming if the erase or programming got disturbed (for instance by an reset).
- EW17843: The settings for the Stack plugin are now saved with each project, so it is possible to maintain different settings for different projects.
- EW17748: The simulator was stopped if the OSCOFF bit was set. This is not the case on a normal device.
3.40A 2005-12-19
Program corrections
- EW17425: The C-SPY setup macro
execUserPreload()
was incorrectly executed before the hardware was initialized which could generate the message 'Unknown exception in driver'. - EW17417: The FET debugger now supports the MSP430F20x and MSP430F21x devices.
- EW17002: In debugger windows, bitfields are now shown with the correct value, instead of the value of the whole encompassing integer.
- EW16852: The simulation of the hardware multiplier in the simulator was incorrect.
- Spy-Bi-Wire
The 2-wire JTAG debug interface, also referred to as the Spy-Bi-Wire interface, is now supported by the C-SPY FET debugger. Spy-Bi-Wire works for the parallel port FET module and the TI USB FET module. - Stack window
To monitor the memory consumption and the integrity of the stack, a new Stack window has been added. It shows the stack contents as raw data, C/C++ variables, and function frames. It also shows current and maximum stack consumption graphically. Warnings can be issued when the stack exceeds a certain level or if the stack pointer points outside the stack memory. - New breakpoint category - Log breakpoint
Log breakpoints make it easy to log messages whenever execution passes a certain code location, without having to add any code to your application. When a log breakpoint is triggered, it displays a message in the Debug Log window and continues execution. - New way to toggle breakpoints
You can now set or clear a breakpoint by double-clicking in the left margin of the editor window where the breakpoint location is marked by a red X. If there is more than one possible breakpoint location in the source line, the breakpoint is placed on the first location. - Attach to running target
It is possible to attach the FET debugger to a running target without reseting the target. The FET debugger>Setup page now contains the additional optionAttach to running target. This option must be disabled when you download the application the first time. You can then stop the debug session, select the option and attach to your running target. - Display of assembler variables
By using the Show As command, available from the context menu in watch-type windows, you can select a different type interpretation of a variable than the one used by default. This command can be used on any variable, but typically, it is useful for assembler labels as they by default are treated as variables of typeint
. - Trace
A new trace mechanism is available in the simulator. - Enhanced Memory Access Setup
You can now set up memory access check automatically by using segment information from the UBROF input file. This set up can be made in the Memory Access Setup dialog box available on the Simulator menu. - embOS C-SPY plug-in
A C-SPY debugger plug-in for the embOS realtime operating system from Segger Microcontroller Systems is included in this release. The plug-in provides embOS awareness during debugging sessions and enables you to inspect the state of several embOS primitives such as the task list, resource semaphores, mailboxes, or timers. A MSP430 specific example application is also included in the installation folder 430\src\exampels\Segger\embOS. For more information see embOS plug-in for IAR Embedded Workbench. - The Memory window now displays "--" for each individual memory unit that cannot be read-accessed, as opposed to the whole row.
- It is now possible to turn off the memory cache in the FET debugger. Select Disable memory cache available on the Project>Options>FET Debugger>Setup page.
3.30A 2005-04-18
Program corrections
- EW16146: The Advanced button in the Clock Control settings dialog had inverted functionality.
- EW16148: The Location field in the Watch window was not correct for a variable located in a register in the CPU register area (such as R15).
- EW16187: The pending bit is no longer automatically cleared for
PORTx_VECTOR
interrupts. The interrupt service routine must check the pending bit in the port register. It is also up to the interrupt service routine to clear the pending bit. Example:#pragma vector=PORT2_VECTOR __interrupt void Port_2(void) { if ((P2IFG & BIT0) != 0) { /* P2.0 triggered */ P1OUT ^= BIT0; } P2IES ^= BIT0; P2IFG &= ~BIT0; }
- EW16327: Changing a variable in the watch window (after the emulator stopped on a breakpoint) could make the emulator crash.
- EW16371: Init new device in the Emulator menu did not reset the memory cache.
- An update mechanism has been added which makes it possible to automatically update the firmware of the TI USB FET if necessary.
- Support has been added for the System Protection Module A (SPMA). The SPMA module provides read-out protection of internal resources, most notably of the internal program memory. This module is only available on TMS430 devices.
3.21A 2004-10-20
Corrected problems
- EW15385: The Break button on the Debugger toolbar could indicate that the debugger was still running even after the execution had completed.
- EW15672: The memory layout could not be loaded from the device description file on targets with memory zones smaller than 256 bytes because the cache page size was 256 bytes. The cache page size has now been changed to 128 bytes.
- EW15760: The lock bit (
FCTL3.LOCK) was left at 0 even if it was 1 before a write operation. The value it had before the write operation will now be restored.
- EW15761: Writes to flash are done via a cache buffer in the debugger. This cache was only flushed to the actual flash on the target before step or go. If the debugger was shut down before any step or go had been performed, the values in the cache were not written to the flash memory. The cache is now flushed before the debugger shuts down.
- EW15762: When a memory write operation was made in the memory window in a write protected memory zone only a "bing" was heard. Now a warning message will be given.
- EW15887: Entering and leaving debugging mode could take longer and longer time for each mode change.
- EW15911: The "Retain unchanged memory" option could fail for devices with main flash memory starting at 0x1100.
- EW15921: When the C-SPY macro function
__driverType()
was used with the FET debugger, it incorrectly returned the value 1 when used with the "sim" string and 0 when the string "emul" was used. - EW15939: In size limited variants of EW430, the debugger incorrectly counted also code originating from assembler source.
- Support for TI USB FET interface module has been added in the C-SPY FET debugger.
- A new breakpoint type, Advanced Trigger, has been added for devices with support for the EEM debug module.
- It is now possible to specify the Target VCC from the FET debugger options page.
- The target VCC can be displayed in the new Device Information window available on the Emulator menu.
- Editing memory in the Memory window now applies to a whole unit (8/16/32). When you start typing, an edit box appears with the contents of the part of the memory you are about to modify. The data is not written until the box is closed.
3.20D 2004-08-12
- EW15727: Even RAM and even INFO flash locations could not be modified using the C-SPY FET debugger with parallel port JTAG.
3.20A 2004-06-18
Program corrections- EW14849: The C-SPY FET debugger could incorrectly report the error "Failed to read PC while stepping" while stepping/running when profiling was activated.
- EW15372: If the device was disconnected while the C-SPY FET debugger was running, the debugger got into an error state where you had to shut down the Embedded Workbench to recover.
- EW15442: The C-SPY FET debugger was not able to write to the information memory area if the option Retain unchanged main memory was used and the device only had 128 bytes of information memory.
- EW15552:Incorrect values was displayed in the Watch and the Live Watch windows when J-Link to connect to a development board with a MSP430F169.
- Support for the J-Link USB-driven JTAG debugger has been added.
3.10B 2004-03-29
Program corrections- A problem related to the option Release JTAG on Go and disconnecting the device has been corrected.
3.10A 2004-03-04
Program corrections-
EW14752: The file
driverx.vxd
was not updated with the new version of the driver when EW430 version 2.21B was installed on a Windows 98/Windows ME PC. -
EW14784: The
__orderInterrupt()
C-SPY macro was not returning an unique value. - EW14844: Toogle breakpoint did not work in a debug project, if the source files did not have the same letter case in the Windows file system and in the make file. An additional breakpoint was set on the same location for each toggle attempt.
- EW14849: The FET debugger could report the error "Failed to read PC while stepping" while stepping/running when profiling was activated.
-
Smart display of STL containers at debugging
Allows objects in STL containers to be viewed and manipulated. -
New auto-display debugger window
Displays currently active variables and objects. -
Extended Clock Control
Support for Extended Clock Control is now available on the Emulator menu. It makes it possible to control the available clocks on peripheral module level. This functional requires that Extended Clock Control is supported by the device. -
LCD display
A LCD display window available on the View menu. -
Improved breakpoint configuration
It is now possible to set breakpoints and to configure breakpoints, sequencer and state storage settings while the emulation is running. -
Forced Interrupt
A new possibility to generate instant interrupts has been added to the C-SPY Simulator. The Forced Interrupt window available from the Simulator menu makes it possible to force an interrupt instantly just by selecting it in alist of all available interrupts and pressing a button. -
Trip cycle counter
Two trip cycle counter registers have been implemented in the Register window. They can be used for measuring the number of cycles for a specific function or code sequence.
2.21B 2003-11-14
Corrected problems- EW14635: The FET debugger could crash if a Step into command was followed by a Step out in a quick sequence.
- It is now possible to make configurations to breakpoints, the state storage functionality and the sequencer during emulation.
2.21A 2003-10-17
Program corrections- EW13634: The debugger will be forced to single step even if the use of virtual breakpoints has been turned off. This happens if the Run to option is enabled and all available hardware breakpoints are used. The debugger will then single step through cstartup to the specified location, causing the system start or a reset to take a very long time. The debugger will now ask you if you want to execute or stop at the first location. If you select execute, the debugger still is forced to singel step.
- EW14146: The size of a selection in the Memory window was incorrectly displayed in the status bar. This has been corrected.
-
EW14192: Evaluating expressions containing recursive preprocessor
macros (such as
#define foo var.foo
) could make the debugger freeze. - EW14228: The simulator will now warn you about word access on an odd address. This can be turned off in a new simulator option page on the C-SPY options page.
- EW14282: A program error where unnamed union members were not properly displayed has been corrected.
- EW14444: The definition of ME2 in msp430f149.sfr has been corrected.
- EW14452: When the Reset button was hit in C-SPY, some instructions were incorrectly executed before the H/W was reset.
- EW14478: When the debug session starts, random values are now written to R4-R15 and to the RAM memory (specified in the DDF file) to make the simulator more hardware accurate. After a simulator reset, the program counter is initialized with the reset vector, the status register and cycle counter are zeroed and the SFR will be initialized with the values in the SFR file.
- A problem with register breakpoints has been corrected.
- The state storage settings are now saved between debug sessions.
- The debugger will now by default leave the target system running when the debug session is closed. It is possible to change this behaviour by deselecting the Leave target running setting in the Emulator menu.
-
The debugger will be forced to single step during system startup under the
following conditions:
-
the Run to option is used
- there are no hardware breakpoints available
-
the Run to option is used
- Conditional breakpoints can now be set from the context menu the source and memory windows.
- A state storage snapshot functionality is now available in the state storage window. It updates the state storage window with the latest available information.
- It is now possible to edit the values in the stack window.
- The access condition for conditional breakpoints now also have a Read/Write alternative.
- It is now possible to define a bit mask for conditional breakpoints.
- Profiling is now available also in the FET debugger. The debugger must single step during profiling, this makes the debugger run very slow.
2.20C 2003-07-08 (patch release of 430proc.dll)
- EW14170: Singelstepping an interrupt handler could sometimes give an Application Error.
2.20A 2003-05-23
Program corrections- None.
-
New breakpoint types
It is now possible to set range breakpoints and conditional breakpoints on devices that support the Enhanced Emulation Module. For more information see User guide corrections. -
Combined breakpoints
The Breakpoint Combiner makes it possible to combine breakpoints in order to define an exact situation where the execution should stop. This functionality is only available on devices that support the Enhanced Emulation Module. For more information see User guide corrections.
2.10A 2003-02-28
Program corrections-
EW13452: It was not possible to cast a assembler variable in the watch
or quick watch window in a pure assembler project, for example like:
(unsigned int *)#my_var
- EW13508: It was not possible to modify the cyclecounter.
-
Trace functionality
The C-SPY FET debugger supports trace functionallity on devices that include the Enhanced Emulation Module. -
Sequencing functionality
The C-SPY FET debugger supports sequencing functionallity on devices that include the Enhanced Emulation Module. -
Register window
The register window now displays bit information when available. When a device description file is used, the memory mapped peripheral unit registers are also available in the register window. -
Interrupt simulation
The IAR C-SPY simulator for MSP430 now simulates the individual interrupt enable bits in IE1 and IE2. -
Stack window
A stack window has been added to the simulator. This window follows the top of the stack and lets you measure the stack depth.
2.09B 2003-01-31 (beta version)
- EW292: The Memory window contents was not updated after being changed by macros.
- EW245: 'Step'/'Step Into' failed to work properly in highly optimized functions.
- EW11710: Interrupt vector information was missing in a number of the device description files.
-
EW12705: It was not possible to have a watch on the following defines:
#define MAIN_CLOCK 2000000u #define MAIN_CLOCK 2000000uL
- EW13364: An error message "illegal expression" was received in the watch window when an expression with an offset to a pointer on the form pointer[offset] was used.
1.26B 2002-10-11
- None.
1.26A 2002-02-26
-
EW11748: The default interrupt vectors are shown, if no interrupt
vectors are given in the device description file.
-
EW11647: The IAR MSP430 C-SPY did not correctly process the following
instruction flow:
CLR R13 ADD R13,PC
1.25A 2001-11-09
- None.
1.24A 2001-04-06
- 430DT0009: The simulator no longer reads a word from an odd address.
1.23A 2000-10-13
- 430DT0008: Interrupt vector tables in the MSP430_3xx.ddf files have been corrected.
1.22E 2000-06-20
-
The CW GUI has been updated to version 2.31D.
-
The V flag bit was not set to 1 when both operands were negative in the
following XOR instruction
-
c1=c2^c3;
This has been corrected. - All interrupt enable bits in the status register were not cleared after reset. This has now been corrected. [reference DT0005]
- It is now possible to use #SR in the Quick Watch dialog box or in macros. [reference DT0006]
- The instruction ADDC.B @SP+,3(SP) now increments the stack pointer SP by 2 as it should. [reference DT0007]
1.22A 1999-11-25
- A macro which traces stack usage has been added. See the file stack.mac.
- 430DT0003: The interrupt simulation now generates the correct interrupts, controlled by the corresponding enable bits.
- 430DT0002: Bitfield structs no longer cause internal errors when viewed in the Watch window.
1.20B 1999-02-22
- 430DT0001: C-SPY has now been corrected to adapt to the new behavior of ICC430 after the function call bug C0008 was corrected.
-
The following system macros have been added:
- see "Manual corrections and updates".'__go' '__step' '__multiStep' '__autoStep' '__reset' '__calls' '__realtime'
- Count value 0 is not accepted now by '__setBreak()' system macro [reference EW288]
-
__setBreak()
and__clearBreak()
system macros have changed to return error status [reference EW265]