Microcontroller selection - How do you choose?Duane Benson
10/12/2010 1:16 PM EDT
The recent blog posting: 'Renesas simplifies MCU selection: What now for independents?' got me thinking about the MCU selection process. Myself, I tend to use Microchip PIC processors. I could just as easily use Atmel parts or chips from a dozen other vendors. I find it very difficult to really differentiate between different families in the same class. I use 8-bit PICs because somewhere, way back when, the first robot kit I bought and built used a PIC 16F877. I got familiar with it and the tools surrounding it and have stuck with 16F and 18F MCUs ever since. In making my selection for new designs, I start with the factors that will rule out a part family: (A) Can I start with larger, easy to handle form-factors and later replace the big parts with smaller packaged versions? (B) Can I easily move up and down through the family as I need different specific feature sets? (C) Can I use the same tool chain? My selection parameter (A) is probably the tightest gating factor. The really high-performance chips may require memory management, critical high-speed PCB layout or a full operating system. I don’t know of any of the high-performance MCUs that come in thru-hole or even wide-pitch SMT. That one parameter keeps me down in the 8-bit processors. Microchip and Atmel processors both meet my selection criteria (A) and (B), as would a lot if low-end ARM processors, 8051-derivatives and a few other families. Criterion (C) keeps me with the PICs. I know the tools and the language quirks. I can’t see enough differentiation with anything else that meets all three to incent me to make a change. How do you make your MCU selections? How do you differentiate between different manufacturers products? Why do you pick an ARM, a Frescale, a PIC, an Atmel or other?