The Arduino Uno Rev 3 is a microcontroller board.
This is the reference Arduino version for prototyping, as lots and lots of tutorials use this version of Arduino as their reference board.
It has the same form factor and size of the Arduino 101, Arduino Zero, Arduino Yún, Arduino Leonardo, Arduino Uno Wifi rev 2 and Arduino Ethernet.
It comes with an 8-bit microcontroller, an ATmega328P, which comes with 32 KB of Flash memory, 2 KB of SRAM and 1 KB of EEPROM.
The Arduino runs at 16MHz at a voltage of 5V, and can be powered with a recommended input ranging from 7V to 12V.
In terms of I/O, the Arduino Uno has an USB-B port that can be used by a computer to transfer new programs to run, a power input and a set of I/O pins. It has 20 I/O pins, 14 digital and 6 analog pins that have 10 bits, mapping values from 0 to 1023.
In the above picture, we can see at the top the 14 digital I/O pins, which can be configured to be output pins or input pins programmatically.
At the bottom, we have the power pins, and the 6 analog input pins.
There is a built-in led, linked to pin 13, that offers us status information.
The Arduino Uno comes with an USB port that allows you to connect it to the computer and load a program on it.
The Arduino has no operating system, and it runs one single program at a time.
Once a program is loaded, it is booted any time the Arduino is powered, either via USB or via the power port via a AC-to-DC power cable or a battery. This means that once you load the program, you can put the Arduino on a mountain with a solar panel and a battery, and it will keep running until there’s power.