[time-nuts] Good (cheap) PIC chip choice for project?
herbert at 13thfloor.at
Sat May 25 21:18:56 EDT 2013
On Sat, May 25, 2013 at 04:03:36PM -0700, Chris Albertson wrote:
> In general PICs need assembly language for many things.
> AVRs almost never need assembly.
I've done quite a number of PIC projects, from low end
8 bit up to the high end 32 bit controllers, and except
for a really time critical software PWM solution I never
had to write in assembler (although I'm quite comfortable
with assembler code :)
> The reason is that the AVR designers studied C compilers
> and made the AVR an easy compiler target.
> A compiler writer like to have an "orthogonal" instruction
> set and some other features. So the AVR compirrs generate
> very good code and there is little reason to resort to
Recent PIC toolchains use gcc which allows for inline
assembly and provides a reasonable set of builtin
instructions to allow for handling almost everything
The compiler does a good job, and there are proprietary
compilers available if you need to achieve really high
optimization (size or speed wise)
> On Sat, May 25, 2013 at 2:24 PM, Rex <rexa at sonic.net> wrote:
>> On 5/25/2013 1:22 PM, Bob Camp wrote:
>>> If you are going to code on a cheap PIC (the PIC16 series)
>>> you will likely need to learn PIC assembler. All my coding
>>> on those parts was in assembly language. They are old enough
>>> / slow enough / small RAM enough that things like C (or the
>>> other high level languages you listed) really don't do well
>>> on them.
>> Several years back I did a bunch of stuff with various PIC16
>> series chips. All of it, except for some minor assembler
>> tweaks, was done in C. Glad I did not know it wasn't
>> practical. I would have wasted a lot of time coding it in
>> assembler. Of course my goal was just getting something done,
>> not being elegant or very efficient. Time-nutty stuff like
>> TVB's frequency divider may require the detail and efficiency
>> only provided by assembler.
>> time-nuts mailing list -- time-nuts at febo.com
>> To unsubscribe, go to
>> and follow the instructions there.
> Chris Albertson
> Redondo Beach, California
> time-nuts mailing list -- time-nuts at febo.com
> To unsubscribe, go to https://www.febo.com/cgi-bin/mailman/listinfo/time-nuts
> and follow the instructions there.
More information about the time-nuts