EMBEDDED SYSTEMS AND IoT UNIT 3
Embedded Systems and Internet of Things
Arduino 1
EMBEDDED SYSTEMS AND IoT UNIT 3
UNIT 3
3.1 Introduction to the Concept of IoT Devices
3.2 IoT Devices Versus Computers
3.3 IoT Configurations - Basic Components
3.4 Introduction to Arduino – Types of Arduino
3.5 Arduino Toolchain
3.6 Arduino Programming Structure – Sketches – Pins –
Input/Output From Pins Using Sketches
3.7 Introduction to Arduino Shields
3.8 Integration of Sensors and Actuators with Arduino.
Arduino 2
EMBEDDED SYSTEMS AND IoT UNIT 3
Introduction to Arduino
Arduino
What is Arduino?
• Microcontroller based open source electronic prototyping board which can
be programmed with an easy-to-use Arduino IDE
• Consists of both a physical programmable circuit board and a
piece of software or IDE
• The Arduino IDE uses a simplified version of C++, making it easier to learn
4
Arduino IDE
Physical programmable
circuit board
The Arduino Development Board
Arduino Board
11
The Arduino Microcontroller: Atmel
ARV Atmega 328
Major Components of Arduino UNO Board
13
Major Components of Arduino UNO Board
USB Connector
• Printer USB port is used to load a program from the Arduino IDE onto the
Arduino board
• The board can also be powered through this port
14
Major Components of Arduino UNO Board
Power Port
• The Arduino board can be powered through a AC-to-DC
adapter or a battery
• The power source can be connected by plugging in a
2.1 mm center-positive plug into the power jack of the
board
• The Arduino UNO board operates at a voltage of 5 volts,
but it can withstand a maximum voltage of 20 volts
• If the board is supplied with a higher voltage, there is a
voltage regulator (it sits between the power port and
USB connector) that protects the board from burning out
15
Major Components of Arduino UNO Board
Microcontroller (Memory)
• It is the most prominently visible black rectangular chip with 28 pins
• The microcontroller used on the UNO board is Atmega328P by Atmel (a
major microcontroller manufacturer)
• Atmega328P has the following components in it
✔ Flash memory of 32 KB. Program loaded from the Arduino IDE is stored
here
16
Major Components of Arduino UNO Board
Microcontroller (Memory)
✔ RAM of 2 KB. This is runtime memory
✔ CPU: It controls everything that goes on within the device. It fetches the
program instructions from flash memory and runs it with the help of RAM
✔ Electrically Erasable Programmable Read Only Memory (EEPROM) of 1 KB.
This is a type of nonvolatile memory, and it keeps the data even after device
restart and reset
• Atmega328P is pre-programmed with bootloader. This allows direct
uploading of a new Arduino program into the device, without using any
external hardware programmer, making the Arduino UNO board easy to use
17
Major Components of Arduino UNO Board
Analog Input Pins
• The Arduino UNO board has 6 analog input pins, labeled “Analog 0 to 5”
signal from an analog sensor
• These pins can read the
18
Major Components of Arduino UNO Board
Analog Input Pins
• These pins just measure voltage and not the current because they have very
high internal resistance. Hence, only a small amount of current flows through
these pins
• Although these pins are labeled analog and are analog input by default,
these pins can also be used for digital input or output
19
Major Components of Arduino UNO Board
Digital Pins
• These pins are labeled “Digital 0 to 13”
• These pins can be used as either input or output pins
• When used as output, these pins act as a power
supply source for the components connected to it and
when used as input pins, they read the signals from
the component connected to them
• When digital pins are used as output pins, they supply
40 milliamps of current at 5 volts, which is more than
enough to light a LED
20
Major Components of Arduino UNO Board
Digital Pins
• Some of the digital pins are labeled with tilde (~) symbol next to the pin
numbers (pin numbers 3, 5, 6, 9, 10 and 11)
• These pins act as normal digital pins but can also be used for Pulse-Width
Modulation (PWM), which simulates analog output such as fading an LED in
and out
21
Major Components of Arduino UNO Board
Reset Switch
• When this switch is clicked, it sends a logical pulse to the reset pin of the
Microcontroller, and now runs the program again from the start
• This can be very useful if your code doesn’t repeat, and you want to test it
multiple times
22
Major Components of Arduino UNO Board
Crystal Oscillator
• This is a quartz crystal oscillator which ticks 16 million times a second
• On each tick,the microcontroller performs one operation, for
example, addition, subtraction, etc.
23
Major Components of Arduino UNO Board
USB Interface Chip
• Like signal translator, it converts signals in the USB level to a level that an
Arduino UNO board understands
24
Terminology
• I/O board – main microcontroller
• Shield – add-on boards
• Sketch – the program
• Sensor – components (thermistors, etc.)
• Modules – serial data (GPS module, etc.)
25
Major Components of Arduino UNO Board
TX RX Indicator
• TX stands for transmit, and RX for receive
• These are indicator LEDs which
blink transmitting or receiving data
26
Features of Arduino
• Inexpensive
• Cross-platform support
• Simple programming environment
• Open source and extensible software
• Open source and extensible hardware
27
Try Yourself
• How to get started with Arduino?
• Identify the more popular boards in the Arduino family.
• Is Arduino based on C or C++?
• Can I use Python in Arduino?
• Determine the best programming languages for Arduino.
• Find the software used to program Arduino.
• Infer why Microcontrollers are considered as brains of
Arduino.
• Which is the best Arduino board for beginners?
• Where the data is stored in Arduino?
• Does Arduino use ARM?
28
EMBEDDED SYSTEMS AND IoT UNIT 3
Next Session......
Arduino Toolchain
Arduino 29