A microcontroller is a programmable electronic component that receives input data, processes it according to stored software, and controls outputs. In IB Design Technology A3.4, it is described as a programmable integrated circuit (PIC) into which software can be loaded to perform predetermined processing tasks.
A microcontroller combines several parts of a small computer within one integrated circuit. These normally include a processor, program memory, data memory, and input/output (I/O) pins. This makes it suitable for monitoring and controlling an electronic system without requiring a separate computer.
Its operation follows an input-process-output sequence:
| Stage | Function | Example in an automatic lighting system |
|---|---|---|
| Input | A sensor sends data to the microcontroller. | A light-dependent resistor detects low light intensity. |
| Process | The processor executes instructions stored in its program memory. | The software compares the sensor value with a programmed threshold. |
| Output | The microcontroller sends a control signal to an output component. | An LED or lamp is switched on. |
The software can be changed, allowing the same type of microcontroller to carry out different tasks. For example, one programmed device could control a security alarm, while another could regulate the temperature of a greenhouse.
A common misconception is that every integrated circuit is a microcontroller. An integrated circuit is any circuit manufactured on a single chip; a microcontroller is specifically programmable and contains processing, memory, and I/O capabilities. In wider electronics terminology, PIC also names a particular family of microcontrollers, but the IB syllabus uses PIC in the sense of a programmable integrated circuit.
Exam technique: For a “describe” question, state that software is loaded into the microcontroller and explain the input-process-output sequence. Do not simply call it a “small computer”; identify how it monitors inputs, processes data using programmed instructions, and controls outputs.
