re the below - Yes! I did asm on the AVR for a small project to get
the feel for the flash vs. RAM architecture and the
registers/addressing modes. But this was a small effort. Following
lots of examples from others' work.
I found that using WinAVR (GCC) with the AVR is best done AFTER you
use one of the commercial C compilers, perhaps in their free demo mode
for a small project. This is because these compilers (I really liked
Codevision AVR) have easy to learn/use pragmas for putting data in
flash vs. RAM and accessing them. It is quite true that even a simple
printf() requires attention to where the data is (RAM vs Flash). But
unlike GCC for the AVR, the commercial compilers tend to make this
much more transparent and easy to do.
After a project or two, doing C on the AVR will become straightforward
and intuitive. It's a problem if you work on AVRs only intermittently
and forget things.
You shouldn't come into C on the 8 bit micros like the AVR expecting
the convenience of the OS environment on PCs or $500 embedded processors.
If you can't warp your brain to deal with both the von Neuman and
Harvard architectures, stick with the 8051s!
--- In AVR-Chat@yahoogroups.com, "Micro Brix" <microbrix@...> wrote:
>
> On 1/18/07, Thomas Keller <tjkeller1@...> wrote:
> >
> > Larry,
> >
> > Not wishing to start a language war here, but I have to say that I
> > have looked at doing C on the AVR, and frankly, it looks nastier than
> > working in assembler. I have vast experience in C programming on
both
> > the Winblows and *nix platforms, as well as others, and I love C. I
> > find the twists and turns and processor specific details so
painful when
> > working with C on a uC that I find assembler more reasonable (unless i
> > need floating point math, or transcendental math, or something
like that).
> >
> > Besides, particularly when working with a new processor, I like
> > working at the assembly level, as it forces me to develop an intimate
> > understanding of the hardware and the architecture, which is
invaluable,
Show quoted textHide quoted text
> > regardless of what level language you eventually code in.
>
>
>
> Hmm.. A kindred spirit!
>
>
> [Non-text portions of this message have been removed]
>