ATmega328 Arduino Uno Board Working and Its Applications

The Arduino Uno is one kind of microcontroller board based on ATmega328, and Uno is an Italian term which means one. Arduino Uno is named for marking the upcoming release of microcontroller board namely Arduino Uno Board 1.0. This board includes digital I/O pins-14, a power jack, analog i/ps-6, ceramic resonator-A16 MHz, a USB connection, an RST button, and an ICSP header. All these can support the microcontroller for further operation by connecting this board to the computer. The power supply of this board can be done with the help of an AC to DC adapter, a USB cable, otherwise a battery. This article discusses what is an Arduino Uno microcontroller, pin configuration, Arduino Uno specifications or featuresand applications.

What is Arduino Uno ATmega328?

The ATmega328 is one kind of single-chip microcontroller formed with Atmel within the megaAVR family. The architecture of this Arduino Uno is a customized Harvard architecture with 8 bit RISC processor core. Other boards of Arduino Uno include Arduino Pro Mini, Arduino Nano, Arduino Due, Arduino Mega, and Arduino Leonardo.

Arduino Uno ATmega328
Arduino Uno ATmega328

Features of Arduino Uno Board

The features of Arduino Uno ATmega328 includes the following.

  • The operating voltage is 5V
  • The recommended input voltage will range from 7v to 12V
  • The input voltage ranges from 6v to 20V
  • Digital input/output pins are 14
  • Analog i/p pins are 6
  • DC Current for each input/output pin is 40 mA
  • DC Current for 3.3V Pin is 50 mA
  • Flash Memory is 32 KB
  • SRAM is 2 KB
  • EEPROM is 1 KB
  • CLK Speed is 16 MHz

Arduino Uno Pin Diagram

The Arduino Uno board can be built with power pins, analog pins, ATmegs328, ICSP header, Reset button, power LED, digital pins, test led 13, TX/RX pins, USB interface, an external power supply. The Arduino UNO board description is discussed below.

Arduino Uno Board Pin Configuration
Arduino Uno Board Pin Configuration

Power Supply

The Arduino Uno power supply can be done with the help of a USB cable or an external power supply. The external power supplies mainly include AC to DC adapter otherwise a battery. The adapter can be connected to the Arduino Uno by plugging into the power jack of the Arduino board. Similarly, the battery leads can be connected to the Vin pin and the GND pin of the POWER connector. The suggested voltage range will be 7 volts to 12 volts.


Input & Output

The 14 digital pins on the Arduino Uno can be used as input & output with the help of the functions like pinMode(), digitalWrite(), & Digital Read().

Pin1 (TX) & Pin0 (RX) (Serial): This pin is used to transmit & receive TTL serial data, and these are connected to the ATmega8U2 USB to TTL Serial chip equivalent pins.

Pin 2 & Pin 3 (External Interrupts): External pins can be connected to activate an interrupt over a low value, change in value.

Pins 3, 5, 6, 9, 10, & 11 (PWM): This pin gives 8-bit PWM o/p by the function of analogWrite().

SPI Pins (Pin-10 (SS), Pin-11 (MOSI), Pin-12 (MISO), Pin-13 (SCK): These pins maintain SPI-communication, even though offered by the fundamental hardware, is not presently included within the Arduino language.

Pin-13(LED): The inbuilt LED can be connected to pin-13 (digital pin). As the HIGH-value pin, the light emitting diode is activated, whenever the pin is LOW.

Pin-4 (SDA) & Pin-5 (SCL) (I2C): It supports TWI-communication with the help of the Wire library.

AREF (Reference Voltage): The reference voltage is for the analog i/ps with analogReference().

Reset Pin: This pin is used for reset (RST) the microcontroller.


The memory of this Atmega328 Arduino microcontroller includes flash memory-32 KB for storing code, SRAM-2 KB EEPROM-1 KB.


The Arduino Uno ATmega328 offers UART TTL-serial communication, and it is accessible on digital pins like TX (1) and RX (0). The software of an Arduino has a serial monitor that permits easy data. There are two LEDs on the board like RX & TX which will blink whenever data is being broadcasted through the USB.

A SoftwareSerial library permits for serial communication on Arduino Uno digital pins and the ATmega328P supports TWI (I2C) as well as SPI-communication. The Arduino software contains a wired library for simplifying the utilization of the I2C bus.

How to Use an Arduino Uno?

Arduino Uno can detect the surroundings from the input. Here the input is a variety of sensors and these can affect its surroundings through controlling motors, lights, other actuators, etc. The ATmega328 microcontroller on the Arduino board can be programmed with the help of an Arduino programming language and the IDE (Integrated Development Environment). Arduino projects can communicate by software while running on a PC.

Arduino Programming

Once the Arduino IDE tool is installed in the PC, attach the Arduino board to the computer with the help of USB cable.  Open the Arduino IDE & select the right board by choosing Tools–>Board..>Arduino Uno, and select the right Port by choosing Tools–>Port. This board can be programmed with the help of an Arduino programming language depends on Wiring.

To activate the Arduino board & flash the LED on the board, dump the program code with the selection of Files–> Examples..>Basics..>Flash. When the programming codes are dumped into the IDE, and then click the button ‘upload’ on the top bar. Once this process is completed, check the LED flash on the board.

High Voltage Protection of USB

The Arduino Uno board has a rearrangeable poly fuse that defends the USB port of the PC from the over-voltage. Though most of the PCs have their own inner protection, the fuse gives an additional coating of safety. If above 500mA is given to the USB port, then the fuse will routinely crack the connection until the over-voltage is removed.

Physical Characteristics

The physical characteristics of an Arduino board mainly include length and width. The printed circuit board of the Arduino Uno length and width are 2.7 X 2.1 inches, but the power jack and the USB connector will extend beyond the previous measurement. The board can be attached on the surface otherwise case with the screw holes.

Applications of Arduino Uno ATmega328

The applications of Arduino Uno include the following.

  • Arduino Uno is used in Do-it-Yourself projects prototyping.
  • In developing projects based on code-based control
  • Development of Automation System
  • Designing of basic circuit designs.

Thus, this is all about Arduino Uno datasheet. From the above information finally, we can conclude that this is an 8-bit ATmega328P microcontroller. It has different components like serial communication, crystal oscillator, the voltage regulator for supporting the microcontroller. This board includes a USB connection, digital I/O pins-14, analog i/p pins-6, a power-barrel jack, a reset button, and an ICSP header. Here is a question for you, what is the Arduino Uno price in India?