Everything About ARDUINO | Arduino Tutorial | IoTinns

Content :

  • Introduction

  • Invention of Arduino

  • What is Arduino

  • Why Arduino

  • Arduino UNO R3

  • Pin Description of Arduino UNO R3 Board


Now a days we are using ARDUINO in different fields of IoT or in interaction projects for connections with sensors, motors, and relays. It is an open source electronics device which is easy-to-use hardware and software. In this Arduino board we used to give inputs and it is read them and give output as we want. We can put Inputs are like-light on a sensor, a finger on a button, etc. it give output as - activating a motor, turning on an LED respectively.

This all we made possible with the help of Arduino Board by sending a set of instructions to the microcontroller on the board. For completion of this we do use the Arduino Programming Language (based on wiring), and the Arduino Software (IDE), based on Processing.

Invention of Arduino

In 2005, HERNANDO BARRAGAN, MASSIMO BANZI, and DAVID CUARTIELLES created ARDUINO for the ease-to-use to interactive the programmable devices of art designed projects, at the Interaction Design Institute Ivrea in Ivrea, Italy.

What is Arduino:-

ARDUINO is an open-source electronics platform to make an easy-to-use device for interactions or to connect various things such as relays, motors, and sensors.

  • v ARDUINO has both features as hardware and software-


ARDUINO BOARD- Arduino board receives the inputs from many sensors and affects its surroundings by controlling lights and other activities.


                                                               ARDUINO BOARD


In this, we give instructions by writing a code of the device for the working as result we want. The code is written in the Arduino programming language and using the Arduino development environment.

Syntax for the Arduino Programming:-

Void setup()

{//statement of the program


Void loop()

{//statement of the function


Why Arduino?...

  1. 1.    It is very easy for use and access in interactive projects and applications.
  2. 2.    It’s software is very easy-to-use for beginners and yet flexible enough for advanced work.
  3. 3.    It can be run on MAC, WINDOWS, LINUX, etc.
  4. 4.    It is a key tool for learning simple and advanced interactive projects in various fields.

Some points about the Arduino Board:-

  • A.    INEXPENSIVE- Arduino boards are available at low cost in comparison to other micro-controller platforms.

  • B.    Cross-Platform- It can work as cross platform that the Arduino software (IDE) runs on WINDOWS, MACINTOSH OSX, AND LINUX OPERATING SYSTEM.

  • C.    Simple Programming Environment- The Arduino software (IDE) is easy-to-use for beginners and flexible enough for advanced users.

  • D.   Open-source and extensible Hardware and Software- As easy-to-use both hardware and software.

Different Types of Arduino Boards:-

  1.        I.            Arduino Uno (R3)
  2.      II.            Arduino Mega (R3)
  3.   III.            Arduino Nano
  4.  IV.            Arduino Leonardo
  5.     V.            Arduino Due
  6.  VI.            Lilypad Arduino
  7. VII.            Arduino Micro
  8. VIII.            Arduino Pro Mini

Arduino UNO R3

ARDUINO UNO R3 is an open-source micro-controller board that is based on the Microchip ATmega328P.

 ATmega328P comes with a built-in bootloader. In this, we can program on the board a language derived from C and C++.



                                      ARDUINO UNO R3 FRONT SIDE IMAGE




                                                 ARDUINO UNO R3 BACK SIDE IMAGE


  1. 1.   6 Analog Inputs
  2. 2.  14 Digital Input/output Pins (of which 6 can be used as            PWM outputs)
  3. 3.   A 16 MHz Ceramic Crystal Resonator
  4. 4.   A USB-B Port
  5. 5.   An ICSP Header
  6. 6.   A Power Jack
  7. 7.   A Reset Button

Arduino PIN OUT and PIN description with diagram:-





1. These pins are used ANALOG to DIGITAL CONVERTER (ADC).

2. These pins can work as analog inputs and as well as digital inputs and outputs.

3. These pins take inputs as analog inputs and provide output in the range between 0 and 1023 (because the ARDUINO UNO work on 10 bit ADC).

The PINS A4 (I2C) SDA and A5 (I2C) SCL are described as –

Here the,

I2C- It stand for INTER-INTEGRATED CIRCUITS. It is the two-wire serial communication protocol.

The I2C has two serial lines one for send data and another for receiving the data.

  1. A.    SCL- It stands for SERIAL CLOCK. It is the pin or line that transfer the clock data. It is synchronize the shift of data between the two devices MASTER and SLAVE. The MASTER DEVICE IS generated the SERIAL CLOCK.

  2. B.    SDA- It stands for SERIAL DATA. It is the line which is used to send or receive the data by SLAVE and MASTER device. 



There are 14 digital pins (0-13) on ARDUINO BOARD in which 6 pins namely 3, 5, 6, 9, 10 and 11 are called PWM Pins.






These digital pins are read only two states which are 1 or 0 where 1 indicates as “high” and 0 as “low” value. These 1 and 0 states or inputs are called as digital or binary value.


Pin number 13 which is called as LED (13)-  In the Arduino board the LED is inbuilt in pin no. 13.  When this pin input is HIGH or 1, the LED Glows, when the pin input is LOW or 0, it doesn’t Glows.


                                Image of pin 13 or LED Pin


SPI stand for – SERIAL PERIPHERAL INTERFACE. This pins are used for communicate with one or more peripheral devices by the micro-controllers.

                 Image of SPI Pins

  • A.    SCK- It stands for Serial Clock. These are the clock pulses, that are used to synchronize the transfer of data.

  • B.    MISO- It stands for Master Input/ Slave Output. This data line in the MISO pin is used to receive the data from the Slave.

  • C.    MOSI- It stands for Master Output/ Slave Input. This data line is used in the MOSI Pin for sending data to the peripherals.

  • D.    SS- It stands for Slave Select. This line is used by the master.

  • It acts as the enable line. When a device’s Slave Select pin value is LOW, it can communicate with the master. When it’s value HIGH, it ignores the master. This allows us to have multiple SPI peripheral devices sharing the same MISO, MOSI, and CLK lines.

  • Interrupt, RXD and TXD Pins

External Interrupts (2 and 3)- 

INTERRUPT 1 and INTRRUPT 2- These pins can be used to trigger an interrupt on a low value, a rising or falling edge, or a change in value.

TXD and RXD- TXD and RXD pins are used for serial communication.

TXD- The TXD is used to transmit the data.

 RXD – The RXD is used to receive the data. It also represents the successful flow of data.

3.  A 16 MHz Ceramic Crystal Resonator, Reset Button, USB-B Port, and Power Jack


        Image of Oscillator, Power Jack, Reset Button and USB-B port on ARDUINO BOARD


A.  Voltage Regulator-The voltage regulator converts the input voltage into 5V.

§  The primary use of a voltage regulator is to control the voltage level in the Arduino board.

§  Even if there are any fluctuations in the input supply voltage of the regulator, the output voltage remains constant and near 5 volts.

B.  Crystal Oscillator- The Crystal oscillator has a frequency of 16MHz, which provides the clock signal to the microcontroller.

§  It provides the basic timing and control to the board.

C.  RESET Button-It is used to Reset the board. It’s recommended to press this button every time we light-up or flash the code to the board.

D.  Barrel Jack – The Barrel jack or DC Power Jack is used to power the Arduino board using an external power supply.

  • §  The barrel jack is usually connected to an adapter.
  • §  The board can be powered by an adapter that ranges between 5-20 volts but always recommended to use the voltage between 7-12 volts.

E.   USB B-port- The USB Interface is used to plug-in the USB cable.

  • §   This port can be used to power the device from the 5V supply.
  • §   It allows us to connect the board to the computer.
  • §   The program is uploaded to the board serially from the computer or laptop through the USB cable.




ICSP- It stands for In-Circuit Serial Programming.

We can use these pins to program the Arduino board’s firmware.

(Firmware is a software program or set of instructions programmed on a hardware device. It provides the necessary instructions for how the device communicates with the other computer hardware.)

The firmware changes with the new functionalities are sent to the microcontroller with the help of the ICSP header.

                                                                                               Image of the ICSP Header                

5.  Other Pins


a.     GND (Ground pins): There are 5 ground pins available on the board.

b.     RESET – Use to reset the Arduino Board. If this pin is supplied with 5 V, the board will reset automatically

c.  I/O Reference Voltage (IOREF) – This pin is the input/output reference. It provides the voltage reference at which the microcontroller is currently operating. Sending a signal to this pin does nothing.

 d. 3.3V and 5V: These pins provide regulated 5v and 3.3v respectively to the external components connected to the board.

                   Image of the Pins

e. Input Volatge (Vin)- It is the modulated DC supply voltage, which is used to regulate the IC’s used in the connection.

  • §  It is also called the primary voltage for IC’s present on the Arduino board.
  • §  The Vcc voltage value can be negative or positive to the GND pin.

v Specifications of Arduino UNO:

                   i.            Microcontroller: ATmega328p

                 ii.            Operating Voltage: 5V

              iii.            Input Voltage (recommended): 7-12V

              iv.            Input Voltage (limits): 6-20V

                 v.            Digital I/O Pins: 14 pins (of which 6 are PWM output pins)

              vi.            Analog Input Pins: 6

            vii.            DC Current per I/O Pin: 40 mA

         viii.            DC Current for 3.3V Pin: 50 mA

               ix.            Flash Memory: 32 KB

                 x.            SRAM: 2 KB (ATmega328)

               xi.            EEPROM: 1 KB (ATmega328)

            xii.            Clock Speed: 16 MHz

          xiii.            Length:6 mm

          xiv.            Width:4 mm

            xv.            Weight: 25 g

  • Ø Some examples of Projects and Application which can be made by using ARDUINO BOARD-
  1. 1.     Automated Weather
  2. 2.     Sun tracking for solar panels
  3. 3.     Automatic wildlife detector
  4. 4.     Home or Business security system
  5. 5.     Small robots
  6. 6.     Model rockets
  7. 7.     Automated greenhouse
  8. 8.     Automated aquarium
  9. 9.     Lightning detector
  10. 10.  Model aircraft

And much more applications or projects can be made by using the ARDUINO BOARD.

Leave a Reply

Your email address will not be published. Required fields are marked *