How to Choose a Microcontroller
For all the Electronics Project Enthusiasts out there, who are eager to start with the hands-on experience of Microcontrollers but are not aware of what microcontroller they should start working with, this article is for you.
But before answering How to Select a Microcontroller for your Projects, lets answer;
Why is there a need to Select a Microcontroller?
There are a plethora of companies that manufacture numerous Microcontrollers that can be used to build small and basic embedded systems to complex and Large Automated Systems. These Microcontrollers have variable bit processing powers, the higher the bit processing power, the higher is their power consumption. They come in Various Sizes and Specifications. Based on these they might be fruitful in some projects and might be completely useless in some applications. Thus we need to select a suitable Microcontroller based on our requirements.
How to select a Microcontroller
Here are three criteria that are vital when choosing a Microcontroller1. Does the Microcontroller meet the Computing needs of the task efficiently and cost-effectively?
- Processing Speed: Let's suppose that one wants to make an embedded system for a washing machine to automate the whole process. In this case, the speed of the microcontroller won't be a major criterion, but if you want to make an automated system for Monitoring Airplane Landing, speed becomes vital. The processing Speed of the Microcontroller can be judged by the Clock speed it has, its Processor might give this information.
- The Amount of ROM and RAM: This again is defendant on the application you are using the microcontroller for ROM is Read-only memory which if is high, can be used to store code or program that need not be changed. RAM on the other hand is volatile memory storage that is erased every time you re-run the controller, if RAM is high and your microcontroller requires to load the program after every run, then the functioning will smoothen.
- The number of I/O ports: The application you are using the microcontroller for might require some input and give some output, depending on the number of these operations, a suitable microcontroller may be chosen. Some popular Microcontrollers in the market come with 40 general-purpose input-output pins which prove to be satisfactory in most cases.
- Power Consumption: Depending on the bit processing power, the power consumption of microcontrollers can be judged. The higher the bit processing power, the higher is the power consumption, thus if your application requires huge computations and high bit operations you need to have a 32 bit or more microcontroller to avoid any failures.
- Easy to upgrade: Say that you build your project, but now after some time you need to upgrade certain things in your microcontroller to inculcate updates in your current project. In such cases, it is preferable to buy a microcontroller that can be upgraded in the long run.
- Cost per unit: The most important selection criteria is indeed the cost of the microcontroller, your application deserves the best microcontroller there is, but budgeting is also important, thus keeping in mind the above subpoints you need to choose a microcontroller that just about fulfills the requirements. There are Microcontrollers in the Market whose price ranges from 200 rupees to q thousand bucks and even more in some cases. Thus over expenditure is expected when buying a microcontroller.
2. Availability of Software Development Tools:
Based on the selected microcontroller you need to work with some development tools that are required to code a program that is to be loaded on the microcontroller. These Development tools may or may not be easily available on the internet. Thus when choosing a Microcontroller you need to consider the availability of the Development tools. Also, if they are available, one needs to ensure that proper documentation of development tools is present because it is obvious that one might experience some errors and exceptions while coding or compiling the program which needs to be rectified, and without proper documentation, one might struggle. To avoid such instances you should ensure that there is the availability of the Development tools and their Documentation.
3. Wide Availability and reliable sources of the Microcontrollers in the present and future:
Let’s assume that your Project is a Robot for Cleaning dust. You go online or to the market and buy a microcontroller and build a robot with it. It works well and thus the job for you without any hassle. Now you need to build 20 more such robots for retail purposes and now when you go to the market to buy it, it is not available as it is not more manufactured. You can buy a different microcontroller with similar specifications, but who knows whether it will work the same way it does now? Thus should be ensured that the microcontroller that is being used is widely and easily available and is bought from reliable sources like Robocraze