This is an old revision of the document!
Table of Contents
SUT AVR Assembler Laboratory Node Hardware Reference
Introduction
Each laboratory node is equipped with an Arduino Uno R3 development board, based on the ATmega328P MCU. It also has two extension boards:
- external, analogue and digital communication board,
- user interface board presented on the image 1.
There are 8 laboratory nodes. They can be used independently, but to present collaboration, nodes are interconnected symmetrically with GPIOs presented in a hardware reference section below
Hardware reference
The table 1 lists all hardware components and details. Note that some elements are accessible, but their use is not supported via the remote lab, e.g., buttons and a buzzer.
The node is depicted in the figure 1.
| Component ID | Component | Hardware Details (controller) | Control method | GPIOs (as mapped to the Arduno Uno) | Remarks |
|---|---|---|---|---|---|
Communication
Devices (laboratory nodes) are interconnected in pairs, so it is possible to work in groups and implement scenarios involving more than one device:
- node 1 with node 2,
- node 3 with node 4,
- node 5 with node 6,
- node 7 with node 8.
Interconnections are symmetrical, so that device 1 can send data to device 2 and vice versa (similar to serial communication). Note that analogue inputs are also involved in the interconnection interface.
See image 2 for details.
[ktokarz][✓ ktokarz, 2025-12-13]Inject image of interconnection below
The in-series resistors protect the outputs of the Arduino boards from excessive current when both pins are set as outputs with opposite logical states.
The capacitors on the analogue lines filter the PWM signal, providing a stable voltage for measurement by the analogue-to-digital converter.
| Arduino Uno pin name | AVR pin name | Alternate function | Comment |
|---|---|---|---|
| D2 | PD2 | INT0 | Interrupt input |
| D5 | PD5 | T1 | Timer/counter input |
| D6 | PD6 | OC0A | PWM output to generate analogue voltage |
| D9 | PB1 | OC1A | Digital output / Timer output |
| D10 | PB2 | OC1B | Digital output / Timer output |
| A5 | PC5 | ADC5 | Analogue input |
Such a connection makes it possible to implement a variety of scenarios:
- Connection of OC0A to ADC5 allows you to generate a voltage for measuring on input 5 of the analogue-to-digital converter.
- Connection of OC1A to INT0 allows you to generate a digital periodic signal that can trigger hardware interrupts.
- Connection of OC1B to T1 allows you to generate a digital periodic signal, the pulse count of which can be counted using timer T1.
