IAR Systems' Compilers, Assemblers, Debuggers and Development-kits are supplied and supported by Arcadi Systems
IAR Tools for Embedded Development
IAR Systems is the world's leading independent supplier of C/C++ compilers and other software tools for embedded systems that enable large and small companies to develop premium products based on 8-, 16-, and 32-bit microcontrollers, principally in the areas of industrial automation, medical devices, consumer electronics and automotive products.
IAR Systems provides a flexible choice of easy-to-use development tools that generate compact and reliable code, offering tight integration with a wide range of partner products such as RTOSes and emulators, and local technical support.
IAR Systems cooperates with the world’s leading semiconductor vendors and has an extensive network of partners.
The full range of IAR
IDEs, C and C++ Compilers, Debuggers,
state-machine design tools, RTOS, TCP/IP and USB stacks,
Development Kits and Debug probes is supplied and supported by Arcadi Systems.
IAR Systems' product-families include:
- Embedded Workbench IDE
- C/C++ compilers
- C-SPY Debugger
- visualSTATE graphical design tool
- PowerPac RTOS, TCP/IP and USB stacks
- KickStart and Advanced Development Kits
- J-Link and J-Trace Debug Probes
Embedded Workbench integrated development environment
The IAR Embedded Workbench is a set of development tools for building and debugging embedded system applications using assembler, C and C++. It provides a completely integrated development environment that includes a project manager, editor, build tools and the C-SPY debugger. In a continuous workflow, you can create source files and projects, build applications and debug them in a simulator or on hardware.
The IAR C/C++ Compiler is well known for its efficient code generation; each compiler contains both generic global optimizations as well as low-level chip-specific optimizations that ensure a small code size while taking advantage of all the specific features of your selected device.
The IAR Embedded Workbench is available for a vast selection of 8-, 16- and 32-bit devices from different manufacturers.
Embedded Workbench contains configuration files, code examples and template projects to get you going fast.
Key components of Embedded Workbench
- Integrated development environment with project management tools and editor
- Highly optimizing C and C++ compiler (*)
- Configuration files for all supported devices
- C-SPY simulator and hardware debugger systems
- Support for RTOS-aware debugging on hardware
- Run-time libraries
- Relocating assembler
- Linker and librarian tools
- Ready-made code and project examples for supported evaluation boards
- User and reference guides, both printed and in PDF format
- Context-sensitive online help
Integrated development environment
- Hierarchical project presentation
- Multiple projects within the same workspace
- Dockable windows and multiple views
- Source browser
- Library tools included for creating and maintaining libraries
- Integration with source code control systems
- Text editor
- Code templates for commonly used code constructs
- Command line build utility
IAR C/C++ Compiler
- Advanced global and processor-specific optimizations for speed and memory footprint
- Extended keywords for defining data/functions and declaring memory and type attributes
- Pragma directives for controlling compiler behavior such as memory allocation
- Intrinsic functions for direct access from C code to low-level processor operations
- Full support for memory attributes in C++ (most target architectures)
- Support for interrupt and exception handling in C and C++ (most target architectures)
IAR Assembler
- A powerful relocating macro assembler with a versatile set of directives and operators
- Built-in language preprocessor, accepting all C macro definitions
Chip-specific support
- Ready-made C/C++ and assembler peripheral register definition files
- Multiple code and data models, where applicable
- Extensive set of language features for ROMable embedded code, including memory keywords, intrinsic functions, interrupt functions and memory-mapped I/O ports
Linker
- Flexible memory handling allows detailed control of code and data placement
- Removes unnecessary functions and variables
- Application-wide type checking of C/C++ variables and functions at link time
- Optional flexible checksum generation for image runtime verification
- Automatic placement of code and data in non-contiguous memory regions
C-SPY Debugger
- Fully integrated debugger for source and disassembly level debugging
- Very fine granularity execution control (function call-level stepping)
- Complex code and data breakpoints
- Versatile monitoring of data
- STL container awareness
- C/C++ call stack window that also shows the function to be entered; a double-click on any function in the call chain updates the editor, Locals, Register, Watch and Disassembly windows to display the state of of that particular function at the time of the call
- Trace utility to examine execution history; moving around in the Trace window updates the editor and Disassembly windows to show the appropriate location
- Terminal I/O emulation
- Interrupt and I/O simulation
- C-like macro system to extend debugger functionality
- Application program system calls are emulated by the host
- Code Coverage and Profiling performance analysis tools
- Generic flash loader
- OSEK Run Time Interface (ORTI) RTOS support is included
Libraries and library tools
- All required ISO/ANSI C and C++ libraries and source are included
- All low-level routines such as writechar and readchar are provided in full source code
- Lightweight runtime library, user-configurable to match the needs of the application; full source is included
- Library tools for creating and maintaining library projects, libraries and library modules
- Listings of entry points and symbolic information
Language and standards
- The C programming language as standardized by ISO/ANSI C94 with selected features from C99
- Embedded C++ extended with templates, namespaces, virtual and multiple inheritance and other C++ features that do not cause an overhead in size or speed.
- Full Embedded C++ library containing string, streams etc., as well as the Standard Template Library (STL)
- IEEE-754 floating-point arithmetic
- MISRA C checker for code quality control
- Supports a wide range of industry-standard debug and image formats, compatible with most popular debuggers and emulators, including ELF/DWARF where applicable
User assistance
- Ready-made sample projects and project templates
- Context-sensitive online help with library function lookup
- Printed user guides with extensive step-by-step tutorials
- User friendly, detailed, and precise error messages and warnings
visualSTATE graphical state-machine design tool
IAR visualSTATE is a UML-compliant graphical state machine design tool for embedded systems. It provides advanced verification and validation tools and generates very compact C code that is 100% consistent with your system design.
IAR visualSTATE is an ideal design, test and code generation tool for real-time systems with many concurrent and interrelated processes or execution threads. The use of state machines is exceptionally beneficial for control logic oriented applications such as monitoring, metering and control applications where reliability, size and deterministic execution are the main criteria.
PowerPac RTOS, TCP/IP and USB stacks
IAR PowerPac is an integrated middleware family that combines a small memory footprint RTOS and a versatile file system. It is suitable for all types of embedded applications in different industries; for example, test and metering equipment, industrial equipment, telecom, medical devices and consumer electronics.
IAR PowerPac is available at an innovative and low-risk per-seat license model, without royalty fees. IAR PowerPac is an add-on product to IAR Embedded Workbench and is currently available for ARM processors, Texas Instruments MSP430 and Freescale ColdFire.
IAR Development Kits
Each development kit contains all the hardware and software you need to get going quickly:- IAR KickStart Kit is a complete evaluation environment for embedded system applications available for a vast selection of targets
- IAR Advanced Development Kit is a complete development environment for embedded system applications based on ARM processors
The IAR Systems KickStart Kits for ST's STR7xxF family
contain all of the necessary hardware and software to design, develop, integrate and test your ST STR7xxF applications. Individual Kits contain:
- STR711F, STR712F, STR730F, STR731F or STR750F development board
- 20-state version of visualSTATE
- IAR Embedded Workbench with a 32KB kickstart version of the IAR C/C++ Compiler
- IAR J-LINK JTAG debugger with USB connector
- STR711F, STR712F, STR730F, STR731F or STR750F device
- 20-pin JTAG debug-interface connector
- Status and Power-supply LEDs
- RS232 drivers
- Multiple UART DB9 connectors
- SPI, I2C or SD/MMC ports
- USB connector
- Potentiometer connected to ADC
- Powered through USB port via J-Link
- Optional external power supply
- LCD: 16 characters per line, two lines, 5x7 character format (certain versions)
- 16 user LEDs (certain versions)
- User prototype wire wrap area
- External oscillator
- 2 or 4 push buttons
- Reset button
- Schematics are included
J-Link and J-Trace Debug Probes
IAR J-Link and IAR J-Trace are small debuggers that connect via USB to the PC host. They are add-on products to IAR Embedded Workbench and are fully plug-and-play compatible.
IAR J-Link is available for ARM and for Freescale's ColdFire architecture; IAR J-Trace is available for ARM.


