On Tue, Feb 9, 2010 at 8:52 PM, Dave McGuire <mcguire at neurotica.com> wrote:
On Feb 9, 2010, at 8:34 PM, Ethan Dicks wrote:
I myself have only ever programmed AVRs in C (including older parts
that had a mere 2K of code space), but I've done some PIC and MCS51
assembler in the past 5 years. ?Not much point to it usually, though.
That much optimization is rarely needed in a part that has limited I/O
and very limited memory.
?That's funny, I find that sort of optimization is required *because* the
parts have limited memory. ;) ?(not arguing about I/O though)
I was unclear - I meant time/cycle optimization, not space optimization.
For bang-for-the-buck, AVRs are pretty good. The most expensive one I
ever bought was just over $3.
?On 8051 designs, I always code very low-level
routines that will be called
a lot in assembler. ?Stuff like the low-level UART drivers for maintaining
serial output buffers and such. ?The rest I generally do in C. ?I rarely
write pure-C 8051 programs.
Sure... serial comms are one of those time-sensitive things like
video. When I used to write protocol engine code, our Z8530 routines
were in assembler and 95% of the rest of the code was C (even the DMA
engine code).
-ethan