An embedded microcontroller utilizes input/output (IO) signals to
communicate with the outside world. The simplest form of IO is
commonly referred to as general purpose input/output (GPIO) where
the GPIO voltage level can be high, low, or high-impedance. Pulling
resistors are used to ensure GPIO is always in a valid state.

LEDs are a common element of many embedded designs. Though the devices are
simple; their implementation is not always simplistic. Optimizing LED cost
and performance includes ensuring the driving circuitry is providing the
correct voltage and current.

Doxygen is a free source code documentation tool. It automatically
decomposes a software design when using an object-oriented programming
language such as C++ or Java. When using C, however, there is no natural
break-down of the code so the developer must create groups (or modules) within
Doxygen to show a definitive decomposition of the design.