Arduino Uno – A basic introduction

by Sep 10, 2019Arduino IDE Programming, Arduino Uno

Microcontrollers are widely used in embedded devices and make the devices reliable and cheap for our requirements. They contain CPU, RAM, ROM and some form of Input/Output ports. Microcontrollers are generally a computer on a single integrated circuit which is better suited for sensing inputs and more better than a microprocessor.

Arduino Uno consists of both physical programmable circuit board ie., a microcontroller and a piece of software. There are various versions of Arduino boards such as Arduino Uno, Arduino Due, Arduino Leonardo, Arduino Mega, but mostly Arduino Uno is widely used in the market.

Arduino Uno - R3.jpg
Arduino Uno

If you are planning to develop a project based on IoT, Arduino Uno is the best option and a very economical one. The pre-requisite to use Arduino in a project is to have simple and basic programming skills in C and C++. The software used in Arduino Uno is the IDE (Integrated Development Environment).

Microcontrollers VS Arduino

Many people get confused between a microcontroller and an Arduino. Well, a microcontroller is a 40 pin chip that has a built-in microprocessor. Arduino is a package of a microcontroller, crystal, on-board power supply, bootloader which can be programmed in a simpler way in IDE.

Generally speaking, every Arduino is a microcontroller but not every microcontroller is an Arduino.

Technical Specifications

  • Arduino Uno was developed by Arduino.cc which is open-source and is based on Microchip ATmega328P microcontroller.
  • Operating Voltage: 5 Volts
  • Input Voltage: 7 to 20 Volts
  • Digital I/O Pins: 14 (of which 6 provide PWM output)
  • Analog Input Pins: 6
  • DC Current per I/O Pin: 20 mA
  • DC Current for 3.3V Pin: 50 mA
  • Flash Memory: 32 KB of which 0.5 KB used by bootloader
  • SRAM: 2 KB
  • EEPROM: 1 KB
  • Clock Speed: 16 MHz
  • Length: 68.6 mm
  • Width: 53.4 mm
  • Weight: 25 g

Connectivity

The Arduino can be connected to the PC through a USB cable which is used to run the controller. IDE is compatible with Windows, MAC or Linux systems. Preferrable Windows is used. To power the board, a battery or an AC to DC adapter can be used. It can also be connected to other Arduino/ Genuino development boards or a microprocessor like Raspberry Pi for complex projects.

General pin functions

Arduino UNO R3 Pinout
  • LED: There is a built-in LED driven by digital pin 13. When the pin is high value, the LED is on, when the pin is low, it’s off.
  • VIN: The input voltage to the Arduino/Genuino board when it’s using an external power source (as opposed to 5 volts from the USB connection or another regulated power source). You can supply voltage through this pin, or, if supplying voltage via the power jack, access it through this pin.
  • 5V: This pin outputs a regulated 5V from the regulator on the board. The board can be supplied with power either from the DC power jack (7 – 20V), the USB connector (5V), or the VIN pin of the board (7-20V). Supplying voltage via the 5V or 3.3V pins bypasses the regulator, and can damage the board.
  • 3V3: A 3.3 volt supply generated by the on-board regulator. Maximum current draw is 50 mA.
  • GND: Ground pins.
  • IOREF: This pin on the Arduino/Genuino board provides the voltage reference with which the microcontroller operates. A properly configured shield can read the IOREF pin voltage and select the appropriate power source or enable voltage translators on the outputs to work with the 5V or 3.3V.
  • Reset: Typically used to add a reset button to shields which block the one on the board

Image source: www.theengineeringprojects.com
  • 14 digital pins and 6 analog pins on the Uno can be used as an input or output, which operate at 5 V.
  • The Uno has 6 analog inputs, labeled A0 through A5, each of which provides 10 bits of resolution (i.e. 1024 different values). 
  • Serial / UART: pins 0 (RX) and 1 (TX). Used to receive (RX) and transmit (TX) TTL serial data. These pins are connected to the corresponding pins of the ATmega8U2 USB-to-TTL serial chip.
  • External interrupts: pins 2 and 3. These pins can be configured to trigger an interrupt on a low value, a rising or falling edge, or a change in value.
  • PWM (pulse-width modulation): 3, 5, 6, 9, 10, and 11. Can provide 8-bit PWM output with the analogWrite() function.
  • SPI (Serial Peripheral Interface): 10 (SS), 11 (MOSI), 12 (MISO), 13 (SCK). These pins support SPI communication using the SPI library.
  • TWI (two-wire interface) / I²C: A4 or SDA pin and A5 or SCL pin. Support TWI communication using the Wire library.
  • AREF (analog reference): Reference voltage for the analog inputs.[7]

Creating a multiplication Skill in Alexa using python

Written By Monisha Macharla

Hi, I'm Monisha. I am a tech blogger and a hobbyist. I am eager to learn and explore tech related stuff! also, I wanted to deliver you the same as much as the simpler way with more informative content. I generally appreciate learning by doing, rather than only learning. Thank you for reading my blog! Happy learning!

RELATED POSTS

How to use simulators to build Arduino Projects

How to use simulators to build Arduino Projects

Introduction In this tutorial, let's learn how to use simulators for building Arduino projects for beginners. In addition to it, We shall learn how to configure it and how to get started with simulation tools. Here, We shall take an example of blinking an led using...

Arduino and its various development boards

Arduino and its various development boards

1. What is Arduino? Arduino is an open-source software and software company, project, and user community that designs and manufactures single-board microcontrollers and microcontroller kits for building digital devices....

MIT app inventor with Arduino

MIT app inventor with Arduino

MIT app inventor is a platform developed to help you expand your ideas into mobile applications that can be used throughout various devices. Arduino, as you most probably have heard of is mainly used to develop and implement many projects. When you put together the...

Arduino Compatible Temperature Sensors

Arduino Compatible Temperature Sensors

In this article, we will look at Arduino's popular temperature sensors which are the foundation for Arduino's entry level projects. Temperature Sensor Temperature sensors are designed to measure the temperature of an object or substance using the properties and...

ARDUINO MKR 1000

In this article, we are going to learn about Arduino MKR 1000. .Arduino MKR1000 is a powerful board that combines the functionality of the Zero and the Wi-Fi Shield. It is the ideal solution for makers wanting to design IoT projects with minimal previous...

VIDEOS – FOLLOW US ON YOUTUBE

EXPLORE OUR IOT PROJECTS

IoT Smart Gardening System – ESP8266, MQTT, Adafruit IO

Gardening is always a very calming pastime. However, our gardens' plants may not always receive the care they require due to our active lifestyles. What if we could remotely keep an eye on their health and provide them with the attention they require? In this article,...

How to Simulate IoT projects using Cisco Packet Tracer

In this tutorial, let's learn how to simulate the IoT project using the Cisco packet tracer. As an example, we shall build a simple Home Automation project to control and monitor devices. Introduction Firstly, let's quickly look at the overview of the software. Packet...

All you need to know about integrating NodeMCU with Ubidots over MQTT

In this tutorial, let's discuss Integrating NodeMCU and Ubidots IoT platform. As an illustration, we shall interface the DHT11 sensor to monitor temperature and Humidity. Additionally, an led bulb is controlled using the dashboard. Besides, the implementation will be...

All you need to know about integrating NodeMCU with Ubidots over Https

In this tutorial, let's discuss Integrating NodeMCU and Ubidots IoT platform. As an illustration, we shall interface the DHT11 sensor to monitor temperature and Humidity. Additionally, an led bulb is controlled using the dashboard. Besides, the implementation will be...

How to design a Wireless Blind Stick using nRF24L01 Module?

Introduction Let's learn to design a low-cost wireless blind stick using the nRF24L01 transceiver module. So the complete project is divided into the transmitter part and receiver part. Thus, the Transmitter part consists of an Arduino Nano microcontroller, ultrasonic...

Sending Temperature data to ThingSpeak Cloud and Visualize

In this article, we are going to learn “How to send temperature data to ThingSpeak Cloud?”. We can then visualize the temperature data uploaded to ThingSpeak Cloud anywhere in the world. But "What is ThingSpeak?” ThingSpeak is an open-source IoT platform that allows...

Amaze your friend with latest tricks of Raspberry Pi and Firebase

Introduction to our Raspberry Pi and Firebase trick Let me introduce you to the latest trick of Raspberry Pi and Firebase we'll be using to fool them. It begins with a small circuit to connect a temperature sensor and an Infrared sensor with Raspberry Pi. The circuit...

How to implement Machine Learning on IoT based Data?

Introduction The industrial scope for the convergence of the Internet of Things(IoT) and Machine learning(ML) is wide and informative. IoT renders an enormous amount of data from various sensors. On the other hand, ML opens up insight hidden in the acquired data....

Smart Display Board based on IoT and Google Firebase

Introduction In this tutorial, we are going to build a Smart Display Board based on IoT and Google Firebase by using NodeMCU8266 (or you can even use NodeMCU32) and LCD. Generally, in shops, hotels, offices, railway stations, notice/ display boards are used. They are...

Smart Gardening System – GO GREEN Project

Automation of farm activities can transform agricultural domain from being manual into a dynamic field to yield higher production with less human intervention. The project Green is developed to manage farms using modern information and communication technologies....