Breaking News
Design How-To

How to go about selecting a microcontroller

NO RATINGS
More Related Links
View Comments: Newest First | Oldest First | Threaded View
Page 1 / 2   >   >>
Duane Benson
User Rank
Blogger
re: How to go about selecting a microcontroller
Duane Benson   2/13/2012 4:56:45 PM
NO RATINGS
Ease of design for non-experts is another factor. It's not uncommon for an engineer of a non-electronics sort to be tasked with figuring out how to design and build a small control board for a pump, valve, switch or something along those lines. In that case, bigger parts, fewer pins and slower speed all help to lower the design and layout risk. In an ideal world, no one would ever be given a job without the proper training and tools, but reality doesn't hold up to that ideal.

cdhmanning
User Rank
Rookie
re: How to go about selecting a microcontroller
cdhmanning   2/12/2012 10:48:21 PM
NO RATINGS
The reason for the non-standness of C compilers for 8051 and PIC is that these micros just are not capable of running C properly and each compiler vendor chooses slightly different mechanisms to try to work around the deficiencies. What you end up with is something that looks a bit like C, but is not C, and provides no portability from compiler vendor to vendor or to other micros. These days micros are mainly life support for software. Almost any electronics house has far more investment in their code than in their hardware designs. It is increasingly important to be able to have portable code that is not mangled to fit onto one particular device. It is also becoming increasingly important to be able to buy in a device-agnostic code library and expect it to run and compile with no quirks. ARM, MIPS, x86 and others gives you that. AVR does - with very few limitations - but 8-bit PIC really does not.

Duane Benson
User Rank
Blogger
re: How to go about selecting a microcontroller
Duane Benson   2/3/2012 7:49:32 PM
NO RATINGS
I suppose I'm kind of one of the devoted ones. I find it easy to bump into limitations and weirdness in any of these low end parts, but I'm used to the PIC limitations. It is annoying that the C compilers are far from standard. What is even more annoying though is how far each vendor's compilers differ from each other for the same part.

Max The Magnificent
User Rank
Blogger
re: How to go about selecting a microcontroller
Max The Magnificent   2/3/2012 3:09:58 PM
NO RATINGS
I disagree -- I can do something wrong MUCH FASTER than I can do it right (of course it then takes me ages to fix things [grin])

cdhmanning
User Rank
Rookie
re: How to go about selecting a microcontroller
cdhmanning   2/3/2012 12:50:08 AM
NO RATINGS
Doing it wrong is very seldom faster than doing it right.

cdhmanning
User Rank
Rookie
re: How to go about selecting a microcontroller
cdhmanning   2/3/2012 12:49:36 AM
NO RATINGS
I must agree with this 100%. I wrote a PIC assembler back in 1993 and I did a lot of 8051 work in the late 80s and early 90s. I used PLM51 for the 8051s. I looked at the C offerings but none really fit well. I was completely stunned when a C compiler was announced for the 8-bit PICs and was not at all surprised when it ended up being really half-assed. The whole point of having C is being able to drop in portable code - something close to impossible with 8-bit PICs. AVR is a lot better - but is still not there. For instance the use of const data requires decoration. There are still universities that teach embedded C using PICs. Crazy. Far better to teach on a device that actually supports C properly and encourages the use of proper data structures and abstractions. MIPS, ARM, even AVR (Arduino) fine. PIC and 8051 just are not! I think it is a great idea to use the PIC as a way to introduce people to how a CPU works - mainly because it is so simple and really easy to program in assembler. However as soon as they understand the basics I would encourage moving on to a more capable architecture.

eteonline
User Rank
Rookie
re: How to go about selecting a microcontroller
eteonline   2/2/2012 5:57:33 PM
NO RATINGS
It might be that the best thing a young engineer can do is make sure that the device and software are appropriate for the job. In industrial controls particularly, it is no benefit to provide finicky controls, created by devices operated at unnecessarily high speed. The end user will not be impressed by your engineering expertise, only by the fact your board costs $5000 to replace to control simple functions, because your great new processor requires a 16 layer board which is unrepairable.

Max The Magnificent
User Rank
Blogger
re: How to go about selecting a microcontroller
Max The Magnificent   2/2/2012 4:32:47 PM
NO RATINGS
Don;t hold back -- tell us what you really think (grin). When I first ran across PICs, I felt like I was the only one who thought the architecture was a little "strange" ... but I know folks who are devoted to these little scamps ... go figure...

msamek275
User Rank
Rookie
re: How to go about selecting a microcontroller
msamek275   2/2/2012 3:51:59 PM
NO RATINGS
This article presents a very hardware-centric and outdated point of view. Sure, pins and peripherals are important, but the article completely overlooks that the CPU core determines the ease of software development. Unfortunately, the baroque 8-bit PIC core is one of the most C-unfriendly cores in existence. Due to the crippled stack and fragmented memory no "C" compilers for the PIC can fully comply with the C standard. The PIC has also the worst code density in the industry. The PICs and 8051 sure had their place in history, but promoting these outdated architectures in the 21 century only because of intellectual inertia of the older generation is a disservice to the younger engineers entering the field.

Duane Benson
User Rank
Blogger
re: How to go about selecting a microcontroller
Duane Benson   2/1/2012 10:08:08 PM
NO RATINGS
Hopefully a bigger project team will have enough resources to carefully evaluate more parameters than an individual developer. That makes it easier to understand and appropriately respond to the trade offs between hardware design costs, software development costs and production costs. Unfortunately, even when on a team, I've seen far too many schedules that don't really afford the time to do it right. That situation may bring up considerations that, in an ideal world, really shouldn't influence the choice.

Page 1 / 2   >   >>
Radio
NEXT UPCOMING BROADCAST
How to Cope with a Burpy Comet
October 17, 2pm EDT Friday
EE Times Editorial Director Karen Field interviews Andrea Accomazzo, Flight Director for the Rosetta Spacecraft.
August Cartoon Caption Winner!
August Cartoon Caption Winner!
"All the King's horses and all the KIng's men gave up on Humpty, so they handed the problem off to Engineering."
5 comments
Top Comments of the Week
Like Us on Facebook

Datasheets.com Parts Search

185 million searchable parts
(please enter a part number or hit search to begin)
EE Times on Twitter
EE Times Twitter Feed