What is a microcontroller and what does it do in a design
Published time: 2020-02-19 13:47:06
Microcontrollers are small, versatile, and inexpensive devices that can be successfully implemented and programmed not only by experienced electrical engineers, but also by amateurs, students, and professionals in other disciplines.
The list of microcontroller applications is long, such as low-cost wearables, medical devices, high-end consumer electronics, rugged industrial equipment, state-of-the-art military and aerospace systems, these are adaptable, affordable, and user-friendly Components are used in almost all electronic products.
In this article we will discuss the definition of a microcontroller and consider its use in design.
What is a microcontroller?
A microcontroller is an integrated circuit (IC) device used to control other parts of an electronic system, usually through a microprocessor unit (MPU), memory, and some peripherals. These devices are optimized for embedded applications that require both processing power and flexible, responsive interaction with digital, analog, or electromechanical components.
The most common way to refer to this type of integrated circuit is a "microcontroller", but the abbreviation "MCU" is used interchangeably because it stands for "microcontroller unit". You may occasionally see "μC" (the Greek letter mu replaces "micro").
"Microcontroller" is a well-chosen name because it emphasizes the characteristics that define this product category. The prefix "micro" means small, and the term "controller" here means enhanced ability to perform control functions. As mentioned above, this feature is the result of combining a digital processor and digital memory with additional hardware specifically designed to help the microcontroller interact with other components.
Microcontrollers and microprocessors
When referring to a microcontroller, people sometimes use the term "microprocessor" or "MPU", but the two devices are not necessarily the same. Microprocessors and microcontrollers are small, highly integrated computer systems, but they can be used for different purposes.
The term "processor" is used to identify a system consisting of a central processing unit and some memory; a microprocessor is a device that implements all the functions of a processor in a single integrated circuit. In contrast, microcontrollers place more emphasis on additional hardware modules that allow the device to control the system rather than simply execute instructions and store data.
In general, the use of the terms "microprocessor" and "microcontroller" is not a major issue when we speak informally or we try to avoid saying the same word over and over again. However, in the context of technical discussions, it is important to maintain the distinction between the two concepts.
Microcontrollers and Digital Signal Processors (DSPs)
A digital signal processor (or "DSP") is a microprocessor that is optimized for demanding computing tasks, such as digital filtering, mathematical analysis of real-time signals, and data compression. A highly complex microcontroller can be used as a replacement for a digital signal processor, but if a large portion of its internal circuitry is used to control, monitor and communicate with surrounding systems, it is still considered a microcontroller.
The microcontroller consists of a central processing unit (CPU), non-volatile memory, volatile memory, peripheral devices and supporting circuits.
The CPU performs arithmetic operations, manages the data flow, and generates control signals based on the sequence of instructions created by the programmer. Designers don't see the extremely complex circuits required for CPU functionality. In fact, writing microcontroller code is usually a fairly simple task due to integrated development environments and high-level languages such as C.
Non-volatile memory is used to store the microcontroller's programs-a list of machine language instructions that tell the CPU exactly what to do. You usually see "Flash" (referring to a specific form of non-volatile data storage) instead of "non-volatile memory."
Volatile memory (ie, RAM) is used for temporary data storage. This data will be lost when the microcontroller is powered off. The internal registers also provide temporary data storage, but we don't consider them as a separate function block because they are integrated in the CPU.
We use the term "peripheral" to describe hardware modules that help the microcontroller interact with external systems. The following points identify the various peripherals and provide examples.
Data converter: analog-to-digital converter, digital-to-analog converter, reference voltage generator
Clock generation: internal oscillator, crystal drive circuit, phase-locked loop
Timing: General-purpose timer, real-time clock, external event counter, pulse modulation
Analog signal processing: operational amplifier, analog comparator
Input / output: universal digital input and output circuit, parallel memory interface
Serial communication: UART, SPI, I2C, USB
Microcontrollers contain various functional blocks that cannot be classified as peripherals because their main purpose is not to control, monitor, or communicate with external components. Nonetheless, they are important-they support the internal operation of the device, simplifying implementation and improving the development process.
The debug circuit allows the designer to carefully monitor the microcontroller while executing instructions. This is an important and sometimes indispensable method for tracking errors and optimizing firmware performance.
Interrupts are a very valuable aspect of microcontroller functionality. Interrupts are generated by external or internal hardware-based events that enable the processor to respond to these events immediately by executing a specific set of instructions.
Microcontroller programs written in C are organized into functions. An interrupt causes the program to execute a "vector" to the interrupt service routine (ISR), and after the ISR completes its task, the processor returns to the function that was executing when the interrupt occurred.
If the clock generation module is used to generate a signal that will be used outside the chip, it can be considered a peripheral, but in many cases the main purpose of the microcontroller's internal oscillator is to provide clock signals to the CPU and peripherals. Internal oscillators are usually less accurate, but they are a convenient and effective way to simplify design and save board space in applications that can withstand this low accuracy.
The microcontroller can contain various types of power circuits. Integrated voltage regulator allows the required supply voltage to be generated on-chip, the power management module can be used to significantly reduce the current consumption of the device in inactive state, and the monitoring module can place the processor in a stable reset state when the power supply voltage is unstable High enough to ensure reliable operation.Tag: microcontroller