AVR compilers

Started by mc January 9, 2005
OK, another deep theological question...


What do people think of each of these...?

CodeVision C for AVR
ImageCraft C for AVR
IAR C for AVR
gcc for AVR
BASCOM for AVR

Any of them notoriously good or notoriously bad?

Integration with AVR Studio and STK500 are desirable.


"mc" <mc_no_spam@uga.edu> wrote in message
news:41e0c8b3$1@mustang.speedfactory.net...
> OK, another deep theological question... > > > What do people think of each of these...? > > CodeVision C for AVR > ImageCraft C for AVR > IAR C for AVR > gcc for AVR > BASCOM for AVR > > Any of them notoriously good or notoriously bad? > > Integration with AVR Studio and STK500 are desirable. >
I only have experience with ICCAVR, and I think it's quite a good compiler. Easy to use, fast, cheap, generates reseonable code, a simple IDE, and works well with AVRStudio. The Application Builder that generates initialisation code is very handy. Jeroen
On Sun, 9 Jan 2005 00:38:33 -0500, "mc" <mc_no_spam@uga.edu> wrote:

>OK, another deep theological question...
Yup. Nothin' like a Sunday to start a religious war. ;-)
>What do people think of each of these...? > >CodeVision C for AVR
Insufficient info.
>ImageCraft C for AVR
Great value. Excellent technical support. Source-level debugging with AVR Studio (C statements as comments in the assembler output); programs via the STK500. Active user community. Sensible constructs to accommodate the AVR's Harvard architecture into C's point of view.
>IAR C for AVR
Expensive.
>gcc for AVR
GPL, which may or may not be an issue. Active user community.
>BASCOM for AVR
BASIC?
>Any of them notoriously good or notoriously bad?
Not really. -- Rich Webb Norfolk, VA
Rich Webb wrote:
> On Sun, 9 Jan 2005 00:38:33 -0500, "mc" <mc_no_spam@uga.edu> wrote: > > >>OK, another deep theological question... > > > Yup. Nothin' like a Sunday to start a religious war. ;-) > > >>What do people think of each of these...? >>
[...]
> >>gcc for AVR > > > GPL, which may or may not be an issue. Active user community.
The GPL-ness of GCC is not an issue, and never has been. Support, or rather someone to talk to when you get lonely, might be one. [...]
"Rich Webb" <bbew.ar@mapson.nozirev.ten> wrote in message 
news:88p2u0d8s2tlc5aiohtvnl7isulaeh2us5@4ax.com...

>>BASCOM for AVR > > BASIC?
Yes. BASIC has its uses in situations where adhocity is a virtue. Thanks for the other information.
The IAR compiler is generally the one recommended by Atmel Norway,
due to its superior code generation. It has some amazing tricks.
* Global variables in registers.
* Will find identical code pieces and generate subroutines.
There is a free 4 k limited C compiler, but if you want more,
then it will set yuo back a significant amount.
On the other hand, I know Richard at Imagecraft is constantly looking to
improve code.
and is planning a free 4 kB compiler himself.
GCC is free, but I did not try it.
AVR Studio supports the file format of WinAVR (both to be downloaded from
www.avrfreaks.net)
and there will be tighter integration with AVR Studio this year
(actually any .3rd party C compiler can improve integtration, when this
function is released)


-- 
Best Regards,
Ulf Samuelsson   ulf@a-t-m-e-l.com
This is a personal view which may or may not be
share by my Employer Atmel Nordic AB



Send an email to support@iar.se and ask for it.

-- 
Best Regards,
Ulf Samuelsson   ulf@a-t-m-e-l.com
This is a personal view which may or may not be
share by my Employer Atmel Nordic AB


"mc" <mc_no_spam@uga.edu> skrev i meddelandet
news:41e29d49$1@mustang.speedfactory.net...
> > "Ulf Samuelsson" <ulf@atmel.nospam.com> wrote in message > news:34en7tF4ajp4lU1@individual.net... > > > > The IAR compiler is generally the one recommended by Atmel Norway, > > due to its superior code generation. It has some amazing tricks. > > * Global variables in registers. > > * Will find identical code pieces and generate subroutines. > > There is a free 4 k limited C compiler, but if you want more, > > then it will set yuo back a significant amount. > > Is there a 4k limited version? All I saw on IAR's demo page was that it
was
> 30-day-limited. I haven't downloaded it yet. > > > On the other hand, I know Richard at Imagecraft is constantly looking to > > improve code. > > and is planning a free 4 kB compiler himself. > > Right, I've downloaded that in "release candidate" form (ICC V7 RC4) and > there seem to be some problems with the way it installs -- I assume that
is
> just a matter of the way the setup file is constructed. (Sample projects > are missing files that ought to be in them, etc.) Also I keep getting the > error message "code location 0 already contains a value" from one of the > library files during linkage. What does that mean? Wrong version of the > library file? > > Thanks! > >
On Sun, 9 Jan 2005 00:38:33 -0500, "mc" <mc_no_spam@uga.edu> wrote:

>OK, another deep theological question... > > >What do people think of each of these...? > >CodeVision C for AVR
This is quite reasonable for a beginner. It comes with a lot of libraries to drive all the peripherals and specific other devices which are often used. To read the temperature from a 1Wire DS18B20 and display it on a 2x16 line LDC display will take even a beginner less than an hour. Apparently it is a lot closer to Standard C than it used to be so porting code to one of the more advanced compilers later on should be fairly easy.
>ImageCraft C for AVR >IAR C for AVR >gcc for AVR
Imagecraft if you are on a budget. (They also have a version that supports the RAMless AVRs properly) IAR If you have a big budget and want to use the officially recommended compiler by Atmel. gcc if you want a good quality compiler for free, that can run under most Osses used to develop under. If you are using gcc to develop code for other MCUs, then it can have advantages even over the IAR solution.
>BASCOM for AVR
Same sort of thing as CodeVision, except that it is a sort of basic. Easy to get going with devices it supports, but if you want to use something they do not support, then it is musch more difficult to expand than a C solution would be.
> >Any of them notoriously good or notoriously bad? > >Integration with AVR Studio and STK500 are desirable. >
Of course the above is MHO. Regards Anton Erasmus
On Sun, 09 Jan 2005 18:14:39 +0000, Bryan Hackney wrote:

> Rich Webb wrote: >> On Sun, 9 Jan 2005 00:38:33 -0500, "mc" <mc_no_spam@uga.edu> wrote: >> >> >>>OK, another deep theological question... >> >> >> Yup. Nothin' like a Sunday to start a religious war. ;-) >> >> >>>What do people think of each of these...? >>> > [...] >> >>>gcc for AVR >> >> >> GPL, which may or may not be an issue. Active user community. > > The GPL-ness of GCC is not an issue, and never has been. Support, or rather > someone to talk to when you get lonely, might be one. >
It is for some people, either because they don't understand the gcc licensing and mistakenly think it means their own code must be gpl'ed, or because they *do* understand the licensing and know that this provides the user with a guarentee of availability, flexibility, and reliability that can't be achieved any other way. gcc can produce some excellent optomised code - it benifits from all the same front-end optomisations and extensions as other gcc ports. It is also cross-platform, which is important to some people. The combination of gcc with gdb and a selection of front-ends is flexible and powerful, but it's not everyone's cup of tea. While the support is enthusiastic and helpful (you are talking directly to the authors on the mailing list), avr-gcc is not as friendly out-of-the-box as, say, ImageCraft (though winavr goes some way towards this). ImageCraft has always been synonymous with good support and ease of use. IAR has (as far as I have heard - I haven't used IAR tools more than very briefly, and never on an avr) a reputation for generating very small and fast code, but I haven't heard "IAR" and "good service and support" in the same sentence. Being Atmel's favourite compiler may give it some advantages for the end user - the AVR is not, as Atmel claims, "C friendly". It was designed and built as "IAR-C friendly", which is not the same thing.
> [...]
On Sun, 9 Jan 2005 00:38:33 -0500, "mc" <mc_no_spam@uga.edu> wrote:

>OK, another deep theological question... > > >What do people think of each of these...? > >CodeVision C for AVR
This one is not very efficient compared to Imagecraft and IAR. Code size was too big to get my approval.
>ImageCraft C for AVR
Excellent value and efficient compiler. I never had a problem with using it in a commerical product. Integration with AVR studio is good also.
>IAR C for AVR
Embedded workbench IDE tools are quite good. But I think the main reason to buy it is if reliability is a top priority. On performance basis, I found it is equivalent to Imagecraft.
>gcc for AVR >BASCOM for AVR
Never tried these.
>Any of them notoriously good or notoriously bad? > >Integration with AVR Studio and STK500 are desirable. >