From: Miem on
Hi All,

As an amateur embedded circuit player, I have used couple of AVR and
PIC microcontrollers in the past.

In these days it is not to hard to find small, ARM based ready to use
embedded boards under $100. They seems to have faster clock speed then
most of the AVR and PIC boards.

Can anybody shortly compare ARM with PIC ad AVR interms of (a)
performance (b) software support (c) price?

Regards,

Miem

From: Tim Wescott on
Miem wrote:

> Hi All,
>
> As an amateur embedded circuit player, I have used couple of AVR and
> PIC microcontrollers in the past.
>
> In these days it is not to hard to find small, ARM based ready to use
> embedded boards under $100. They seems to have faster clock speed then
> most of the AVR and PIC boards.
>
> Can anybody shortly compare ARM with PIC ad AVR interms of (a)
> performance (b) software support (c) price?
>
> Regards,
>
> Miem
>
(a) Significantly better. You can't beat it with an 8-bit processor.
(b) At least as good, particularly if you don't mind gnu tools.
(c) It'll be harder to really shave the pennies off in a high-
volume application, and a bare-minimum ARM board will be bigger,
more power hungry and have a higher BOM cost than a bare-
minimum AVR or PIC board.

--

Tim Wescott
Wescott Design Services
http://www.wescottdesign.com

Posting from Google? See http://cfaj.freeshell.org/google/

"Applied Control Theory for Embedded Systems" came out in April.
See details at http://www.wescottdesign.com/actfes/actfes.html
From: linnix on
> ...
> (c) It'll be harder to really shave the pennies off in a high-
> volume application, and a bare-minimum ARM board will be bigger,
> more power hungry and have a higher BOM cost than a bare-
> minimum AVR or PIC board.

AVR has wider operating voltage range than ARM, which is useful for
dealing with different logic devices.

From: PeteS on
linnix wrote:
> > ...
> > (c) It'll be harder to really shave the pennies off in a high-
> > volume application, and a bare-minimum ARM board will be bigger,
> > more power hungry and have a higher BOM cost than a bare-
> > minimum AVR or PIC board.
>
> AVR has wider operating voltage range than ARM, which is useful for
> dealing with different logic devices.

The only technical downsides to ARM are the minimum system complexity
and power, as Tim already mentioned. As always in engineering, it comes
down to 'it depends' and the dependency is, in this case, what you need
(or want) to achieve with the system.

If you need an ultra low current system monitor, it's hard to beat the
AVR or PIC (I prefer the AVR for a number of reasons). So which is
'better' is a much harder question.

Cheers

PeteS

From: Ulf Samuelsson on
PeteS wrote:
> linnix wrote:
>>> ...
>>> (c) It'll be harder to really shave the pennies off in a high-
>>> volume application, and a bare-minimum ARM board will be
>>> bigger, more power hungry and have a higher BOM cost than a
>>> bare- minimum AVR or PIC board.
>>
>> AVR has wider operating voltage range than ARM, which is useful for
>> dealing with different logic devices.
>
> The only technical downsides to ARM are the minimum system complexity
> and power, as Tim already mentioned. As always in engineering, it
> comes down to 'it depends' and the dependency is, in this case, what
> you need (or want) to achieve with the system.
>
> If you need an ultra low current system monitor, it's hard to beat the
> AVR or PIC (I prefer the AVR for a number of reasons). So which is
> 'better' is a much harder question.
>

Some more things that come to mind...

Size of package could be an issue as well.
Not a lot of ARM options below 48 pins.
Almost all ARM have JTAG so if you need OCD
you lose multiple pins.

Determinism when toggling I/O ports could be an issue.
The ARM has to pass through a number of interfaces
before the I/O pin is reached, and this can
take some clock cycles and add jitter.

This of course allows an AVR to run at lower clock frequqncy at
the same toggle rate.

Putting the I/O on the 32 bit ASB/AHB bus will help
but the drawback is higher capacitance on the ASB/AHB
bus which should increase power consumption.

ARM parts typically lack byte addressable EEPROM.

It is easy to prototype using DIL packages.
Normally not available for ARM.

The AVR has more (but narrower) registers
allowing global variables to be stored there.

Bit instructions.

Generally AVR code is smaller than ARM code.


> Cheers
>
> PeteS

--
Best Regards,
Ulf Samuelsson
ulf(a)a-t-m-e-l.com
This message is intended to be my own personal view and it
may or may not be shared by my employer Atmel Nordic AB