SlideShare a Scribd company logo
ARDUINO PROGRAMMING
SESSION 1
Presented By
Amarjeetsingh Thakur
9/28/2020 1
What is Arduino?
• Arduino is an open- source computer
hardware and software company, project
and user community that designs and
manufactures microcontroller-based kits for
building systems consisting of digital
devices, interactive objects that can sense
and control in the physical world.
9/28/2020 2
How to program Arduino?
• The Arduino Integrated Development
Environment (IDE) supports
the C and C++ programming languages using
special rules of code organization.
• The Arduino IDE supplies a software library
called "Wiring" from the Wiring project, which
provides many common input and output
procedures.
9/28/2020 3
Arduino Products
9/28/2020 4
Entry Level
9/28/2020 5
Enhanced Features
9/28/2020 6
Official Website:
https://www.arduino.cc/
9/28/2020 7
ARDUINO UNO
9/28/2020 8
Technical specifications:
• Microcontroller: Microchip ATmega328P
• Operating Voltage: 5 Volt
• 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
9/28/2020 9
Program Structure
Setup( )
{
// A function that runs once at the start of a program and is used to
set //pinMode or initialize serial communication
}
loop( )
{
// This function includes the code to be executed continuously – reading
inputs, //triggering outputs, etc.
// This function is the core of all Arduino programs and does the bulk of
the //work.
}
9/28/2020 10
Activity 1.1
Type : Team of 2 Duration : 15 Minutes
Use LED blink program from example
and upload it on the ARDUINO board
9/28/2020 11
Functions to handle digital I/O
• pinMode (pin, OUTPUT);
// make the digital pin either INPUT or OUTPUT
• digitalRead (pin);
//used to get the content on the pin which is HIGH(1)
or LOW(0)
• digitalWrite(pin, value)
//used to send HIGH(1) or LOW(0) value to a pin
9/28/2020 12
Time Function
• delay(ms)
// waits for milli – seconds
9/28/2020 13
/*….. Program to blink the LED on pin 13 …..*/
void setup( )
{
pinMode(13, OUTPUT); //Initialize the digital pin as output
}
void loop( )
{
digitalWrite(13, HIGH); // Turn the LED ON
delay(1000); // Wait for one second
digitalWrite(13, LOW); // Turn the LED OFF
delay(1000); // Wait for one second
}
9/28/2020 14
Activity 1.2
Type : Team of 2 Duration : 10 Minutes
Modify the program to blink LED every 2 sec
on pin 12.
9/28/2020 15
Circuit for the LED
Cathode of
LED
Anode of LED
9/28/2020 16
/*….. Program to blink the LED every 2 second on pin12*/
void setup( )
{
pinMode(12, OUTPUT); //Initialize the digital pin as output
}
void loop( )
{
digitalWrite(12, HIGH); // Turn the LED ON
delay(2000); // Wait for a two second
digitalWrite(12, LOW); // Turn the LED OFF
delay(2000); // Wait for a two second
}
9/28/2020 17
Activity 1.3
Type : Team of 2 Duration : 15 Minutes
Modify the program to display the LED state
every 2 sec on Serial Monitor.
9/28/2020 18
Serial communication with Arduino
What is serial communication ?
9/28/2020 19
The word serial means "one after the other."
• What is Baud rate ?
Number of symbols transferred per sec
9/28/2020 20
Serial Display Functions
• Serial.begin(baud_rate)
//baud rate(characters per sec) between computer
and board is typically 9600 although you can
work with other speeds by changing settings of
COM Port
• Serial.print(value),
//value could be any data and even string
• Serial.println(value)
//print in new line
9/28/2020 21
Eg. Print INDIA on serial monitor
void setup( )
{
Serial.begin(9600);// 9600 is default baud rate of
serial com port of a computer
}
void loop( )
{
Serial.println(“INDIA”); // Send the value “INDIA”
}
9/28/2020 22
Serial Monitor
9/28/2020 23
/*….. Modify the program to blink on pin12 and display the LED state every 2 sec
on Serial Monitor…..*/
void setup( )
{
pinMode(12, OUTPUT); //Initialize the digital pin as output
Serial.begin(9600);
}
void loop( )
{
digitalWrite(12, HIGH); // Turn the LED ON
Serial.println(“ON”); // Send the value “ON”
delay(2000); // Wait for a second
digitalWrite(12, LOW); // Turn the LED OFF
Serial.println(“OFF”); // Send the value “OFF”
delay(2000); // Wait for a second
}
9/28/2020 24
Activity 1.4
Type : Team of 2 Duration : 25 Minutes
Modify the program to blink 10 times per
loop iteration and display no. of loop
iterations on serial monitor.
9/28/2020 25
Looping Concept
//for loop concept
Syntax –
for(initialization ; condition; increment / decrement)
{
//code which you want to perform
}
Example : to print number from 1 to 10
for(int i=1;i<=10;i++)
{
Serial.println(i);
Serial.println(“INDIA”);
}
9/28/2020 26
long int Count=0;
void setup( )
{
pinMode(12, OUTPUT); //Initialize the digital pin as output
Serial.begin(9600);
Serial.println(“count of iterations running are: “);
}
void loop( )
{
for (int i=1;i<=10;i++)
{
Serial.println(i);
digitalWrite(12, HIGH);
Serial.println(“ON”);
delay(1000); // wait for a second
digitalWrite(12, LOW);
– Serial.println(“OFF”);
delay(1000); // wait for a second
}
Count++;
– Serial.print(“Iteration:”);
Serial.println(Count);
}9/28/2020 27
Condition Statements
if(Condition 1)
{
//Statements
}
if(Condition 2)
{
//Statements
}
else
{
//Statements
}
9/28/2020 28
Topic Learning Outcomes
At the end of the topic the student should be able to
1. Explain the importance of platform based development
2. Use looping, delay and conditioning concepts in developing a
program on Arduino environment.
9/28/2020 29

More Related Content

What's hot (20)

PPTX
Wi-Fi Esp8266 nodemcu
creatjet3d labs
 
PPTX
Arduino
Jerin John
 
PPTX
Architecture of pentium family
University of Gujrat, Pakistan
 
PPTX
CPU Architecture - Basic
Yong Heui Cho
 
PPT
Introduction to stm32-part2
Amr Ali (ISTQB CTAL Full, CSM, ITIL Foundation)
 
PPTX
Pentium processor
Pranjali Deshmukh
 
PPT
Introduction to stm32-part1
Amr Ali (ISTQB CTAL Full, CSM, ITIL Foundation)
 
PPT
High level languages representation
gaurav jain
 
PPT
Embedded firmware
Joel P
 
PPTX
Rtos concepts
anishgoel
 
PPT
Arduino
vipin7vj
 
PPT
Lcd & keypad
Izwanizam Yahaya
 
PPTX
Basics of arduino uno
Rahat Sood
 
PDF
1. Introduction to Embedded Systems & IoT
IEEE MIU SB
 
PPTX
Tinker cad intro
Archita Singh
 
PPTX
Arithmetic logic shift unit
rishi ram khanal
 
PPTX
Raspberry Pi ppt.pptx
ushabharathisb1
 
PPT
Arduino presentation by_warishusain
student
 
PPT
Driving large capacitive loads
Ravi Selvaraj
 
PPTX
Real time Operating System
Tech_MX
 
Wi-Fi Esp8266 nodemcu
creatjet3d labs
 
Arduino
Jerin John
 
Architecture of pentium family
University of Gujrat, Pakistan
 
CPU Architecture - Basic
Yong Heui Cho
 
Pentium processor
Pranjali Deshmukh
 
High level languages representation
gaurav jain
 
Embedded firmware
Joel P
 
Rtos concepts
anishgoel
 
Arduino
vipin7vj
 
Lcd & keypad
Izwanizam Yahaya
 
Basics of arduino uno
Rahat Sood
 
1. Introduction to Embedded Systems & IoT
IEEE MIU SB
 
Tinker cad intro
Archita Singh
 
Arithmetic logic shift unit
rishi ram khanal
 
Raspberry Pi ppt.pptx
ushabharathisb1
 
Arduino presentation by_warishusain
student
 
Driving large capacitive loads
Ravi Selvaraj
 
Real time Operating System
Tech_MX
 

Similar to Arduino programming part1 (20)

PPTX
Introduction to Arduino
Amarjeetsingh Thakur
 
PPTX
Introduction to Arduino
Amarjeetsingh Thakur
 
PPTX
Intel galileo gen 2
srknec
 
PPTX
Arduino . .
dryazhinians
 
PPTX
Introduction to arduino Programming with
likhithkumpala159
 
PPTX
Introduction to Arduino Microcontroller
Mujahid Hussain
 
PPTX
Aurdino presentation
C.Vamsi Krishna
 
PPTX
How to use an Arduino
AntonAndreev13
 
PPTX
arduinoedit.pptx
rajalakshmi769433
 
PPTX
Arduino by bishal bhattarai IOE, Pashchimanchal Campus Pokhara, Nepal
bishal bhattarai
 
PPTX
Arduino_UNO _tutorial_For_Beginners.pptx
ANIKDUTTA25
 
PPTX
YAPC2011-Perlでちょいモテ電子工作
Yuki Manno
 
PDF
Cassiopeia Ltd - standard Arduino workshop
tomtobback
 
PPTX
Powerful Electronics with Arduino
Abdallah Hodieb
 
PPTX
Arduino tutorial A to Z
Md. Asaduzzaman Jabin
 
PDF
Introduction to Arduino
Luki B. Subekti
 
PPTX
INTODUCTION OF IOT AND INTERFACING WITH ARDUINO UNO
vasankarponnapalli2
 
PPT
01 Intro to the Arduino and it's basics.ppt
pindi2197
 
PPT
Arduino final ppt
Indu Mathi
 
PPTX
Arduino workshop
mayur1432
 
Introduction to Arduino
Amarjeetsingh Thakur
 
Introduction to Arduino
Amarjeetsingh Thakur
 
Intel galileo gen 2
srknec
 
Arduino . .
dryazhinians
 
Introduction to arduino Programming with
likhithkumpala159
 
Introduction to Arduino Microcontroller
Mujahid Hussain
 
Aurdino presentation
C.Vamsi Krishna
 
How to use an Arduino
AntonAndreev13
 
arduinoedit.pptx
rajalakshmi769433
 
Arduino by bishal bhattarai IOE, Pashchimanchal Campus Pokhara, Nepal
bishal bhattarai
 
Arduino_UNO _tutorial_For_Beginners.pptx
ANIKDUTTA25
 
YAPC2011-Perlでちょいモテ電子工作
Yuki Manno
 
Cassiopeia Ltd - standard Arduino workshop
tomtobback
 
Powerful Electronics with Arduino
Abdallah Hodieb
 
Arduino tutorial A to Z
Md. Asaduzzaman Jabin
 
Introduction to Arduino
Luki B. Subekti
 
INTODUCTION OF IOT AND INTERFACING WITH ARDUINO UNO
vasankarponnapalli2
 
01 Intro to the Arduino and it's basics.ppt
pindi2197
 
Arduino final ppt
Indu Mathi
 
Arduino workshop
mayur1432
 
Ad

More from Amarjeetsingh Thakur (19)

PPTX
“Introduction to MATLAB & SIMULINK”
Amarjeetsingh Thakur
 
PDF
Python code for servo control using Raspberry Pi
Amarjeetsingh Thakur
 
PDF
Python code for Push button using Raspberry Pi
Amarjeetsingh Thakur
 
PDF
Python code for Buzzer Control using Raspberry Pi
Amarjeetsingh Thakur
 
PDF
Arduino programming part 2
Amarjeetsingh Thakur
 
PDF
Python openCV codes
Amarjeetsingh Thakur
 
PDF
Python Numpy Source Codes
Amarjeetsingh Thakur
 
PDF
Steemit html blog
Amarjeetsingh Thakur
 
PDF
Python OpenCV Real Time projects
Amarjeetsingh Thakur
 
PPTX
Adafruit_IoT_Platform
Amarjeetsingh Thakur
 
PDF
Core python programming tutorial
Amarjeetsingh Thakur
 
PDF
Python openpyxl
Amarjeetsingh Thakur
 
PPTX
Introduction to Internet of Things (IoT)
Amarjeetsingh Thakur
 
PPTX
Introduction to Node MCU
Amarjeetsingh Thakur
 
PPTX
Introduction to Things board (An Open Source IoT Cloud Platform)
Amarjeetsingh Thakur
 
PPTX
Introduction to MQ Telemetry Transport (MQTT)
Amarjeetsingh Thakur
 
PPTX
Arduino Interfacing with different sensors and motor
Amarjeetsingh Thakur
 
PPTX
Image processing in MATLAB
Amarjeetsingh Thakur
 
PPTX
Image Processing Using MATLAB
Amarjeetsingh Thakur
 
“Introduction to MATLAB & SIMULINK”
Amarjeetsingh Thakur
 
Python code for servo control using Raspberry Pi
Amarjeetsingh Thakur
 
Python code for Push button using Raspberry Pi
Amarjeetsingh Thakur
 
Python code for Buzzer Control using Raspberry Pi
Amarjeetsingh Thakur
 
Arduino programming part 2
Amarjeetsingh Thakur
 
Python openCV codes
Amarjeetsingh Thakur
 
Python Numpy Source Codes
Amarjeetsingh Thakur
 
Steemit html blog
Amarjeetsingh Thakur
 
Python OpenCV Real Time projects
Amarjeetsingh Thakur
 
Adafruit_IoT_Platform
Amarjeetsingh Thakur
 
Core python programming tutorial
Amarjeetsingh Thakur
 
Python openpyxl
Amarjeetsingh Thakur
 
Introduction to Internet of Things (IoT)
Amarjeetsingh Thakur
 
Introduction to Node MCU
Amarjeetsingh Thakur
 
Introduction to Things board (An Open Source IoT Cloud Platform)
Amarjeetsingh Thakur
 
Introduction to MQ Telemetry Transport (MQTT)
Amarjeetsingh Thakur
 
Arduino Interfacing with different sensors and motor
Amarjeetsingh Thakur
 
Image processing in MATLAB
Amarjeetsingh Thakur
 
Image Processing Using MATLAB
Amarjeetsingh Thakur
 
Ad

Recently uploaded (20)

PPTX
Final Major project a b c d e f g h i j k l m
bharathpsnab
 
PDF
REINFORCEMENT LEARNING IN DECISION MAKING SEMINAR REPORT
anushaashraf20
 
PPTX
MODULE 03 - CLOUD COMPUTING AND SECURITY.pptx
Alvas Institute of Engineering and technology, Moodabidri
 
PDF
aAn_Introduction_to_Arcadia_20150115.pdf
henriqueltorres1
 
PDF
NTPC PATRATU Summer internship report.pdf
hemant03701
 
PDF
Water Industry Process Automation & Control Monthly July 2025
Water Industry Process Automation & Control
 
PPT
Testing and final inspection of a solar PV system
MuhammadSanni2
 
PDF
MODULE-5 notes [BCG402-CG&V] PART-B.pdf
Alvas Institute of Engineering and technology, Moodabidri
 
PDF
mbse_An_Introduction_to_Arcadia_20150115.pdf
henriqueltorres1
 
PDF
AN EMPIRICAL STUDY ON THE USAGE OF SOCIAL MEDIA IN GERMAN B2C-ONLINE STORES
ijait
 
PDF
Submit Your Papers-International Journal on Cybernetics & Informatics ( IJCI)
IJCI JOURNAL
 
PDF
methodology-driven-mbse-murphy-july-hsv-huntsville6680038572db67488e78ff00003...
henriqueltorres1
 
PDF
Electrical Engineer operation Supervisor
ssaruntatapower143
 
PDF
Data structures notes for unit 2 in computer science.pdf
sshubhamsingh265
 
PDF
WD2(I)-RFQ-GW-1415_ Shifting and Filling of Sand in the Pond at the WD5 Area_...
ShahadathHossain23
 
PDF
Basic_Concepts_in_Clinical_Biochemistry_2018كيمياء_عملي.pdf
AdelLoin
 
PPT
Footbinding.pptmnmkjkjkknmnnjkkkkkkkkkkkkkk
mamadoundiaye42742
 
PPTX
UNIT 1 - INTRODUCTION TO AI and AI tools and basic concept
gokuld13012005
 
PPTX
darshai cross section and river section analysis
muk7971
 
PPTX
Introduction to Internal Combustion Engines - Types, Working and Camparison.pptx
UtkarshPatil98
 
Final Major project a b c d e f g h i j k l m
bharathpsnab
 
REINFORCEMENT LEARNING IN DECISION MAKING SEMINAR REPORT
anushaashraf20
 
MODULE 03 - CLOUD COMPUTING AND SECURITY.pptx
Alvas Institute of Engineering and technology, Moodabidri
 
aAn_Introduction_to_Arcadia_20150115.pdf
henriqueltorres1
 
NTPC PATRATU Summer internship report.pdf
hemant03701
 
Water Industry Process Automation & Control Monthly July 2025
Water Industry Process Automation & Control
 
Testing and final inspection of a solar PV system
MuhammadSanni2
 
MODULE-5 notes [BCG402-CG&V] PART-B.pdf
Alvas Institute of Engineering and technology, Moodabidri
 
mbse_An_Introduction_to_Arcadia_20150115.pdf
henriqueltorres1
 
AN EMPIRICAL STUDY ON THE USAGE OF SOCIAL MEDIA IN GERMAN B2C-ONLINE STORES
ijait
 
Submit Your Papers-International Journal on Cybernetics & Informatics ( IJCI)
IJCI JOURNAL
 
methodology-driven-mbse-murphy-july-hsv-huntsville6680038572db67488e78ff00003...
henriqueltorres1
 
Electrical Engineer operation Supervisor
ssaruntatapower143
 
Data structures notes for unit 2 in computer science.pdf
sshubhamsingh265
 
WD2(I)-RFQ-GW-1415_ Shifting and Filling of Sand in the Pond at the WD5 Area_...
ShahadathHossain23
 
Basic_Concepts_in_Clinical_Biochemistry_2018كيمياء_عملي.pdf
AdelLoin
 
Footbinding.pptmnmkjkjkknmnnjkkkkkkkkkkkkkk
mamadoundiaye42742
 
UNIT 1 - INTRODUCTION TO AI and AI tools and basic concept
gokuld13012005
 
darshai cross section and river section analysis
muk7971
 
Introduction to Internal Combustion Engines - Types, Working and Camparison.pptx
UtkarshPatil98
 

Arduino programming part1

  • 1. ARDUINO PROGRAMMING SESSION 1 Presented By Amarjeetsingh Thakur 9/28/2020 1
  • 2. What is Arduino? • Arduino is an open- source computer hardware and software company, project and user community that designs and manufactures microcontroller-based kits for building systems consisting of digital devices, interactive objects that can sense and control in the physical world. 9/28/2020 2
  • 3. How to program Arduino? • The Arduino Integrated Development Environment (IDE) supports the C and C++ programming languages using special rules of code organization. • The Arduino IDE supplies a software library called "Wiring" from the Wiring project, which provides many common input and output procedures. 9/28/2020 3
  • 9. Technical specifications: • Microcontroller: Microchip ATmega328P • Operating Voltage: 5 Volt • 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 9/28/2020 9
  • 10. Program Structure Setup( ) { // A function that runs once at the start of a program and is used to set //pinMode or initialize serial communication } loop( ) { // This function includes the code to be executed continuously – reading inputs, //triggering outputs, etc. // This function is the core of all Arduino programs and does the bulk of the //work. } 9/28/2020 10
  • 11. Activity 1.1 Type : Team of 2 Duration : 15 Minutes Use LED blink program from example and upload it on the ARDUINO board 9/28/2020 11
  • 12. Functions to handle digital I/O • pinMode (pin, OUTPUT); // make the digital pin either INPUT or OUTPUT • digitalRead (pin); //used to get the content on the pin which is HIGH(1) or LOW(0) • digitalWrite(pin, value) //used to send HIGH(1) or LOW(0) value to a pin 9/28/2020 12
  • 13. Time Function • delay(ms) // waits for milli – seconds 9/28/2020 13
  • 14. /*….. Program to blink the LED on pin 13 …..*/ void setup( ) { pinMode(13, OUTPUT); //Initialize the digital pin as output } void loop( ) { digitalWrite(13, HIGH); // Turn the LED ON delay(1000); // Wait for one second digitalWrite(13, LOW); // Turn the LED OFF delay(1000); // Wait for one second } 9/28/2020 14
  • 15. Activity 1.2 Type : Team of 2 Duration : 10 Minutes Modify the program to blink LED every 2 sec on pin 12. 9/28/2020 15
  • 16. Circuit for the LED Cathode of LED Anode of LED 9/28/2020 16
  • 17. /*….. Program to blink the LED every 2 second on pin12*/ void setup( ) { pinMode(12, OUTPUT); //Initialize the digital pin as output } void loop( ) { digitalWrite(12, HIGH); // Turn the LED ON delay(2000); // Wait for a two second digitalWrite(12, LOW); // Turn the LED OFF delay(2000); // Wait for a two second } 9/28/2020 17
  • 18. Activity 1.3 Type : Team of 2 Duration : 15 Minutes Modify the program to display the LED state every 2 sec on Serial Monitor. 9/28/2020 18
  • 19. Serial communication with Arduino What is serial communication ? 9/28/2020 19
  • 20. The word serial means "one after the other." • What is Baud rate ? Number of symbols transferred per sec 9/28/2020 20
  • 21. Serial Display Functions • Serial.begin(baud_rate) //baud rate(characters per sec) between computer and board is typically 9600 although you can work with other speeds by changing settings of COM Port • Serial.print(value), //value could be any data and even string • Serial.println(value) //print in new line 9/28/2020 21
  • 22. Eg. Print INDIA on serial monitor void setup( ) { Serial.begin(9600);// 9600 is default baud rate of serial com port of a computer } void loop( ) { Serial.println(“INDIA”); // Send the value “INDIA” } 9/28/2020 22
  • 24. /*….. Modify the program to blink on pin12 and display the LED state every 2 sec on Serial Monitor…..*/ void setup( ) { pinMode(12, OUTPUT); //Initialize the digital pin as output Serial.begin(9600); } void loop( ) { digitalWrite(12, HIGH); // Turn the LED ON Serial.println(“ON”); // Send the value “ON” delay(2000); // Wait for a second digitalWrite(12, LOW); // Turn the LED OFF Serial.println(“OFF”); // Send the value “OFF” delay(2000); // Wait for a second } 9/28/2020 24
  • 25. Activity 1.4 Type : Team of 2 Duration : 25 Minutes Modify the program to blink 10 times per loop iteration and display no. of loop iterations on serial monitor. 9/28/2020 25
  • 26. Looping Concept //for loop concept Syntax – for(initialization ; condition; increment / decrement) { //code which you want to perform } Example : to print number from 1 to 10 for(int i=1;i<=10;i++) { Serial.println(i); Serial.println(“INDIA”); } 9/28/2020 26
  • 27. long int Count=0; void setup( ) { pinMode(12, OUTPUT); //Initialize the digital pin as output Serial.begin(9600); Serial.println(“count of iterations running are: “); } void loop( ) { for (int i=1;i<=10;i++) { Serial.println(i); digitalWrite(12, HIGH); Serial.println(“ON”); delay(1000); // wait for a second digitalWrite(12, LOW); – Serial.println(“OFF”); delay(1000); // wait for a second } Count++; – Serial.print(“Iteration:”); Serial.println(Count); }9/28/2020 27
  • 28. Condition Statements if(Condition 1) { //Statements } if(Condition 2) { //Statements } else { //Statements } 9/28/2020 28
  • 29. Topic Learning Outcomes At the end of the topic the student should be able to 1. Explain the importance of platform based development 2. Use looping, delay and conditioning concepts in developing a program on Arduino environment. 9/28/2020 29