IAR Embedded Workbench for ARM - EWARM
2005-11-29 by arm_beta_tester
Yahoo Groups archive
Index last updated: 2026-04-28 23:31 UTC
Thread
2005-11-29 by arm_beta_tester
Hello, Is anybody using IAR Embedded Workbench for ARM microcontrollers. I'm curious about your opinions concerning this software.
2005-11-29 by charlesgrenz
Hi, Yes I use the EWARM with our current product line. I have my problems with the compiler and also getting "timely" updates to the software. I also think some of the "warnings" are a little strange at time or my be a little "picky". Other then that it's pretty good and in terms of code generation I find it very good. I currently use ARM over Thumb and a project that I ported from the Philips XAG49 processor turned out to be pretty easy especially with the JTAG and Kickstart boards. It reduced the code size down by 10% from the XA version and increased the data size by 15% but I have not optimized the data area yet. Software excution speed without optimization to 2 times faster then the XA and with maximum optimization when to about 3.5 times faster. regards, Charles --- In lpc2000@yahoogroups.com, "arm_beta_tester" <h11@o...> wrote:
> > Hello, > Is anybody using IAR Embedded Workbench for ARM microcontrollers. > I'm curious about your opinions concerning this software. >
2005-11-30 by Joel Winarske
I use IAR EWAVR and IAR EWARM.
In my experience IAR offers a clean interface, clean debugger, and excellent
support (West Coast office). The C-Spy plug-ins are a nice feature. I've
found the IAR compiler to be more strict (perhaps more compliant?) than
Keil. I've heard the MISRA feature touted as a built-in Lint.
Example - Keil code IAR does not like:
#define P_EP(n) ((USB_EP_EVENT & (1 << (n))) ? USB_EndPoint##n : NULL)
const void (* USB_P_EP[16]) (DWORD event) = {
P_EP(0),
P_EP(1),
P_EP(2)
};
Reworked for IAR:
typedef void (*PUSB_P_EP)( DWORD event );
const PUSB_P_EP USB_P_EP[] = {
USB_EndPoint0,
USB_EndPoint1,
USB_EndPoint2
};
I heard rumor at one point Keil did not completely implement floating point
numbers to spec, which lead to rounding errors; but offered faster floating
point performance. Keep this in mind when comparing floating point
performance between the two.
Joel2005-11-30 by Dan Beadle
I have used both Keil and IAR. I prefer IAR for a lot of reasons: * Debugger display of special purpose registers far superior * Watch display superior * Seems more compliant It does have its bugs/design "flaws". * If a map file is open and you recompile, the map file is not updated * Similarly, if a source file is open in the IDE and you modify it outside, it is not updated in the IDE display. Amazingly, the external update is not used for the compile, but the older open source is... I really would like this fixed so I could use external editors better. * The in-line assembler is not as robust as Keil - it is hard to access relocatable addresses. IAR has been slow to fix these nuisance bugs, but they have been very good about addressing "real' bugs. And there have been very few of those. Tech support has been good. Generally, the response in within hours. But during "show time", when tech support is supporting shows, emails take a bit long to get response. They have been good at helping with "my problems" where the product worked, but I didn't know how to get something done Still, with these limitations, I seem to get a lot more done in IAR environment. Dan . _____
From: lpc2000@yahoogroups.com [mailto:lpc2000@yahoogroups.com] On Behalf Of arm_beta_tester Sent: Tuesday, November 29, 2005 3:28 PM To: lpc2000@yahoogroups.com Subject: [lpc2000] IAR Embedded Workbench for ARM - EWARM Hello, Is anybody using IAR Embedded Workbench for ARM microcontrollers. I'm curious about your opinions concerning this software. SPONSORED LINKS Microprocessor <http://groups.yahoo.com/gads?t=ms&k=Microprocessor&w1=Microprocessor&w2 =Microcontrollers&w3=Pic+microcontrollers&w4=8051+microprocessor&c=4&s=9 3&.sig=tsVC-J9hJ5qyXg0WPR0l6g> Microcontrollers <http://groups.yahoo.com/gads?t=ms&k=Microcontrollers&w1=Microprocessor& w2=Microcontrollers&w3=Pic+microcontrollers&w4=8051+microprocessor&c=4&s =93&.sig=DvJVNqC_pqRTm8Xq01nxwg> Pic microcontrollers <http://groups.yahoo.com/gads?t=ms&k=Pic+microcontrollers&w1=Microproces sor&w2=Microcontrollers&w3=Pic+microcontrollers&w4=8051+microprocessor&c =4&s=93&.sig=TpkoX4KofDJ7c6LyBvUqVQ> 8051 microprocessor <http://groups.yahoo.com/gads?t=ms&k=8051+microprocessor&w1=Microprocess or&w2=Microcontrollers&w3=Pic+microcontrollers&w4=8051+microprocessor&c= 4&s=93&.sig=1Ipf1Fjfbd_HVIlekkDP-A> _____ YAHOO! GROUPS LINKS * Visit your group "lpc2000 <http://groups.yahoo.com/group/lpc2000> " on the web. * To unsubscribe from this group, send an email to: lpc2000-unsubscribe@yahoogroups.com <mailto:lpc2000-unsubscribe@yahoogroups.com?subject=Unsubscribe> * Your use of Yahoo! Groups is subject to the Yahoo! Terms of Service <http://docs.yahoo.com/info/terms/> . _____ [Non-text portions of this message have been removed]
2005-11-30 by 42Bastian Schick
Dan > It does have its bugs/design "flaws". > > * If a map file is open and you recompile, the map file is not > updated > * Similarly, if a source file is open in the IDE and you modify it > outside, it is not updated in the IDE display. Amazingly, the external > update is not used for the compile, but the older open source is... I > really would like this fixed so I could use external editors better. Something which bugs me too and did cost me some hair. (I wonder why they do not fix it ?!) Another point is that the IDE does not support environmet variables in the pre-processor tabs which means if you change e.g. from one RTOS version to another you have to change also the project. Others do better here. But other than this, I like the build tool, esp. it is possible to have per file options that differ from global options. Only pity here, you can't choose ARM or Thumb mode on a per file basis. AFAIK you have to use pragmas. The (German) support is quiet responsiv though bug fixes sometimes take too long. There are others doing better (but also worser). One big negative point about IAR (and many others): It does not work under linux :( So I stick for my daily work with emacs,make,gcc and a debugger from a Bavarian manufacturer ;-) -- 42Bastian Schick
2005-11-30 by Robert Adsett
At 04:29 PM 11/29/05 -0800, Joel Winarske wrote:
>I've heard the MISRA feature touted as a built-in Lint.
If they are touting MISRA checking as lint they haven't seen a good
lint. MISRA is a subset of what a good lint can find.
>Example - Keil code IAR does not like:
>
>#define P_EP(n) ((USB_EP_EVENT & (1 << (n))) ? USB_EndPoint##n : NULL)
>
>const void (* USB_P_EP[16]) (DWORD event) = {
> P_EP(0),
> P_EP(1),
> P_EP(2)
>};
Good heavens, that may be legal C it's some of the ugliest I've seen in a
while. I'd want an awfully good reason before using such a
construct. PC-Lint BTW throws up all over it :)
Robert
" 'Freedom' has no meaning of itself. There are always restrictions, be
they legal, genetic, or physical. If you don't believe me, try to chew a
radio signal. " -- Kelvin Throop, III
http://www.aeolusdevelopment.com/2005-11-30 by Joel Winarske
> If they are touting MISRA checking as lint they haven't seen a good
> lint. MISRA is a subset of what a good lint can find.
PC-Lint for single workstation only runs $239. http://www.gimpel.com/
Do you suggest a better lint?
>
> >Example - Keil code IAR does not like:
> >
> >#define P_EP(n) ((USB_EP_EVENT & (1 << (n))) ? USB_EndPoint##n : NULL)
> >
> >const void (* USB_P_EP[16]) (DWORD event) = {
> > P_EP(0),
> > P_EP(1),
> > P_EP(2)
> >};
>
>
> Good heavens, that may be legal C it's some of the ugliest I've seen in a
> while. I'd want an awfully good reason before using such a
> construct. PC-Lint BTW throws up all over it :)
>
Yes. It was taken from the Keil USB examples. Ugly and useful for proving
a point ;)
Joel2005-11-30 by Damon Kelly
--- In lpc2000@yahoogroups.com, "Dan Beadle" <dan.beadle@i...> wrote: > > * Similarly, if a source file is open in the IDE and you modify it > outside, it is not updated in the IDE display. Amazingly, the external > update is not used for the compile, but the older open source is... I > really would like this fixed so I could use external editors better. Odd...this works fine with my installation of EWARM. I use Multi- Edit for complicated search and replace (with the files open in both EWARM and Multi-Edit), and files are ALWAYS updated in the EWARM IDE when I save them in Multi-Edit. Actually, that's my biggest complaint with EWARM -- the rather primitive search and replace functions. I would like a proper regular expression capability, and also the ability to Search/Replace in all files. Cheers, Damon
2005-12-01 by Robert Adsett
At 12:31 AM 11/30/05 -0800, Joel Winarske wrote: > > If they are touting MISRA checking as lint they haven't seen a good > > lint. MISRA is a subset of what a good lint can find. > >PC-Lint for single workstation only runs $239. http://www.gimpel.com/ > >Do you suggest a better lint? That's the one I use. I know of several other static analysis checkers some more expensive and some cheaper but I haven't compared them. PC-Lint has more than paid for itself. Very good value for the money. Robert " 'Freedom' has no meaning of itself. There are always restrictions, be they legal, genetic, or physical. If you don't believe me, try to chew a radio signal. " -- Kelvin Throop, III http://www.aeolusdevelopment.com/
2005-12-01 by Joel Winarske
> >PC-Lint for single workstation only runs $239. http://www.gimpel.com/ > > > >Do you suggest a better lint? > > That's the one I use. I know of several other static analysis checkers > some more expensive and some cheaper but I haven't compared them. PC-Lint > has more than paid for itself. Very good value for the money. > I need to set it up for IAR and ARM, I've used it for some time with my Keil 8051 setup. Would anyone mind posting their PC-Lint config file for using with IAR and ARM? Joel
2005-12-01 by Sten
Robert Adsett wrote: > At 12:31 AM 11/30/05 -0800, Joel Winarske wrote: > >>>If they are touting MISRA checking as lint they haven't seen a good >>>lint. MISRA is a subset of what a good lint can find. >> >>PC-Lint for single workstation only runs $239. http://www.gimpel.com/ >> >>Do you suggest a better lint? > > > That's the one I use. I know of several other static analysis checkers > some more expensive and some cheaper but I haven't compared them. PC-Lint > has more than paid for itself. Very good value for the money. > Try open-source linux-variant splint! -- /************************************************ Do you need a tiny and efficient real time operating system (RTOS) with a preemtive multitasking for LPC2000 or AT91SAM7? http://nanortos.net-attack.de/ Or some open-source tools and code for LPC2000? http://www.net-attack.de/ ************************************************/