I work at the moment with Arduino boards in my projects, but I don’t know if for other ones an Arduino Uno might be unsufficient (complex robots, computer vision, etc.). How can we now in advance if our microchip or board of choice will be sufficient? Could we get some advice and directions of chosing the perfect board for our project, and to how do the jump between Arduino and, say, ARM chips?
This is a really great question and I am sure is one that most of us will end up asking. What determines the “perfect board” can be pretty illusive, and given that Digikey lists almost 34,000 microcontroller variations, choosing the right one is not an easy task. As Arduino is pretty much limited to the ATTiny45/85, ATmega8, ATmega168, ATmega328, ATmega32u4, ATmega1280, and ATmega2560 there might be occasions where none will fit the bill……although I personally have not hit this wall.
When I begin the design process for a new project, I create a list of all of the features I would like the project to have, then attach the necessary I/O and pin requirements to each feature and generate a pseudo-schematic. As I am most familiar with Arduino, I look at the available chips and see which one most closely fits the bill. I.E. If there are just a few more I/O requirements then say the 328 can facilitate, I will either consider adding a MUX to bridge the gap or move to another Arduino compatible chip with more I/O.
Now, if you happen to be working on a project that is going to the more of a resource hog, moving to something like an ARM might be in your best interest. This tends to be the case when you move more in the direction of human interfacing, image processing, embedded OS’s, etc.
I have found a few articles that should assist in further answering the question:
It used to be that the number of different microcontroller chips available to the hobbyist was pretty limited. You got to use whatever you could manage to buy from the mail-order chip dealer, and that narrowed down the choice to a small number of chips.
Choosing a PIC according to your needs is sometimes a headache. There are people of course that hate headaches and therefore they use just 2-3 types of PICs and that’s all. That is a solution of course, absolutely inefficient though.
[Lesson 1 is a] tutorial [that addresses] the fundamental features of microcontrollers, explanation of processing power and power efficiency variables and a comparison RISC and CISC devices.
When choosing a microcontroller there are many options, so which platform should you choose? There is little independent information available to help engineers decide which platform might best suit their needs and most designers tend to stick with the brand with which they are familiar.
Choosing a Micro for an Embedded System Application
Dr. Manuel Jiménez from the University of Puerto Rico details the difficult task of choosing the right MCU.
I hope this has helped answer your question and good luck with your decision! If anyone has more insight they would like to share, please feel free to leave a comment!
Don’t forget, everyone is invited to ask a question!
“Ask an Educator” questions are answered by Adam Kemp, a high school teacher who has been teaching courses in Energy Systems, Systems Engineering, Robotics and Prototyping since 2005.