Computers and Technology

How to choose a microcontroller?

Choosing the right microcontroller for a product can be a daunting task. Not only do you have to think about many technical features, but also business aspects such as cost and lead time that can cripple a project.

Early on in a project, you have the urge to jump right in and start choosing a microcontroller before agreeing on the details of the system, which is of course a bad idea.

Before thinking about microcontrollers, hardware and software engineers should develop high-level specifications of the system, and draw block diagrams and flow charts. Only then will there be sufficient information to make rational decisions about microcontroller selection. When you reach this stage, there are 10 simple steps to follow to make sure you make the right choice.

Step 1: Develop a list of required hardware interfaces

Using the overall hardware block diagram, develop a list of all external interfaces that the microcontroller needs to support. There are generally two types of interfaces that we need to list. The first interface is the communication interface, which includes peripheral interfaces such as USB, I2C, SPI, and UART.

Make a special note if the application requires USB or some form of Ethernet. These interfaces have a significant impact on the amount of program space that the microcontroller needs to support. The second interface is digital input and output, analog to digital input, PWM interface, etc.

These two interface types will dictate the number of pins required by the microcontroller. Figure 1 shows a generic example block diagram listing the i/o requirements.

Step 2: Check the software architecture

Software architecture and requirements have a significant impact on microcontroller selection. The severity of the processing requirements determines whether to use an 80 MHz DSP or an 8 MHz 8051. As with hardware, all important requirements should be noted.

Step 3: Choose Architecture

Using the information from Steps 1 and 2, the engineer should be able to have an initial idea of ​​the required architecture. Can the application be implemented with an 8-bit architecture? What about 16 bits? Or do I need a 32-bit ARM core? Between the application and the required software algorithm, these problems will begin to converge into a single solution. Don’t forget about possible future requirements and functional extensions.

Just because an 8-bit microcontroller fits your needs today doesn’t stop you from considering a 16-bit microcontroller for future functionality or ease of use. Remember that microcontroller selection can be an iterative process.

You might choose a 16-bit period at this step and find a 32-bit ARM part more suitable in a later step. This step just allows engineers to determine the right direction to move forward.

Step 4: Determine storage requirements

Flash and RAM are two very important components of any microcontroller. Make sure you don’t run out of program space, or that variable space is definitely the highest priority. When choosing parts, it’s easy to choose parts with too much functionality over those with less functionality.

By the end of the design, it’s not out of the ordinary to find that you need 110% of the space or need to cut back some features. After all, you’ll always start by wanting a little more and then move on to a slightly more limited part of the same chip family.

Using the software architecture and communication peripherals included in the application, engineers can estimate the flash and RAM size required for the application. Remember to leave some room for feature extensions and subsequent releases! This can save a lot of trouble in the future.

Step 5: Start looking for a microcontroller

Now that you have a better understanding of the microcontroller’s feature requirements, it’s time to start your search! A good place to start is a microcontroller supplier such as Arrow, Avnet or Future Electronics.

Talk to the FAE about your application and requirements, many times they can recommend new parts that are both cutting edge and satisfying. Just keep in mind that they may be under pressure to promote a certain family of microcontrollers at the moment!

The next best place is the chip supplier you are already familiar with. For example, if you’ve used certain microchip parts in the past and have a good relationship with the supplier, start your search on their website.

Most chip suppliers have search engines where you can enter your peripheral set, I/O and power requirements, and it will narrow down the list of eligible parts. From this list, engineers can continue to select microcontrollers.

Step 6: Check cost and power constraints

At this point, the selection process has yielded several potential candidates. Now is a great time to examine power requirements and component costs. If the device will be battery powered and of the mobile type, ensuring that the components have low power consumption is a top priority.

If parts do not meet the power requirements, we should remove them from the list until selected an eligible one. Also, don’t forget to check the unit price of the processor.

While wholesale prices for many parts have stabilized around $1, the unit price can be significant if the part is highly specialized or belongs to a high-end processor. Don’t forget this key factor.

Step 7: Check Part Availability

With the list of alternative parts finalized, it’s time to start reviewing parts availability. Here are a few things to keep in mind: What is the lead time for parts? Do multiple distributors maintain inventory?

Or need a 6–12 week lead time? What are your requirements for supply? You don’t want to be stuck with a large order and have to wait three months to fulfill the order.

Then there is the question of how old the part is and whether it will remain available for the life of your product. If your product is going to be available within 10 years, then you’re looking for parts that the manufacturer guarantees for 10 years.

Step 8: Choose a Development Kit

One of the most beautiful stages when choosing a new microcontroller is finding a development kit to research and understand the inner workings of the controller. Once engineers have identified the desired part, they should investigate what development kits are available.

If there is no development kit available, there is a good chance that the selected part is not the best choice, and it is time to take a few steps back to find a better part.

Today, most development kits’ price is under $100. If it goes over that price (unless it’s designed for multiple processor modules), it’s obviously too high. Other parts may be more suitable.

Step 9: Investigate compilers and tools

Selecting a development kit essentially implements the microcontroller selection. A final consideration is to check the available compilers and tools. Most microcontrollers offer several options for compilers, sample code, and debugging tools.

It is very important to have all the necessary tools for this part ready. Without the right tools, the development process can become tedious and costly.

Step 10: Start the experiment

Even if you choose a microcontroller, it doesn’t mean it’s set in stone. Often, it takes a long time to get the first prototype hardware after you get a development kit. At this point, we can build and interface the test circuit with the microcontroller. Select high-risk parts and have them work on the development kit.

You may find some unforeseen issues with parts that you thought were good, and have to choose another microcontroller. In any case, early experimentation will ensure that you make the right choice and that changes are necessary with minimal impact!

Why You Need A SaaS Application Development Company

Related Articles

Leave a Reply

Your email address will not be published. Required fields are marked *

Back to top button