Microcontrollers

PROF.SSA MASELLA
Una introduzione in inglese sui microcontrollori.

Microcontrollers

A microcontroller is a small computer on a single metal-oxide semiconductor (MOS) integrated circuit chip. In modern terminology, it is similar to a system on a chip (SOC). A microcontroller contains one or more CPUs (processor cores) along with memory and programmable input/output peripherals. Microcontroller are designed for embedded applications in contrast to the microprocessors used in personal computers. They are used in automatically controlled products or devices. A microcontroller is much more efficient to control digital devices or processes. Furthermore mixed signals are very common in microcontrollers so they include analogue components needed to control non-digital electronic systems or signals. Microcontrollers are an economical and popular means of data collection, and some of them may use four-bit words and operate at frequencies as low as 4 kHz in order to low power consumptiobn. Microcontrollers must provide real time response to events in the embedded system they are controlling. When an event occurs, an interrupt system can warn the processor to suspend processing the current instruction sequence and start an interrupt service routine (ISR) that will perform any process based on the source of the interrupt. Interrupt sources may be device dependent, and include events like completing an analogue to digital conversion, or a logic level change on an input triggered by a button being pressed. Micro-controller programs generally must fit in the available on-chip memory, in order to provide system with external and expandable memory. The program memory may be permanent, ROM that can only be programmed at the factory, or it can be field-alterable flash or erasable read only memory. Microcontrollers usually contain from several to dozens of general purpose input/output pins. GPIO pins are software configurable to either on input or an output state. Dedicated on-chip hardware also include capabilities to communicate with other devices (chips) in digital formats such as I2C, or SPI and more common USB (universal serial bus) an also Ethernet.