SlideShare a Scribd company logo
Frank Fourlas
Introduction to Arduino
What you are going to learn
• What is an Arduino and why learn to use it
• Hardware Capabilities
• Basics of Digital & Analog I/O
• Write basic C++ code and perform simple tasks
• Work from examples and projects
What is an Arduino
“Arduino is an open-source hardware and software company
originating from Italy. They design microcontrollers based
(mostly) on the ATmega family of microprocessors by Atmel.”
A Microcontroller (MCU)
• “A small computer on a single metal-oxide-semiconductor
(MOS) integrated circuit (IC) chip” –Wikipedia
• One or more CPUs
• Memory (ProgMem, RAM)
• Input/Output Peripherals
• Used in automation, IoT, appliances, remote control, etc
Open-Source
• Hardware: Creative Commons
• Publicly available schematics
• Permission to manufacture custom boards
• Cheap 3rd party compatibles
• Software: GNU General Public License
• Free/distributed
• Huge community (Help/Patching/Expanding)
• Variety of processors (AVR, ARM, ESP)
Based on ATmega Microprocessors
• Pin Breakout
• Voltage Regulator
• USB – Serial
Converter
• Clock
Why Arduino?
• Plug and Play
• Huge, expanding community
• Troubleshooting and help
• (Too) Many modules/sensors/expansions available
• Not too simple, not too advanced
• Cheap
• Easy to learn
• Baseline for more
Some Examples
Rocket v.2 mainboard
Sound reactive lighting
Creality Ender3 mainboard
PS1 modchip using PsNee
• Different Arduino Boards
• A map of the Arduino UNO
• Basics of Digital & Analog I/O
Hardware Capabilities
Arduino Boards
• Arduino UNO (ATmega328P)
• Arduino Nano (ATmega328)
• Arduino Micro (ATmega32U4)
20€ - 5€
15€ - 0.9€
Digital I/O
• Output:
• Turn a pin On or Off
• Supply 5V or connect to Ground
• Turn on a light
• Supply a positive or negative signal
• Input:
• Read a digital bit
• Detect High or Low voltage
• Receive a positive or negative signal
Analog I/O
• Output:
• Supply a variable voltage source (0-5V)
• Control the speed of a motor/brightness of light
• 256 different states
• Input:
• Read an analog signal
• Differentiate between different voltage levels
• 1024 different levels
USB
USB-Serial
ATmega328P
Microprocessor
7-12V
Voltage
Regulator
(5V
Logic)
Analog Input
Digital I/O
Analog Output (~PWM)
• The Arduino IDE
• Bare Minimum Program
• Input / Output
• Finding Resources Online
Writing Software
The Arduino IDE
• Download: https://www.arduino.cc/en/software
The Text Editor
Output Console
Serial Monitor
Compile/Upload/New/Open/Save
Fix your settings
• Make sure to select the correct Board and Port from the Tools
menu
Bare Minimum
• void setup()
• void loop()
Blink
• pinMode(pin, bool mode)
• digitalWrite(pin, bool state)
• delay(int milliseconds)
Button
• bool digitalRead(pin)
Potentiometer
• analogRead(AnalogPin)
• analogWrite(Pin, int level)
Communication
• Serial
• begin(int baudrate)
• print/println(String text)
• write(byte data)
• int available()
• char read()
The Serial Monitor
• Online Sources
• Reading Pinouts
• Reading Datasheets
• Libraries
Finding Resources
Online Sources
• Arduino IDE → File → Examples
• For all built-in libraries
• Every downloaded library adds examples
• arduino.cc → Documentation
• Tutorials (w/ schematics and sample code)
• Reference (Language and built-in library documentation)
• Adafruit
• Modules/Sensors/Boards
• Libraries for EVERYTHING (most 3rd party modules/sensors are remakes)
• Tutorials (w/ wiring instructions, schematics and sample code)
• StackOverflow
• Google
Connecting Communicating Devices
“Pinout of ARDUINO Board and ATMega328PU”
by pighixxx is licensed under Creative
Commons Attribution-Share Alike 4.0 International
Connecting Communicating Devices
GPS Modules
communicate with UART
A microSD card reader
that communicates with
SPI
A 10-DOF Sensor from Adafruit that uses
I2C
Arduino IDE Library Manager
Using Libraries
The PING exercise
• Use the HC-SR04 Ultrasonic Sensor to dim an LED
depending on its distance from a wall. Print the distance
in the Serial Monitor.
• Applying HIGH signal to “Trig” for 10μs produces an
ultrasonic pulse
• Then, “Echo” is turned HIGH for the same duration it took
the pulse to travel back and forth
• Help:
• Sound travels in a speed of 0.0343cm/μs
• pulseIn(pin, HIGH/LOW) blocks until pin turns HIGH/LOW, waits
until it switches to the other state, returns the microseconds it
stayed HIGH/LOW
• delayMicroseconds(int micros) is used for precision delay
• ECHO needs to be normalized to LOW for 2μs before PINGing
The Servo Exercise
• Use a potentiometer to control the rotation of a Servo motor
• Help:
• Connect the potentiometer like we did on the Analog example
• A Servo motor uses 3 wires, 2 for power and a signal
• Use the Servo library, find examples inside the IDE and documentation
on arduino.cc (It is a native library)
One step further
• Connecting to the Internet (IoT)
• WiFi library -> TCP and UDP protocols
• Acting as a webserver / Online communication
• Connecting to Bluetooth
• ArduinoBLE library
• Advanced Lighting
• WS2812B LEDs
• NeoPixel library / FastLED library
• Programming different processors
• ATtiny84/ATtiny85
• ESP8266/ESP32
• Interacting with other languages (Python/Processing)

More Related Content

PPTX
Electronics Microcontrollers for IoT applications
PPTX
Distance Measurement by Ultrasonic Sensor
PDF
Home Automation Using Arduino Uno and HC-05
PPT
Voice Control Home Automation
PPT
Embedded System Presentation
PPTX
LAN WAN & MAN
PPTX
Iot based_monitoring system
PPTX
SMART HOME AUTOMATION USING MOBILE APPLICATION
Electronics Microcontrollers for IoT applications
Distance Measurement by Ultrasonic Sensor
Home Automation Using Arduino Uno and HC-05
Voice Control Home Automation
Embedded System Presentation
LAN WAN & MAN
Iot based_monitoring system
SMART HOME AUTOMATION USING MOBILE APPLICATION

What's hot (20)

PPTX
IOT based irrigation system
PPTX
Home automation system
PPTX
Type of internet connectivity
PPT
Local multipoint distribution service(lmds)
PPT
NETWORK COMPONENTS
PPT
Rs232 485 fundamental
PPTX
Design and Application of Biconical Antenna
PPT
Communication Interface of The Embedded Systems
PPTX
Arduino RFID Module (RC522) & Buzzer Access System
PPT
Network hardware
PPTX
Home automation
PPTX
Switching
PDF
Internet of things laboratory
DOCX
Home automation System (Acknowledgement and Preface Only)
PPTX
Home automation using IoT
PPTX
Network connectivity devices
PPTX
Mobile IP
PPTX
Mobile network layer (mobile comm.)
PDF
1. Introduction to Embedded Systems & IoT
PPTX
Network Devices
IOT based irrigation system
Home automation system
Type of internet connectivity
Local multipoint distribution service(lmds)
NETWORK COMPONENTS
Rs232 485 fundamental
Design and Application of Biconical Antenna
Communication Interface of The Embedded Systems
Arduino RFID Module (RC522) & Buzzer Access System
Network hardware
Home automation
Switching
Internet of things laboratory
Home automation System (Acknowledgement and Preface Only)
Home automation using IoT
Network connectivity devices
Mobile IP
Mobile network layer (mobile comm.)
1. Introduction to Embedded Systems & IoT
Network Devices
Ad

Similar to Introduction to Arduino Webinar (20)

PDF
arduinoworkshop-160204051621.pdf
PPTX
Ardui no
PDF
The document proceeds to explain the main components of an Arduino Uno board ...
PPTX
arduino and its introduction deep dive ppt.pptx
PDF
Lab2ppt
PPT
Introduction Arduino uno
PPTX
teststststststLecture_3_2022_Arduino.pptx
DOCX
Buy Quality Arduino Boards Online Tomson Electronics.docx
PDF
Buy Quality Arduino Boards Online Tomson Electronics.pdf
PPTX
Internet of Things prescribed by University
PPTX
Introduction to the Arduino
PPTX
Arduino_Beginner.pptx
PPTX
Internet of Things Unit 3 notes-Design and Development and Arduino.pptx
PPTX
PDF
Arduino microcontroller ins and outs with pin diagram
PPTX
Introduction to Arduino session and basically it depends how you us and where...
PPTX
Buy Quality Arduino Boards Online Tomson Electronics.pptx
PPTX
Arduino-101-Workshop (Introduction to Arduino and motor driver)
PPTX
Arduino course
PDF
arduinocourse-180308074529 (1).pdf
arduinoworkshop-160204051621.pdf
Ardui no
The document proceeds to explain the main components of an Arduino Uno board ...
arduino and its introduction deep dive ppt.pptx
Lab2ppt
Introduction Arduino uno
teststststststLecture_3_2022_Arduino.pptx
Buy Quality Arduino Boards Online Tomson Electronics.docx
Buy Quality Arduino Boards Online Tomson Electronics.pdf
Internet of Things prescribed by University
Introduction to the Arduino
Arduino_Beginner.pptx
Internet of Things Unit 3 notes-Design and Development and Arduino.pptx
Arduino microcontroller ins and outs with pin diagram
Introduction to Arduino session and basically it depends how you us and where...
Buy Quality Arduino Boards Online Tomson Electronics.pptx
Arduino-101-Workshop (Introduction to Arduino and motor driver)
Arduino course
arduinocourse-180308074529 (1).pdf
Ad

Recently uploaded (20)

PDF
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
PPTX
Current and future trends in Computer Vision.pptx
PPTX
Internet of Things (IOT) - A guide to understanding
PPTX
Geodesy 1.pptx...............................................
PDF
Digital Logic Computer Design lecture notes
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PPTX
UNIT-1 - COAL BASED THERMAL POWER PLANTS
PDF
Operating System & Kernel Study Guide-1 - converted.pdf
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PPTX
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
PDF
composite construction of structures.pdf
PDF
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
PDF
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
DOCX
573137875-Attendance-Management-System-original
PDF
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
PPT
Introduction, IoT Design Methodology, Case Study on IoT System for Weather Mo...
PPTX
CH1 Production IntroductoryConcepts.pptx
PPTX
UNIT 4 Total Quality Management .pptx
The CXO Playbook 2025 – Future-Ready Strategies for C-Suite Leaders Cerebrai...
Current and future trends in Computer Vision.pptx
Internet of Things (IOT) - A guide to understanding
Geodesy 1.pptx...............................................
Digital Logic Computer Design lecture notes
CYBER-CRIMES AND SECURITY A guide to understanding
UNIT-1 - COAL BASED THERMAL POWER PLANTS
Operating System & Kernel Study Guide-1 - converted.pdf
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Engineering Ethics, Safety and Environment [Autosaved] (1).pptx
composite construction of structures.pdf
PRIZ Academy - 9 Windows Thinking Where to Invest Today to Win Tomorrow.pdf
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
keyrequirementskkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkkk
July 2025 - Top 10 Read Articles in International Journal of Software Enginee...
573137875-Attendance-Management-System-original
Enhancing Cyber Defense Against Zero-Day Attacks using Ensemble Neural Networks
Introduction, IoT Design Methodology, Case Study on IoT System for Weather Mo...
CH1 Production IntroductoryConcepts.pptx
UNIT 4 Total Quality Management .pptx

Introduction to Arduino Webinar

  • 2. What you are going to learn • What is an Arduino and why learn to use it • Hardware Capabilities • Basics of Digital & Analog I/O • Write basic C++ code and perform simple tasks • Work from examples and projects
  • 3. What is an Arduino “Arduino is an open-source hardware and software company originating from Italy. They design microcontrollers based (mostly) on the ATmega family of microprocessors by Atmel.”
  • 4. A Microcontroller (MCU) • “A small computer on a single metal-oxide-semiconductor (MOS) integrated circuit (IC) chip” –Wikipedia • One or more CPUs • Memory (ProgMem, RAM) • Input/Output Peripherals • Used in automation, IoT, appliances, remote control, etc
  • 5. Open-Source • Hardware: Creative Commons • Publicly available schematics • Permission to manufacture custom boards • Cheap 3rd party compatibles • Software: GNU General Public License • Free/distributed • Huge community (Help/Patching/Expanding) • Variety of processors (AVR, ARM, ESP)
  • 6. Based on ATmega Microprocessors • Pin Breakout • Voltage Regulator • USB – Serial Converter • Clock
  • 7. Why Arduino? • Plug and Play • Huge, expanding community • Troubleshooting and help • (Too) Many modules/sensors/expansions available • Not too simple, not too advanced • Cheap • Easy to learn • Baseline for more
  • 8. Some Examples Rocket v.2 mainboard Sound reactive lighting Creality Ender3 mainboard PS1 modchip using PsNee
  • 9. • Different Arduino Boards • A map of the Arduino UNO • Basics of Digital & Analog I/O Hardware Capabilities
  • 10. Arduino Boards • Arduino UNO (ATmega328P) • Arduino Nano (ATmega328) • Arduino Micro (ATmega32U4) 20€ - 5€ 15€ - 0.9€
  • 11. Digital I/O • Output: • Turn a pin On or Off • Supply 5V or connect to Ground • Turn on a light • Supply a positive or negative signal • Input: • Read a digital bit • Detect High or Low voltage • Receive a positive or negative signal
  • 12. Analog I/O • Output: • Supply a variable voltage source (0-5V) • Control the speed of a motor/brightness of light • 256 different states • Input: • Read an analog signal • Differentiate between different voltage levels • 1024 different levels
  • 14. • The Arduino IDE • Bare Minimum Program • Input / Output • Finding Resources Online Writing Software
  • 15. The Arduino IDE • Download: https://www.arduino.cc/en/software The Text Editor Output Console Serial Monitor Compile/Upload/New/Open/Save
  • 16. Fix your settings • Make sure to select the correct Board and Port from the Tools menu
  • 17. Bare Minimum • void setup() • void loop()
  • 18. Blink • pinMode(pin, bool mode) • digitalWrite(pin, bool state) • delay(int milliseconds)
  • 21. Communication • Serial • begin(int baudrate) • print/println(String text) • write(byte data) • int available() • char read()
  • 23. • Online Sources • Reading Pinouts • Reading Datasheets • Libraries Finding Resources
  • 24. Online Sources • Arduino IDE → File → Examples • For all built-in libraries • Every downloaded library adds examples • arduino.cc → Documentation • Tutorials (w/ schematics and sample code) • Reference (Language and built-in library documentation) • Adafruit • Modules/Sensors/Boards • Libraries for EVERYTHING (most 3rd party modules/sensors are remakes) • Tutorials (w/ wiring instructions, schematics and sample code) • StackOverflow • Google
  • 25. Connecting Communicating Devices “Pinout of ARDUINO Board and ATMega328PU” by pighixxx is licensed under Creative Commons Attribution-Share Alike 4.0 International
  • 26. Connecting Communicating Devices GPS Modules communicate with UART A microSD card reader that communicates with SPI A 10-DOF Sensor from Adafruit that uses I2C
  • 29. The PING exercise • Use the HC-SR04 Ultrasonic Sensor to dim an LED depending on its distance from a wall. Print the distance in the Serial Monitor. • Applying HIGH signal to “Trig” for 10μs produces an ultrasonic pulse • Then, “Echo” is turned HIGH for the same duration it took the pulse to travel back and forth • Help: • Sound travels in a speed of 0.0343cm/μs • pulseIn(pin, HIGH/LOW) blocks until pin turns HIGH/LOW, waits until it switches to the other state, returns the microseconds it stayed HIGH/LOW • delayMicroseconds(int micros) is used for precision delay • ECHO needs to be normalized to LOW for 2μs before PINGing
  • 30. The Servo Exercise • Use a potentiometer to control the rotation of a Servo motor • Help: • Connect the potentiometer like we did on the Analog example • A Servo motor uses 3 wires, 2 for power and a signal • Use the Servo library, find examples inside the IDE and documentation on arduino.cc (It is a native library)
  • 31. One step further • Connecting to the Internet (IoT) • WiFi library -> TCP and UDP protocols • Acting as a webserver / Online communication • Connecting to Bluetooth • ArduinoBLE library • Advanced Lighting • WS2812B LEDs • NeoPixel library / FastLED library • Programming different processors • ATtiny84/ATtiny85 • ESP8266/ESP32 • Interacting with other languages (Python/Processing)

Editor's Notes

  • #19: Blink an LED with 1s delay https://www.tinkercad.com/things/2vCd9HYoelK
  • #20: Turn on an LED. When button pressed, turn off for 2s. Strobe LED while button pressed. When button pressed, strobe for 2s. https://www.tinkercad.com/things/2vCd9HYoelK
  • #21: Control a motors speed using a potentiometer.
  • #22: Get the distance from an object using a PING sensor and Serial communication. Control an LED from your computer.