By the end of this presentation you will be able to tell :
1. What is Arduino ?
2. Languages Supporting Arduino
3.Difference between microprocessor and microcontroller ?
4. Various different Arduino Boards
5. Arduino UNO R3 DataSheet
6. Parts and Functions of Arduino UNO R3 Board
7. Variables, functions and libraries used in Arduino board
8. Arduino Code: Blink Example
9. Applications of Arduino in real life
10. Simulators used for Arduino coding
2. INTRODUCTION
• It is an open-source hardware and software company, project,
and user community that designs and manufactures single-
board microcontrollers and microcontroller kits for building
digital devices.
• Arduino board designs use a variety of microprocessors and
controllers. The boards are equipped with sets of digital and
analog input/output (I/O) pins that may be interfaced to various
expansion boards ('shields') or breadboards (for prototyping)
and other circuits.
3. LANGUAGES SUPPORTS ARDUINO
• The Arduino integrated development environment (IDE) is a cross-platform
application (for Microsoft Windows, macOS, and Linux) that is written in
the Java programming language.
• In fact, you already are; the Arduino language is merely a set of C/C++
functions that can be called from your code. Your sketch undergoes minor
changes (e.g. automatic generation of function prototypes) and then is passed
directly to a C/C++ compiler (avr-g++)
• The microcontrollers can be programmed using the C and C++ programming
languages, using a standard API which is also known as the Arduino
language, inspired by the Processing language and used with a modified
version of the Processing IDE. In addition to using
traditional compiler toolchains, the Arduino project provides an integrated
development environment (IDE) and a command line tool developed in Go.
• The Arduino IDE does not yet support Python. Instead, we can use
OpenMV, a platform that supports programming Arduino boards with
MicroPython.
4. Difference between microprocessor and
microcontroller ?
• Integrated circuits or ICs are the electronic circuits used to construct the
circuits which are smaller, compact, quicker, and cheaper. The microprocessor
and microcontroller are integrated circuits. The major difference between
microprocessor and microcontroller is that the microprocessor is used to
perform the functions of the CPU and the microcontroller is used as the brain
of the circuit.
• The microprocessor and microcontroller are basically used to optimize the
computing unit as per the central processing unit.
• Although both serves different purposes but if the processing speed is
required, microprocessor is preferred over microcontroller. Whereas if the cost
effective and less power consuming options are required, microcontroller is
preferred.
5. Difference between microprocessor and
microcontroller ?
Microprocessor Microcontroller
Heart of the system. Heart of the embedded system.
Externally connected with input-output components. input-output components are embedded.
The circuit may be large depending upon usage. The circuit is very small.
Not cost-effective. Cost-effective.
The total consumption of power is high. Total consumption of power is less.
Power saving mode is not generally available. Power saving mode is generally offered.
Used in PC. Used in MP3 players, washing machines, etc.
Memories like RAM and ROM are absent. Carries RAM, ROM, etc.
Runs at a very high speed. Runs at a relatively lower speed.
It is complex and costly. Simple and cheap.
Example: DEC Alpha 21164, IBM RS6000, etc Example: Intel 8031/8051, PIC1x, etc.
10. • A program for Arduino hardware may be written in
any programming language with compilers that produce binary
machine code for the target processor. Atmel provides a
development environment for their 8-bit AVR and 32-bit ARM
Cortex-M based microcontrollers: AVR Studio (older) and Atmel
Studio (newer).
A minimal Arduino C/C++ program consists of only two functions:
•setup(): This function is called once when a sketch starts after power-up
or reset. It is used to initialize variables, input and output pin modes, and
other libraries needed in the sketch. It is analogous to the function main().
•loop(): After setup() function exits (ends), the loop() function is
executed repeatedly in the main program. It controls the board until the
board is powered off or is reset. It is analogous to the function while(1).
11. Blink example
Most Arduino boards contain a light-emitting diode (LED) and a current-limiting resistor connected
between pin 13 and ground, which is a convenient feature for many tests and program functions
A typical program used by beginners, akin to Hello, World!, is "blink", which repeatedly blinks the on-
board LED integrated into the Arduino board. This program uses the
functions pinMode(), digitalWrite(), and delay(), which are provided by the internal
libraries included in the IDE environment
This program is usually loaded into a new Arduino board by the manufacturer.
# define LED_PIN 13 // Pin number attached to LED.
void setup() {
pinMode(LED_PIN, OUTPUT); // Configure pin 13 to be a digital output.
}
void loop() {
digitalWrite(LED_PIN, HIGH); // Turn on the LED.
delay(1000); // Wait 1 second (1000 milliseconds).
digitalWrite(LED_PIN, LOW); // Turn off the LED.
delay(1000); // Wait 1 second. }
12. Libraries
• The open-source nature of the Arduino project has facilitated
the publication of many free software libraries that other
developers use to augment their projects.
Operating systems/threading
• There is a Xinu OS port for the atmega328p (Arduino Uno and
others with the same chip), which includes most of the basic
features.[75] The source code of this version is freely
available.[76]
• There is also a threading tool, named Protothreads.
Protothreads are described as "extremely lightweight stackless
threads designed for severely memory constrained systems,
such as small embedded systems or wireless sensor network
nodes
14. Simulation
• Tinkercad, an analog and digital simulator supporting Arduino
Simulation
• Wokwi, a digital and free to use simulator for Arduino boards