Introduction to Arduino
Arduino is basically an open-source programmable circuit board, provided with a software program used to program it. Here the term open source means that it allows the users to change or modify its source code. It provides electronics-based, easy to used, integrated, hardware and programmable software. Arduino boards are capable of reading inputs such as light on a sensor, finger touch on a button, and turns into an output like starting a motor, turn on a light or fan also publishing something online. You can program your Arduino board about what to do by sending the instructions to the microcontroller present on the Arduino board. This microcontroller is able to be programmed to sense and control objects in the physical world. Because of its flexibility and low cost, Arduino has become a very popular choice for designers looking to construct hardware projects.
Basic Arduino Microcontroller Block diagram
Basically Arduino’s processor uses the Harvard architecture where separate memory allocated for the program code and data. It consists of two memories- Program memory and data memory. The code is stored in the flash program memory, whereas the data is stored in the data memory.
It is the most useful and popular board in the family. It is the best board to get started with electronics and coding. It is an AT Mega 328 microcontroller-based board. It contains 20 digital input/output pins (out of which 6 are used as PWM(Pulse Width Modulation ) outputs and 6 are used as analog inputs), one 16 MHz resonators, one USB connection, a power jack, an in-circuit system programming (ICSP) header, and a reset button. It has everything needed to support the microcontroller; simply connect it to a computer with a USB cable or power it with an AC-to-DC adapter or battery to get started. It does not use the FTDI USB-to-serial driver chip. Instead, it has an ATmega16U2 programmed used as a USB-to-serial converter. This secondary microcontroller has its own USB bootloader, which allows advanced users to reprogram it.
Arduinouno Pin Discription
|1||Power USB Arduino board can be powered by using the USB cable from computer by connecting the USB cable to the USB connection (1).|
|2||Power (Barrel Jack) Arduinoboards ispowered directly from the mains AC power supply by connecting it to the Barrel Jack (2).|
|3||Voltage Regulator Used to control the voltage given to the Arduino board and also stabilize the DC voltages used by the processor and other elements.|
|4||Crystal Oscillator Helps Arduino in dealing with timing problems. Provided with the clock frequency of 16,000,000 Hertz or 16 MHz.|
|5,17||Arduino Reset Used to reset Arduino board. After starting a program you can reset the UNO board in two ways. First, by using the reset button (17) on the board. Second, you can connect an external reset button to the Arduino pin labelled RESET (5).|
|6,7,8,9||Pins (3.3, 5, GND, Vin) 3.3V (6) − Supply 3.3 volt output5V (7) − Supply 5 volt outputMost of the components used with Arduino board works fine with 3.3 V and 5 V.GND (8) (Ground) − There are more than one GND pins on the Arduino, any of which can be used to ground circuit.Vin (9) − This pin also can be used to power the Arduino board from an external power source, like AC mains power supply.|
|10||Analog pins The Arduino UNO board has 6analog input pins A0 through A5. These pins are capable of reading the signal from an analog sensor like the humidity sensor or temperature sensor and convert it into a digital value that can be read and used by the microprocessor.|
|11||Main microcontroller Every Arduinounoboard has its own microcontroller (11).It works as the brain of board. The main IC (integrated circuit) on the Arduino is slightly different on each board. The microcontrollers are usually from the ATMEL Company.|
|12||ICSP (In-Circuit Serial Programming) pin Mostly, ICSP (12) is an AVR, a tiny programming header for the Arduino consisting of MOSI, MISO, SCK, RESET, VCC, and GND. It is often referred to as an SPI (Serial Peripheral Interface), which could be considered as an “expansion” of the output. Actually, here you are slaving the output device to the master of the SPI bus. SPI enabled devices always have the following pins: MISO (Master In Slave Out) – A line for sending data to the Master device MOSI (Master Out Slave In) – The Master line for sending data to peripheral devices SCK (Serial Clock) – A clock signal generated by the Master device to synchronize data transmission.|
|13||Power LED indicator This LED should light up when you plug your Arduino into a power source to indicate that your board is powered up correctly. If this light does not turn on, then there is something wrong with the connection.|
|14||TX and RX LEDs On board, you will find two labels: TX (transmiter) and RX (receiver). They appear in two places on the Arduino UNO board. First, at the digital pins 0 and 1, to indicate the pins liable for serial communication. Second, the TX and RX led (13). The TX led flashes with different speed while sending the serial data. The speed of flashing depends on the baud rate used by the board. RX flashes in the receiving process.|
|15||Digital I/O The Arduino UNO board has 14 digital I/O pins (15) (of which 6 provide PWM (Pulse Width Modulation) output. These pins can be configured to work as input digital pins to read logic values (0 or 1) or as digital output pins to drive different modules like LEDs, relays, etc. The pins labeled “~” can be used to generate PWM.|
|16||AREF AREF stands for Analog Reference. It is sometimes, used to set an external reference voltage (between 0 and 5 V) as the upper limit for the analog input pins.|
Introduction to Arduino IDE
Here IDE stands for Integrated Development Environment – It’s an official software introduced by Arduino.cc, basically used for writing, compiling and uploading the code in any of the Arduino device. Nearly all Arduino versions are compatible with this software It is open-source and is willingly open to install and start compiling the code on.
Features of arduino IDE
Arduino IDE is an open-source software program, mainly used for writing and compiling the code on the Arduino Module.
It is an official Arduino software, making code compilation too easy, that anyone can easily use it.
It is easily accessible for operating systems like MAC, Windows, Linux and runs on the Java Platform also that comes with inbuilt functions and commands that play a vital role in debugging, editing and compiling the code in the environment.
A wide range of Arduino modules available including Arduino Uno, Arduino Mega, Arduino Leonardo, Arduino Micro etc.
Each one of them contains a microcontroller on the board that is actually programmed and accepts the information in the form of code.
The main code, known as a sketch, generated on the IDE platform will finally generate a Hex File which is then moved and uploaded in the controller on the board.
The IDE module basically contains two parts: First is Editor and second is Compiler editor is used for writing the required code and compiler is used for compiling and uploading the code into the given Arduino Module.
It supports both C and C++ languages.
It can be downloaded from the Arduino main website. The software is available for common operating systems like Linux, Windows, and MAX, so make sure you are downloading the correct software version that is easily compatible with your operating system. This is not compatible with Windows 7 or older versions of the operating system.
Introduction to Arduino Nano
The Arduino Nano, as the name implies is a compact in size, complete and bread-board pleasant microcontroller board. The Nano board weighs around 7 grams with dimensions of 4.5 centimeters to 1.8 centimeters (Length to Breadth).
How it different?
The Nano is integrated with the ATmega328P microcontroller, the same as the Arduino UNO. The basic difference between them is that the UNO board is presented in PDIP (Plastic Dual-In-line Package) form with 30 pins and Nano is available in TQFP (plastic quad flat pack) with 32 pins. The extra 2 pins of Arduino Nano helpful ADC functionalities, while UNO has 6 ADC ports but Nano has 8 ADC ports. The Nano board doesn’t have a DC power jack as other Arduino boards but instead has a mini-USB port. This port is used for both programming and serial monitoring.
Arduino Nano – Specification
|Operating Voltage Requirements||5 Volts|
|Provided Flash Memory||32 KB of which 2 KB used by Bootloader|
|Clock frequency||16 MHz|
|No. Analog I/O Pins||8|
|EEPROM size||1 KB|
|DC Current per I/O Pins||40 milliAmps|
|Input Voltage||(7-12) Volts|