How to Choose a Micro Controller

Choosing a micro controller is easy if you make sure you understand what exactly you need in your system. If you've landed on this page, then you are likely aware that micro controllers are used in automated products and devices, such as automobile engine control systems, implantable medical devices, remote controls, office machines, appliances, power tools, toys and other embedded systems. However, you may not be sure about which is the best for your device. Start with step 1 to learn how you choose a micro controller.


  1. Image titled Choose a Micro Controller Step 1
    Make a list of required hardware interfaces. Start with the basics. Prepare a block diagram of your project. By utilizing the general hardware block diagram, make a list of all the external interfaces that micro controller will support. There are two general types of interfaces.
    • The first type of interface is the communication interface. These are peripherals, for example, USB, I2C, SPI, UART, and so on. Make a special note about whether the application requires USB or some sort of ethernet. These interfaces greatly affect how much program space the micro controller will need to support.
    • The second type of interface is digital inputs and outputs, analog to digital inputs, etc. These two interface types will dictate the quantity of pins that the micro controller will need.
  2. Image titled Choose a Micro Controller Step 2
    Examine the software architecture. The software architecture and requirements can greatly influence the determination of a micro controller. How heavy or how light the requirements will determine whether you need a 80 MHz DSP or an 8 MHz 8051.
    • Also make a list of other requirements; for instance, are there any high frequency control loops or sensors or other mathematical notes? Gauge to what extent and how regularly every task will need to run. Get an order of magnitude feel for needed processing power. The measurement of the required force needed will be one of the greatest necessities for the design and frequency of the micro controller.
  3. Image titled Choose a Micro Controller Step 3
    Select the architecture. With the help of the information obtained by the previous steps, you now got an idea about what exactly is your requirement, weather you need 8 bits,16 bits or 32-bit ARM core. However, do not forget to keep the future requirements in mind. Your requirement may be of 8-bit micro controller now but you can also use a 16-bit micro controller for more features or even for the ease of use. Other way round, you may select a 16-bit part now but later you may find 32-bit ARM part works better. This step is simply for giving an engineer the right direction as experimenting will make you better.
  4. Image titled Choose a Micro Controller Step 4
    Identify memory needs. Flash and RAM are two very critical components of any micro controllers. Make sure how much memory do you need otherwise you will run out of program space or variable space. Using the software architecture and the communication peripherals included in the application, you can estimate how much flash and RAM will be required for the application. You can always start with more and then later move to a more constrained part within the same chip family.
  5. Image titled Choose a Micro Controller Step 5
    Start searching for micro controllers. You can start with looking for a micro controller once you have jot down all the aspects of your requirement. Talk with the Field Application Engineer about your application and requirements so that they can also direct you to a new part that meets your requirement.
    • The next best place to start is with a silicon provider that you are already familiar. Most silicon providers have a search engine that allows you to enter your peripheral sets, I/O and power requirements and it will narrow down the list of parts that match the criteria. From that list then you can move forward towards selecting a micro controller.
  6. Image titled Choose a Micro Controller Step 6
    Examine costs and power constraints. At this point, you will come across many potential candidates to select. Therefore, this is the best time to examine the power requirements and cost of the part. Price of the part is more critical in case of highly specialized or high-end processing machine. Do not forget about this key element. In addition, if the part does not meet your requirement the keep scrolling through the list until you have got the one you looking for.
  7. Image titled Choose a Micro Controller Step 7
    Check part availability. Next is the step of checking the availability of that part. Some of the things to keep in mind are what the lead times for the part? Are they available in stock at multiple distributors or is there 6 – 12 week lead-time? What are your requirements for availability? You do not want to get stick with a large order and have to wait three months to be able to fill it.
    • Then there is a question of how new the part is and whether it will be around for the duration of your product life cycle. If your product will be around for 10 years then you need to find a part that the manufacturer guarantees continuous production in 10 years.
  8. Image titled Choose a Micro Controller Step 8
    Select a development kit. One of the best parts of selecting a new micro controller is finding a development kit to play with and learn the inner working of the controller. Once you have selected the required part then you should surely research about what development kits are available. If a development kit is not available then the selected part is most likely not a good choice and you should go back a few steps and find a better part. Another part may be a better choice.
  9. Image titled Choose a Micro Controller Step 9
    Investigate compilers and tools. The selection of the development kit nearly solidifies the choice of micro controller. The last thing that needs your attentions is to examine the compiler and tools that are available. Most micro controllers have a number of choices for compilers, example code and debugging tools. Therefore, it is important to make sure that all the necessary tools are available for the part because without the right tools, the development process could become tedious and expensive.
  10. Image titled Choose a Micro Controller Step 10
    Start experimenting. Usually the development kit arrives long before the first prototype hardware. Take advantage by building up test circuits and interfacing them to the micro controller. Choose high-risk parts and get them working on the development kit. It may be that you discover the part you thought would work great has some unforeseen issue and that would force to select a different micro controller. In any event, early experimentation will ensure that you made the right choice.

Article Info

Categories: Hardware Maintenance and Repair