Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
(https://www.facebook.com/electronicscomponents101) (https://twitter.com/components101)
(https://pinterest.com/components101)
(/)
Arduino Uno
28 February 2018 - 0 Comments
(/sites/default/ les/components/Arduino-Uno-
Board.jpg) (/sites/default/ les/component_pin/Arduino-Uno-Pin-
Diagram.png)
Pin Description
https://components101.com/microcontrollers/arduino-uno 1/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
Power Vin, 3.3V, 5V, GND Vin: Input voltage to Arduino when using an external power
source.
Serial 0(Rx), 1(Tx) Used to receive and transmit TTL serial data.
Microcontroller ATmega328P
(https://components101.com/microcontrollers/atmega328p-pinout-
features-datasheet) – 8 bit AVR family microcontroller
https://components101.com/microcontrollers/arduino-uno 2/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
Operating Voltage 5V
SRAM 2 KB
EEPROM 1 KB
Overview
Arduino Uno is a microcontroller board based on 8-bit ATmega328P microcontroller. Along with
ATmega328P, it consists other components such as crystal oscillator, serial communication, voltage regulator,
etc. to support the microcontroller. Arduino Uno has 14 digital input/output pins (out of which 6 can be used
as PWM outputs), 6 analog input pins, a USB connection, A Power barrel jack, an ICSP header and a reset
button.
https://components101.com/microcontrollers/arduino-uno 3/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
The 14 digital input/output pins can be used as input or output pins by using pinMode(), digitalRead() and
digitalWrite() functions in arduino programming. Each pin operate at 5V and can provide or receive a
maximum of 40mA current, and has an internal pull-up resistor of 20-50 KOhms which are disconnected by
default. Out of these 14 pins, some pins have speci c functions as listed below:
Serial Pins 0 (Rx) and 1 (Tx): Rx and Tx pins are used to receive and transmit TTL serial data. They are
connected with the corresponding ATmega328P USB to TTL serial chip.
External Interrupt Pins 2 and 3: These pins can be con gured to trigger an interrupt on a low value, a
rising or falling edge, or a change in value.
PWM Pins 3, 5, 6, 9 and 11: These pins provide an 8-bit PWM output by using analogWrite() function.
SPI Pins 10 (SS), 11 (MOSI), 12 (MISO) and 13 (SCK): These pins are used for SPI communication.
In-built LED Pin 13: This pin is connected with an built-in LED, when pin 13 is HIGH – LED is on and
when pin 13 is LOW, its o .
Along with 14 Digital pins, there are 6 analog input pins, each of which provide 10 bits of resolution, i.e. 1024
di erent values. They measure from 0 to 5 volts but this limit can be increased by using AREF pin with analog
Reference() function.
Analog pin 4 (SDA) and pin 5 (SCA) also used for TWI communication using Wire library.
Communication
Arduino can be used to communicate with a computer, another Arduino board or other microcontrollers. The
ATmega328P microcontroller provides UART TTL (5V) serial communication which can be done using digital
pin 0 (Rx) and digital pin 1 (Tx). An ATmega16U2 on the board channels this serial communication over USB
and appears as a virtual com port to software on the computer. The ATmega16U2 rmware uses the standard
USB COM drivers, and no external driver is needed. However, on Windows, a .inf le is required. The Arduino
software includes a serial monitor which allows simple textual data to be sent to and from the Arduino board.
There are two RX and TX LEDs on the arduino board which will ash when data is being transmitted via the
USB-to-serial chip and USB connection to the computer (not for serial communication on pins 0 and 1). A
SoftwareSerial library allows for serial communication on any of the Uno's digital pins. The ATmega328P also
supports I2C (TWI) and SPI communication. The Arduino software includes a Wire library to simplify use of the
I2C bus.
When ATmega328 chip is used in place of Arduino Uno, or vice versa, the image below shows the pin mapping
between the two.
https://components101.com/microcontrollers/arduino-uno 4/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
Software
Arduino IDE (Integrated Development Environment) is required to program the Arduino Uno board.
Download it here (https://www.arduino.cc/en/Main/Software).
Programming Arduino
Once arduino IDE is installed on the computer, connect the board with computer using USB cable. Now open
the arduino IDE and choose the correct board by selecting Tools>Boards>Arduino/Genuino Uno, and choose
the correct Port by selecting Tools>Port. Arduino Uno is programmed using Arduino programming language
based on Wiring. To get it started with Arduino Uno board and blink the built-in LED, load the example code
by selecting Files>Examples>Basics>Blink. Once the example code (also shown below) is loaded into your IDE,
click on the ‘upload’ button given on the top bar. Once the upload is nished, you should see the Arduino’s
built-in LED blinking. Below is the example code for blinking:
https://components101.com/microcontrollers/arduino-uno 5/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
// the setup function runs once when you press reset or power the board
void setup() {
// initialize digital pin LED_BUILTIN as an output.
pinMode(LED_BUILTIN, OUTPUT);
}
Applications
https://components101.com/microcontrollers/arduino-uno 6/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
Component Datasheet
Arduino Uno Datasheet
(https://components101.com/sites/default/ les/component_datasheet/A
Tags
ARDUINO (/TAGS/ARDUINO)
https://components101.com/microcontrollers/arduino-uno 7/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
LATEST POSTS
(/articles/how-to-use-tvs-diodes-for-transient-voltage-suppression)
https://components101.com/microcontrollers/arduino-uno 8/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
(/diodes/sd103-small-signal-schottky-diode)
https://components101.com/microcontrollers/arduino-uno 9/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
(/news/viper-converter-features-high-mosfet-breakdown-voltage-1050v-robust-and-reliable-power-
supplies)
https://components101.com/microcontrollers/arduino-uno 10/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
(/sensors/vl53l0x-lidar-distance-sensor)
Components101 is a resource dedicated for electronics design engineers, covering product news, analysis
IMPORTANT LINKS
Contact
Advertise
https://components101.com/microcontrollers/arduino-uno 11/12
8/4/2019 Arduino Uno Pin Diagram, Specifications, Pin Configuration & Programming
Privacy Policy
Cookie Policy
POPULAR TAGS
Embedded (/tags/embedded)
PNP Transistor (/tags/pnp-transistor)
Automotive (/tags/automotive)
email address
Subscribe
https://components101.com/microcontrollers/arduino-uno 12/12