Skip to content

Electronics Design

For our group assignment, we examined the behavior of an Arduino Uno in order to better understand how a microcontroller operates electrically. Instead of only looking at the code, we focused on measuring and interpreting real signals on the board. To do this, we used an oscilloscope, a multimeter and a logic analyzer. Each device allowed us to observe the system from a different technical perspective.


Oscilloscope

An oscilloscope is used to visualize voltage as it changes over time. Unlike a simple voltage measurement, it does not just display a single number but shows the entire waveform on a screen. This makes it possible to analyze how signals behave dynamically.

Calibration

Arduino Uno Outputs

When measuring the Arduino Uno, we were able to see digital signals switching between LOW and HIGH levels. The oscilloscope displayed these transitions as square waves, which helped us understand the timing and frequency of the signals. It also made visible how clean the transitions were and whether there was any noise or instability present. The horizontal axis of the display represents time, while the vertical axis represents voltage. By adjusting the time scale and voltage range, we could closely inspect how fast the signal edges were and whether the amplitude matched the expected 5V logic level. Using the oscilloscope made it clear that digital communication is not just abstract HIGH and LOW states, but real electrical signals with measurable physical properties.


Multimeter (Voltmeter)

The multimeter was used to measure instantaneous voltage values on the board. In contrast to the oscilloscope, it does not show the signal over time but instead provides a single measured value. This makes it especially useful for checking stable DC voltages. When analyzing the Arduino Uno, we used the multimeter to verify the supply voltage and confirm that the board was operating at the expected 5V level. This ensured that the power supply was stable before investigating more complex signals. Although the multimeter provides less visual information compared to the oscilloscope, it is an essential diagnostic tool. It allows quick verification of voltage levels and helps identify basic issues such as missing power or incorrect wiring.


Logic Analyzer

The logic analyzer was used to observe digital communication between the microcontroller and connected components. While the oscilloscope shows analog waveforms, the logic analyzer interprets signals strictly as digital states. It recognizes whether a signal is HIGH or LOW and records these states over time. When connected to communication lines, the logic analyzer was able to capture entire data transmissions. It also allowed us to decode protocol-level information, such as clock signals and transmitted data bits. This made it possible to see not only that a signal was switching, but also what information was being sent. Compared to the oscilloscope, the logic analyzer is less focused on signal shape and more focused on digital logic and communication structure. It is particularly useful when working with protocols, because it translates electrical activity directly into readable data. For the experimental setup, we used an Arduino Uno connected to a potentiometer. The potentiometer was wired to an analog input pin of the microcontroller in order to vary the input value manually during operation. The analog value read by the Arduino was used to control the delay inside a simple HIGH–LOW switching loop. The program continuously toggled a digital output pin between HIGH and LOW, while the duration of each state depended on the measured analog value. By turning the potentiometer, the delay time changed in real time. This directly influenced the switching frequency of the digital output signal. Instead of observing the signal with an LED, we measured the output using the oscilloscope and the logic analyzer. As the potentiometer position changed, the frequency of the square wave visibly increased or decreased. Therefore the frequency can be calculated with f=1/(2*delay). This setup clearly demonstrated how an analog input can dynamically control digital timing behavior in a microcontroller system.