Many developers are used to use one or two types of microcontrollers for their projects. And if they start new project they choose another one of its family. For instance, if I always work with AVR microcontrollers then there is very big chance that microcontroller in the next design will be AVR series. But again lets think - is our choice based on our habits or some facts? Sometimes this can lead to project failure or other shortcomings. This article is about how to define which microcontroller is better for you design. You will se how important is to answer some questions before you make decision.
Many times people like to chose powerful and expensive microcontroller as they can many. But do we always need this? Sometimes we don't need even half of its resources so why waste money and your time- as powerful microcontrollers are more complex.
Before you are developing something ask a question yourself: What task microcontroller is going to perform in my system? By answering this question you will define some requirements of your embedded processor.
Second step what you should do is search for microcontroller with your required parameters. Use any source like data-sheets, press releases, magazines, manufacturer sites or even ask your friends advice. When you have a set of microcontrollers you thin would fit to your projects then go through series of questions to chose right one:
Does microcontroller have enough I/O pins?
Does microcontroller have required peripherals like RAM, ROM, ADC, DAC and so on?
Does microcontroller have enough calculation power to be able do its job in real time? How long does it take to perform one operation, read from memory and so on;
Can you afford to buy this microcontroller? Calculate how much will it cost to develop your idea - maybe it is better to look for another microcontroller;
can you get your microcontroller in your market easily?
Is manufacturing of this microcontroller in progress or reached end of line?
What is future plans of this microcontroller?
Does manufacturer support you microcontroller with all tools like Assembler, <---****HYPERLINK****--->http://winavr.scienceprog.com>compilers, programmers, emulators etc?
Is there enough information about this microcontrollers including examples, error reports, utilities, sample codes?
Is there any special groups of support?
Is there any communities who are always ready to help you in forums?
And of course what is your personal experience in this area?
Final word of your choice will yours. Microcontrollers now are very powerful and cheaper and there are a lot of microcontroller you can chose for tour tasks. If you have enough experience - use your own criteria of microcontroller choice.