Questions tagged [iar]

IAR Systems supplies software development tools and services that make embedded systems fast, efficient and reliable for companies worldwide. This tag focuses on the IAR C/C++ Compilers, IDE and code quality analysis tools.

IAR Systems, an embedded system technology company founded in Sweden in 1983, specialize in creating development tools for embedded systems. Products include:

  • IAR Embedded Workbench: C/C++ compiler and a state-of-art debugger for developing applications targetting microcontrollers ranging from the smallest 8-bit devices up to high-performance 64-bit architectures from more than 70 silicon vendors.
  • IAR C-STAT: Static analysis add-on with support for MISRA-C, CWE and CERT rules
  • IAR C-RUN: Runtime analysis add-on for detecting data type casting, integer overflow and memory management errors
  • IAR Build Tools: All the build tools components from the Embedded Workbench for building from the command line, ideal for Continuous Integration and Modern Developent Workflows. Now also available for Linux.
  • IAR Visual State: tools for designing, testing and implementing embedded applications based on state machines.
638 questions
5
votes
1 answer

Initializer list initialization of a member struct bitfield element causing bugs in IAR ARM

I have the following class structure in IAR: class A { public: A(){} virtual ~A() {}; virtual void load() {}; }; class C { public: C() { //C does other stuff, not relevant } }; class D; class B : public…
5
votes
2 answers

How can I configure Ceedling for an IAR Embedded Workbench project?

I'm trying to develop a new feature for an embedded application and I'd like to do so using a test-driven approach. The project is written in pure C and is being developed using IAR Embedded Workbench 6.60.1.5104. I'm targeting an LPC1788, which is…
Tagc
  • 8,736
  • 7
  • 61
  • 114
5
votes
0 answers

IAR window layout

Is there a way to save your IAR window layout? Every time I start a debug session it fills my screen 9 different windows. I would be happy with 3 and a few tabs but I have to rearrange things every time. I don't see an obvious way to save them and…
lusher00
  • 678
  • 1
  • 7
  • 18
5
votes
1 answer

Compilation dependency when using static libraries in IAR Embedded Workbench

I want to separate my IAR Embedded Workbench workspace into several projects. Currently we have the OS and other code in the same project as the main application but I want the OS and other external code to be static libraries which my application…
Dina
  • 1,346
  • 1
  • 15
  • 35
5
votes
1 answer

On MSP430, what will happen when I dereference a null pointer?

I know dereferencing a null pointer is undefined - but I would like to know what happens on a specific target - an MSP430. I don't have a board to load this on in front of me to test this out right now. What would happen if I did this (or…
Nick
  • 1,361
  • 1
  • 14
  • 42
5
votes
3 answers

Why does the IAR compiler get stuck?

In my embedded project, using IAR EWARM dev tools (v7.10.3), I have the following piece of code: /* 1 */ uint32_t packet_sync = 0; /* 2 */ uint32_t synced = 0; /* 3 */ uint32_t gpio = 0; /* 4 */ while (1) { /* 5 */ if…
ysap
  • 7,723
  • 7
  • 59
  • 122
5
votes
1 answer

STM32 IAR no ITM trace output unless printf is included in the code

I have a small project that I added my own custom debug functions to so I could have some extra functionality. They have been working great, and use the following method to send the data: while(*bp) ITM_SendChar(*bp++); I finally got around to…
RobC
  • 502
  • 4
  • 17
5
votes
1 answer

IAR Embedded Workbench breakpoint failure

I've been using IAR embedded workbench for quite some time but there is still one thing I'm unable to wrap my head around. And that's the inconsistency of the breakpoint operation. I have a quite big project which runs an RTOS (might this affect…
Zjerre
  • 105
  • 1
  • 7
5
votes
2 answers

Renaming in IAR Embedded Work Bench

Is it possible to rename workspaces or projects? I am using 6.5_2 (although I have full versions of previous releases 4.0, 6.0)
user611089
5
votes
3 answers

Embedded C: Registers Access

Suppose we want to write at address say 0xc000, we can define a macro in C as: #define LCDCW1_ADDR 0xc000 #define READ_LCDCW1() (*(volatile uint32_t *)LCDCW1_ADDR) #define WRITE_LCDCW1(val) ((*(volatile uint32_t *)LCDCW1_ADDR) = (val)) My…
Gaurav K
  • 2,864
  • 9
  • 39
  • 68
5
votes
1 answer

IAR initializer function placement

Does anybody know how to deal with the following problem: I have an IAR Embedded workbench. The project is using the SDRAM for running it's code and Flash ROM too. The code for SDRAM is loaded from SD Card. However, in SDRAM there are also some data…
maximus
  • 4,201
  • 15
  • 64
  • 117
5
votes
1 answer

ARM Data Abort error exception debugging

So now I understand that I'm getting a ARM Data Abort exception - I see how to trap the exception itself (a bad address in the STL library), but I would like to walk back up the stack frame before the exception. I'm using the IAR toolchain, and it…
Jeff
  • 1,969
  • 3
  • 21
  • 35
4
votes
3 answers

MISRA C:2004, error with bit shifting

I'm using IAR Workbench compiler with MISRA C:2004 checking on. The fragment is: #define UNS_32 unsigned int UNS_32 arg = 3U; UNS_32 converted_arg = (UNS_32) arg; /* Error line --> */ UNS_32 irq_source = (UNS_32)(1U << converted_arg); The MISRA…
Thomas Matthews
  • 56,849
  • 17
  • 98
  • 154
4
votes
1 answer

Change DWARF elf format in IAR ARM V8 compiler

In our development, we switched from IAR ARM V7.40 to IAR ARM V8.40 We are using the python package pyelftools for postprocessing of the debug information. Unfortunately, this seems to be broken now, as the V8-compiler seems to use DWARF4 syntax,…
meddle0106
  • 1,292
  • 1
  • 11
  • 22
4
votes
1 answer

Code Size Comparison Cortex M3: IAR ARM vs Keil µVision

I am currently developing a small project for an STM32F103 microcontroller which features a Cortex-M3 CPU. Due to CMSIS standard header files it is possible to use the exact same code with IAR and Keil µVision. Because of that, I found it…
binaryBigInt
  • 1,526
  • 2
  • 18
  • 44
1 2
3
42 43