DEV Community

Cover image for What is a Microcontroller?
Mansoor Ahmed
Mansoor Ahmed

Posted on

What is a Microcontroller?

Description
The microcontroller is the smallest computer on a single (MOS) metal oxide semiconductor joint with a circuit chip. A microcontroller encloses one or more CPUs together with memory and programmable input/output peripherals. The program memory in the method of ferroelectric RAM, OTP ROM, or NOR flash is also regularly comprised on-chip, along with a slight size of RAM. Indifference to the microprocessors used in personal computers, the microcontrollers are designed for embedded applications. In modern language, the microcontroller is a system on a chip that usually participates with advanced peripherals similar to one or more coprocessors, graphics processing unit (GPU), and Wi-Fi module. The microcontrollers are economical and prevalent earnings of data collection, sensing, and actuating the physical world as edge devices in the environment of the internet of things (IoT).
Microcontroller Uses
The microcontrollers are typically used in automatically controlled products and devices. These are used in automobile engine control systems, remote controls, office machines, implantable medical devices, power tools, appliances, toys, and other embedded systems. Particular microcontrollers can use four-bit words and function at frequencies as little as 4 kHz for low power consumption. The microcontrollers can help performance-critical roles. With higher clock speeds and power consumption, they can essential to act more like a digital processor (DSP).
Microcontroller Characteristics
Architecture (ARM, ESP32)
Data path bit width (4–128 bits)
Number of bits in each registry
Determine accuracy and data throughput
Input/output pins
Need enough pins to support the application
Performance
The clock rates are slower than desktops
Timers
Needed for real-time applications
Analog to Digital Convertors
Used to read input from analog sensors
Low power modes
Power saving is key
Communication protocol support
Interface with other IC’s
UART, I2C, SPI, etc.
Microcontroller Development​
The first microcontroller was created by Gary Boone and Michael Cochran in 1971.
The first microcontroller was shared with read-only memory and read/write memory.
Japanese started producing microcontrollers for automobiles in the early-to-mid 1970s. Those microcontrollers were 4-bit MCU for in-car entertainment, electronic locks, automatic wipers & dashboard, and 8-bit MCUs for engine control.
The Intel Company developed a computer system on a chip optimized for control applications in 1977. This was combined with RAM and ROM on the same chip with a microprocessor.
The starter of EEPROM memory permitted microcontrollers to be electrically erased rapidly without an affluent package as necessary for EPROM, permitting together quick prototyping, and in-system programming in 1993.
These days the microcontrollers are low-priced and willingly available for hobbyists, with great online communities everywhere certain processors.
Tiniest computer​
The University of Michigan announced the world’s tiniest computer on 21, June 2018. It is a “0.04mm3 16nW wireless and batteryless sensor system with combined Cortex-M0+ processor and optical communication for cellular temperature measurement. The device is combined with blockchain and has a million transistors as it costs less than $0.10 to manufacture. The device has 1/10th the size of IBM’s formerly claimed world-record-sized computer.
Embedded System
The microcontroller may be measured as a self-contained system with a processor, memory, and peripherals. It can be used as an embedded system. Today, the standard of microcontrollers in use is embedded in different other equipment, for example, telephones, automobiles, appliances, and peripherals for computer systems. Though certain embedded systems are very refined, numerous have minimal requirements for memory and program length, with low software complexity and with no operating system. Usually, the input and output devices comprise relays, switches, solenoids, LEDs, radiofrequency devices, small or custom liquid-crystal displays, and sensors for data such as temperature, humidity, light level, etc. Generally, the embedded systems have no screen, keyboard, printers, and disks.
Microcontroller programs and their programming environments​
The programs of the microcontroller must be appropriate in the obtainable on-chip memory. Meanwhile, it would be costly to deliver a system with outside and expandable memory. For converting the high-level assembly language codes into a compact machine code for storage in the micro controller’s memory the compilers and assemblies are used.
The program memory can be permanent, read-only memory depending on the device. It can only be programmed at the factory, field-alterable flash, or erasable read-only memory. Builders have repeatedly made special versions of their micro-controllers in order to benefit the hardware and software development of the board system these formerly built-in EPROM versions. The routine of field-programmable devices on a microcontroller might permit field updates of the firmware or allow late factory revisions to products that have been collected but not yet shipped. Programmable memory similarly decreases the lead time necessary for the deployment of a new product.
High-level programming languages such as C, Python, and JavaScript, are in common use to emphasize microcontrollers and embedded systems. A number of microcontrollers have environments to support developing firm sorts of applications.
Microcontroller retailers regularly make tools freely available to form it stress-free to accept their hardware. Moreover, the interpreter firmware is obtainable for a few microcontrollers. The Simulators are open for rare microcontrollers. These permit a developer to research what the behavior of the microcontroller and their program should be if they were using the particular part. New microcontrollers are frequently combined with on-chip debug motherboards. It allows debugging of the firmware with a debugger when accessed by an in-circuit emulator (ICE) via JTAG. The real-time ICE can allow watching and operating of internal states while running.
For more details visit:https://www.technologiesinindustry4.com/2020/11/what-is-microcontroller.html

Discussion (0)