- Important information
- New features
- Known problems
- Program corrections
- User guide corrections
- Miscellaneous
- Release history
Important information
-
If you are using multi-file compilation together with the banked memory model, you must make sure that the size of each multi-file compiled module does not exceed the size of the code bank on the device you are using.
New features
New example for the S8051XC3 device from CAST
An application example for the Terasic DE0-Nano evaluation kit equipped with the S8051XC3 core from CAST has been added.Complementary documentation about device support
A guide which describes how to add support for new devices and how to modify characteristics of already supported devices has been added.
Known Problems
EW23642
If source code lines which are located before a line of code with a break-point set on it are added or deleted, the location of the break-point moves when another break-point is set or removed.
Workaround: Edit the source code while no debug session is active.EW24261
In case General Options>Target>CPU Core: Extended1 is chosen without specifying the General Options>Data Pointer>Page register address, a dialog box with the error: "Fatal error: Option: '--proc_pdata_bank_ext_reg_addr N', N is missing Session aborted!" is shown and the IDE stops responding and needs to be restarted.
Workaround: Make sure that the General Options>Data Pointer>Page Register Address>Bit 16-23: input field contains an address before you press OK in the options dialog box.
Program Corrections
- None
User guide corrections
- None
Miscellaneous
- Nothing
Release history
9.30.1, Dec 2015
New features
C-STAT
The add-on product C-STAT for static analysis is now supported. C-STAT features innovative static analysis that can detect defects, bugs, and security vulnerabilities as defined by CERT and the Common Weakness Enumeration, as well as help keeping code compliant to coding standards like MISRA C:2012/2004 or MISRA C++:2008. For more information, see the C-STAT Static Analysis Guide.New tool for converting Keil µVision projects
A converter tool for porting projects from the Keil µVision environment to IAR Embedded Workbench has been added together with a Migration Guide. Conversion of project files and optionally also C/C++ source code is supported.New examples for Silicon Labs EFM8 devices
Application examples for the EFM8 Busy Bee and Sleepy Bee MCUs have been added.
9.20.3, Oct 2015
New features
Linker configuration files with support for banked XDATA memory has been added for the relevant devices from CAST. The appropriate file must be selected manually in the Project>Options>Linker>Config>Linker configuration file input field.
9.20.1, May 2015
Program corrections
EW22130
The Project>Options>Custom Build>Custom Tool Configuration page is sometimes displayed on top of the OK and Cancel buttons.
9.10.1, Dec 2014
Program corrections
EW21811
Find in files does not work correctly when the language for non-Unicode programs setting in Windows is not set to English.EW24572
The Embedded Workbench crashes when using the $TARGET_BNAME$ argument variable in the Library Builder settings.EW24668
Errors in the header file for the Silicon Labs device C8051F347 (ioC8051F347.h).EW25086
Target devices are selected in the general options using a file browser dialog instead of a more user friendly menu.EW25128
Errors in the header file for the Silicon Labs device Si1034 (ioSi1034.h, definition of DC0CF).EW25129
Errors in the header file for the Silicon Labs device Si1034 (ioSi1034.h, definition of REF0CN).
8.30.2, Jan 2014
New features
- None
Program corrections
EW24376
The CLIB files and corresponding library template build projects whose name indicates that the option--place_constants=CODE
is used do not have this option correctly set. The error message from XLINK is:Error[e117]: Incompatible runtime models. Module test specifies that '__location_for_constants' must be 'code'
EW24396
XLINK issues the warning"Warning[w2]: Symbol ?ESP is redefined in command-line"
when linking with linker configuration files for Texas Instruments devices.EW24412
If you are using a modified cstartup file based on an earlier version than 8.30, you might get a linker error:"Undefined external "?V1""
(or a similar error). This is because the cstartup file has been changed to optimize the usage of the virtual register area. Update your project-specific cstartup file with the new version from your installation.EW24413
Linker configuration files (with the filename extension .xcl) from version 8.20 or older contain:
-Z(DATA)VREG+_NR_OF_VIRTUAL_REGISTERS=08-7F
.
In the 8.30.1 release this internal_NR_OF_VIRTUAL_REGISTERS
symbol was deprecated. In the new version of these files, this changed to:
-Z(DATA)VREG=08-7F
.
This change is now also applied to the Texas Instruments (Chipcon) linker configuration files.
8.30.1, Dec 2013
New features
- None
Program corrections
EW23773
Incorrect SFR bit definitions on addresses 0xC8 and 0xC9 in Silabs header file ioC8051F041.h.EW24178
Incorrect SFR bit definitions in Silabs header file ioC8051F043.h.EW24262
The source browser sometimes fail to look up symbols.
8.20.2, Feb 2013
New features
- None
Program corrections
EW23667
The source browser did not recognize the __sfr keyword making it impossible to use go-to-definition and go-to-declaration.EW23760
Fixed a problem when you got a fatal error when selecting CY7C68xxx Cypress devices.
8.20.1, Oct 2012
New features
- None
Program corrections
EW23247
Definition of bit 3 (PADC0) in SFR EIP1 of Silicon Laboratories C8051F34x family has now been added in the device header file.EW23222
The device files for Digital Core Design - DP80390 have been corrected.EW23070
The example project for Analog Devices ADE7169Fxx now works.
8.11.1, Feb 2012
New features
- None
Program corrections
- None
8.10.4, Dec 2011
New features
- None
Program corrections
- None
8.10.3, Sep 2011
New features
- None
Program corrections
- None
8.10.1, May 2011
New features
Find in files improvements
You can now use regular expressions in the search field. There is also a new option that allows you to search all projects in the current workspace.
Program corrections
EW17696, EW18374
The DPTR Addresses configuration dialog box sometimes failed to recognize values within the acceptable range. This has been corrected.EW17898
A : (colon) typed inside a comment no longer auto-indents the line.EW20979
The IDE does no longer terminate abnormally if a line containing a C preprocessor macro that ends with an open parenthesis is present in the file being edited.EW21358
SFR information has been corrected in several device header files in this release.EW21912
The XDATA ranges in several linker configuration files has been corrected.EW22040, EW22129
Some of the documentation links in the Information Center were broken. This has been corrected.EW22110
An issue with the setup of PDATA pages in the linker configuration files, where the symbols ?PBANK_NUMBER and the high byte in the range _PDATA0_START-_PDATA0_END were not always the same, has been corrected.
V7.60.1, June 2010
Program corrections
EW21372
The command line build tool would in some circumstances display a dialog and wait for user input before proceeding. This has been corrected.EW21607
Some projects in the tutorial could not be built by variants of the product that does not allow assembly files to be created. This has been corrected.EW21636
License keys for the evaluation edition would sometimes prematurely expire. This has been corrected.EW20979
Open parenthesis in C macros no longer cause the IDE to terminate.EW20978
The tutorial section of the user guide no longer references ARM7TDMI.
V7.51A, March 2009
No changes.
V7.50C, September 2008
-
EW20344
The end of the extended stack segment is now derived from the beginning of the segment plus the size of the extended stack. -
EW20509
The address of the FLSTAT register in the include files for Silabs F12x family has been corrected. -
EW20502
C-Spy will no longer consider __sfr declared symbols located in IDATA memory.
V7.50A, June 2008
New features
-
Multi-file compilation
It is now possible to use the IAR Embedded Workbench IDE to define compilation units with multiple files that will be compiled together, resulting in more efficient code size optimization. -
visualSTATE build integration
visualSTATE design projects can now be included in an IAR Embedded Workbench project. This enables the code generation facility of visualSTATE to be run automatically when needed as part of the normal IAR Embedded Workbench build chain. -
The Optimizations tab in the Options menu has been redesigned to make it easier to target your application for size or speed optimization.
V7.40B, March 2008
No changes.
V7.40A, February 2008
New features
-
The Code Bank page in the Options dialog box was modified to simplify the setup of projects using banked memory.
Program corrections
-
EW19345
During some circumstances, saving only the current project file would erroneously display the message "The project xxx.ewp has been modified on disk.Would you like to reload the project?". -
EW19772
Several issues related to the Source Code Control (SCC) integration has been fixed. -
EW18511
The source browser did not recognize some 8051-specific keywords. This has been corrected. -
EW19415
The Arithmetic Unit option page was never used and has been removed.
V7.30B, September 2007
No changes.
V7.30A, August 2007
New Features:
The compiler preprocessor options dialog box has been updated so that the default include path now also contains the path to CLIB or DLIB. The default include path has been made aware of which library type that currently is selected.
Corrected Problems
-
EW19254
When the debugger loads a project, the following error message could be generated: "Load module failed". -
EW19111
The problem when converting the compiler include path into the standard include paths is now fixed. -
EW17944
The SFRs RCAP2L/RCAP2H where misspelled for Silabs F020 Device description files. -
EW17374
In some cases the calling convention option was not updated with the possible calling conventions when the "Large" data model was selected. -
EW15973
If you close down 8051 IAR Embedded Workbench directly after selecting a new derivative, the Device description file on the Setup page selected from the C-SPY category might not be updated.
7.21A, May 2007
Corrected Problems:
-
EW18919, EW18374
The DPS value was not correctly set after choosing a derivative that has 2 or more DPTR's. -
EW18888
FAR_CODE and FAR_CODE_C segments are now properly paged into 64k chunks. -
EW18887
The missing segments CODE_N and FAR_CODE_N have been added to lnk_base.xcl. -
EW18705,18920
The linker file lnk51ew_C8051F410.xcl did not set up FAR_DATA_END correctly. -
EW18414, EW18296
The __dbg_xxxxx.c functions were not included in the product package for dlib. This also made it impossible to build the fibonacci tutorial. This has been fixed. -
EW18240,17852
The installation package for the Limited Edition has been corrected. Previously when the 8051 IAR Embedded Workbench was started the error message "Failed to locate the Debugger package DebuggerGui.dll - No debugger will be present" was shown. -
EW17340
The compiler preprocessor include path was not updated with CLIB or DLIB sub-path when the CLIB or DLIB libraries were selected. -
EW14713
The default include path for a project did not contain the path to CLIB or DLIB.
7.20H
Corrected Problems:
-
EW17571
$PROJ_DIR$ paths in ewp file changes to $EW_DIR$.
7.20D, May 2006
Corrected Problems:
-
EW17897
There was conflicting definitions of some of the interrupt vectors and the defined SFR bits in the target header files. -
EW18051
Corrected misspelled SFR names in the header and DDF file for the device P89C51.
7.20C, Jan 2006
New configuration files added
The following configuration files has been added or updated:
-
Analog Devices
The Analog Devices family ADu848 has updated DDF and H files. -
Atmel
The Atmel family AT80C51SNDx has new DDF and H files. -
Chipcon
All H, DDF and XCL files for CC2430, CC2431 and CC2510. The devices CC2430 and CC2431 also have new XCL files for banked applications. -
Infineon
The Infineon family XC866 has updated DDF and H files. -
Philips
The Philips family P89C5x has updated DDF and H files. -
Silicon Laboratories
The Silicon Laboratories families
C8051F019, C8051F047, C8051F046, C8051F045, C8051F044, C8051F018, C8051F067, C8051F066, C8051F065, C8051F064, C8051F063, C8051F062, C8051F061, C8051F060, C8051F335, C8051F334, C8051F333, C8051F317, C8051F316, C8051F315, C8051F314, C8051F313, C8051F312, C8051F332, C8051F321, C8051F320, C8051F353, C8051F352, C8051F351, C8051F350, C8051F331, C8051F330
has updated or new DDF, I51 and H files. -
Texas Instruments
Configuration files, DDF, H and I51, for Texas Instruments families MSC1201x and MSC1202x have been added.
Corrected problems
-
EW17739
The SFR bits in the SPI0CN bit register was declared in reversed order. -
EW17390, EW17572
The configuration files for Philips P89C51 family has been updated with missing SFRs, SFR bits and interrupt information. -
EW17499
The SFR EDARH for Analog Devices ADu848 family was misspelled. -
EW17634
The CHECKSUM segment definition has been corrected. -
EW17568
The PDATA initialization in the linker configuration files has been corrected.
7.20B, Nov 2005
Corrected problems
-
CStartup updated
It was not possible to build applications that contained the CStartup.s51 source file. The CSTARTUP module was declared as PROGRAM and not MODULE as it should have been declared. All libraries has been rebuilt to included this updated CStartup.s51 code. -
EW17500
Added SFR information that was missing in the Philips P89C51/2/8 configuration files. -
EW17533
The Workbench GUI would pass the options entered in "Linker/Extra Options" as many times as there was translated files (C and ASM) in the application. -
CHECKSUM segment
The CHECKSUM segment was missing in the linker configuration file lnk_base.xcl.
7.20A, Oct 2005
New features
-
Support for C++
This is the first compiler for 8051 targets that takes full advantage of the possibilities in C++. -
Debugger driver for Chipcon CC2430 family
A debugger driver for the Chipcon CC2430 SoC ZigBee development kit has been added in this release of the 8051 Embedded Workbench. -
Generic ROM-monitor template project
A generic ROM-monitor template project is included. With this project and the delivered source files it is now possible to build your own ROM-monitor for additional 8051 boards and kits. -
ROM-monitor debug support for Analog Devices
ROM-monitor debug support for Analog Devices ADu84x family added. -
ROM-monitor debug support for Texas Instrument
ROM-monitor debug support for Texas Instrument MSC1211 family added. -
Full source code for both CLIB and DLIB included
All source code for the libraries CLIB (standard C library) and DLIB (C and C++ library) are included. This means that together with the library projects for CLIB and DLIB all libraries needed can be easily built.
Corrected problems
-
EW17374
The calling convention option is now updated with the selected calling convention when the "Large" data model is selected. -
EW17376
The addresses for multiple DPTR's in the "Configure..." dialog box were sometimes not updated when selecting a derivative with multiple DPTR's. -
EW17338:
The default setting for ATMEL89C51ED2 did not have any pre built library.
7.10A, July 2005
New features
-
Source control system
IAR Embedded Workbench can now identify and access any third-party Source Control System that conforms to the SCC interface published by Microsoft. -
Source Browser
Easy navigation to functions, types, variables and macros and with filtering possibilities. -
Find in Files
Selecting project files or file groups made easy in Find in Files. -
Pre- and post-build actions added.
-
Source file navigation
A "Web navigate" type of source code navigation has been added that allows you to navigate back and forward to previously visited source locations. -
Smart indentation of source code.
-
Drag-and-drop of workspace (.eww) and project (.ewp) files to workspace window.
-
Open files with an external application
To open files in a project with another application than the built-in editor, choose Tools->Configure Viewers and configure which application to use for a specific filename extension. -
File properties
You can now right-click a file in the Workspace window to display the file properties. -
File name and line number are now displayed in the Build log window.
-
The Compile command can now be applied to a selection of files.
-
Removing trailing blanks
The Editor now removes trailing blanks when text files are saved. To turn off this feature choose Tools->Options and click the Editor tab. -
Log build messages in file feature added.
-
Context menu for editor tabs added.
-
Import File List feature added.
-
Dockable windows
State-of-the-art window management with dockable windows and multiple views. -
Template projects
Allow a novice user to get a project that links and runs "out of the box" and specific ready-made project configurations.
Corrected problems
-
EW16095
The keywords __far_rom and __huge_rom are now correctly highlighted in IAR Embedded Workbench. -
EW15825
The SFR's SCON0 and SCON1 now have bits defined in the header and DDF files. -
EW15977
The context-sensitive help has been updated. -
EW16680
The bits for Port 0-3 were defined in reversed order.
6.11A, October 2004
New features
-
You can now export the file name extensions set for one user to be applied for an entire project. All added file name extensions are saved in the file 8051.xov. Exporting the file name extension to an entire project can be done by moving/copying the file 8051.xov from the local user directory to the project directory.
On Windows XP you will find 8051.xov in the directory Documents and Settings\<local-user>\Application Data\IAR Embedded Workbench\8051.
Corrected problems
-
EW15869
The assembler definition of register B in the header files io8051F310.h and io8051F311.h has been removed. -
EW15816
The editor now does syntax highlight of assembler keywords in assembler source files. -
EW15815
The order of the bits in the derivative support files for Silabs C8051F310 and C8051F311 is now correct. -
EW15258
The device description file for Texas Instrument derivative MSC1210 is now opened in the debugger when the derivative is selected as the target derivative. -
EW15113
The address of port 1 in Atmel AT89S51 support files is now correct. -
EW15023
The segments BDATA_N and BDATA_I have been added to the default linker command file. -
EW15006
Interrupt definitions for Infineon derivatives is now correct.
6.10A, February 2004
Initial release.