Skip to main content

What are Microcontrollers?

 Without going to reproduce a customary history lesson on the evolution of microcontrollers ever since the late 1960s, it is pertinent to discuss their characteristics and capabilities.

Often confusing terms: microcontroller and System on Chip (SoC) are quite close to each other. And due to massive improvements in IC designs, differences often described are quite blurry.

Anyhow, by common definition, microcontrollers are differentiated from microprocessors, wherein, microprocessors are specialized in running general-purpose applications and working in combination with external devices and chipset including RAM (Read Only Memory), hardware IO (input and output) and other peripheral devices.

In contrast, microcontrollers have remained specific for embedded applications. Wherein, they have processing resources, programmable memory, RAM, and limited IO peripherals etched on a single chip.

Quite recently, SoC devices have been gaining popularity partially due to open-source projects and partially due to lowering prices of chip manufacturing with advanced capabilities.

SoCs can be regarded as more powerful and advanced microcontrollers that have peripherals like Wi-Fi, Ethernet, Bluetooth and perhaps other communication cores provided on the same single chip – enhancing connectivity while providing much more compute power as compared with commonly available microcontrollers.

As a sidenote: In contrast with common belief, there are quite a vast number of 4-bit microcontrollers in use these days. But recently, due to lowering prices, increasing production capabilities, and increasing complex requirements of modern designs, 32-bit microcontrollers are getting the centerstage.

Well, how many microcontrollers can you name?

Comments

Popular posts from this blog

Comparing the Performance of the Most Popular Programming Languages

In choosing a programming language or multiple languages for a project, performance is often one of the primary concerns amongst others. Whether you're building a system-level application, a web service, a web server, or a data-heavy application, how a language handles execution speed, memory management, and available optimization options play a crucial role in determining the success of your project. Other than the programming languages, frameworks and libraries have also been playing crucial part since the time frameworks and libraries started to emerge in the programming world. Recently a video has been taking rounds over the social media and has given rise to various irrelevant concerns amongst the masses. For reference, the video is added here, and the original source of it is unknown at the time of this writing. Thereby its attribution is not being mentioned in this article, or on the video uploaded on YouTube: While each of the languages and technologies mentioned in the vi...