A microcontroller is effectively a small, low-cost computer designed to perform a small number of specific tasks. Unlike a common desktop computer, a microcontroller will often run a single program, compared to the thousands of programs a computer can run. They are often low-power devices as well, able to be run off of standard battery power, and thus can be used in portable devices.
The basic task of a microcontroller is to receive input from the device it is controlling, then using a programmable processing chip it reads its program from the small memory storage, and then controls the device by sending signals to different components within the device. For example, the microcontroller inside a TV takes input from the remote control and displays output on the TV screen, controlling the channel selector, the speaker system and certain adjustments on the picture such as tint and brightness.
Microcontrollers are often "embedded" inside some other device so that they can control the features or actions of the product, thus they are also referred to as an "embedded controller."
Most microcontrollers fall into one of four main architectures:
- 8051 - An 8-bit microcontroller with 4kb of ROM (on-chip programmable space) and 128 bytes of RAM space which is inbuilt. (From Electronics Hub)
- PIC - A family of 8-bit microcontrollers with additional peripherals which are able to be programmed via serial communication. (From Electronics Hub)
- AVR - a customized Harvard architecture 8-bit RISC solitary chip micro-controller, capable of utilizing on-board flash memory storage. (From Electronics Hub)
- ARM - a 32 bit genuine RISC architecture which is particularly designed for micro-controller devices, it is simple to be trained and make use of however powerful enough for the most challenging embedded devices. It is the common choice for development boards like the Arduino. (From Electronics Hub)