SlideShare a Scribd company logo
1 of 30
Intro to the Arduino
Topics:
The Arduino
Digital IO
Analog IO
Serial Communication
Topic 1: Meet Arduino Uno
Getting Started
• Check out: http://arduino.cc/en/Guide/HomePage
1. Download & install the Arduino environment (IDE)
(not needed in lab)
2. Connect the board to your computer via the USB
cable
3. If needed, install the drivers (not needed in lab)
4. Launch the Arduino IDE
5. Select your board
6. Select your serial port
7. Open the blink example
8. Upload the program
Arduino IDE
See: http://arduino.cc/en/Guide/Environment for more information
Select Serial Port and Board
todbot.com/blog/bionicarduino
Input/Output
Image from Theory and Practice of Tangible User Interfaces at UC Berkley
Topic 2: Digital Input/Output
• Digital IO is binary
valued—it’s either on
or off, 1 or 0
• Internally, all
microprocessors are
digital, why?
1
0
Arduino Digital I/0
pinMode(pin, mode)
Sets pin to either INPUT or OUTPUT
digitalRead(pin)
Reads HIGH or LOW from a pin
digitalWrite(pin, value)
Writes HIGH or LOW to a pin
Electronic stuff
Output pins can provide 40 mA of current
Writing HIGH to an input pin installs a 20KΩ pullup
www.mikroe.com/chapters/view/1
Our First Program
IO Pins
Image from Theory and Practice of Tangible User Interfaces at UC Berkley
In-class Exercise 1: Digital IO
• Use a push-button to turn ON/Off LED
Topic 3: Analog Input
• Think about music stored on a CD---an analog
signal captured on digital media
– Sample rate
– Word length
• Resolution: the number of different voltage levels (i.e.,
states) used to discretize an input signal
• Resolution values range from 256 states (8 bits) to
4,294,967,296 states (32 bits)
• The Arduino uses 1024 states (10 bits)
• Smallest measurable voltage change is 5V/1024 or 4.8 mV
• Maximum sample rate is 10,000 times a second
Arduino Analog Input
Image credit: Tod Kurt
How does ADC work?
• How does ADC work
• Excel Demonstration
• Can a digital devise produce analog
output?
Topic 3: Analog Output
• Analog output can be simulated using
pulse width modulation (PWM)
Image from Theory and Practice of Tangible User Interfaces at UC Berkley
Pulse Width Modulation
• Can’t use digital pins
to directly supply say
2.5V, but can pulse
the output on and off
really fast to produce
the same effect
• The on-off pulsing
happens so quickly,
the connected output
device “sees” the
result as a reduction
in the voltage
Image from Theory and Practice of Tangible User Interfaces at UC Berkley
PWM Duty Cycle
Fixed cycle length; constant
number of cycles/sec
Image credit: Tod Kurt
output voltage = (on_time / cycle_time) * 5V
PMW Pins
• Command:
analogWrite(pin,value
)
• value is duty cycle:
between 0 and 255
• Examples:
analogWrite(9, 128)
for a 50% duty cycle
analogWrite(11, 64)
for a 25% duty cycleImage from Theory and Practice of Tangible User Interfaces at UC Berkley
In-class Exercise 2: Analog IO
A light theremin
Part 1:
In-class Exercise 2: Analog IO
• Add a 330 ohm resistor and an LED to
pin 9
• Using the analogWrite() command,
set the intensity of the LED as a
function of the value of prReading
Part 2: Add an LED
Topic 4: Serial Communication
Image from http://www.ladyada.net/learn/arduino/lesson4.html
todbot.com/blog/bionicarduino
Serial Communication
• Compiling turns your program into
binary data (ones and zeros)
• Uploading sends the bits through
USB cable to the Arduino
• The two LEDs near the USB
connector blink when data is
transmitted
• RX blinks when the Arduino is
receiving data
• TX blinks when the Arduino is
transmitting data
todbot.com/blog/bionicarduino
Open the Serial Monitor and
Upload the Program
Some Commands
• Serial.begin()
- e.g., Serial.begin(9600)
• Serial.print() or Serial.println()
- e.g., Serial.print(value)
• Serial.read()
• Serial.available()
• Serial.write()
• Serial.parseInt()
• Example Program
Serial-to-USB chip---what does it do?
Image from Theory and Practice of Tangible User Interfaces at UC Berkley
The LilyPad and Fio Arduino require an external USB to
TTY connector, such as an FTDI “cable”.
In the Arduino Leonardo a single microcontroller runs the
Arduino programs and handles the USB connection.
Two different communication
protocols
Serial (TTL):
Image from http://www.fiz-ix.com/2013/02/introduction-to-arduino-serial-communication/
USB Protocol
• Much more complicated
Image from http://en.wikipedia.org/wiki/USB
In-class Exercise 3: Serial
Communication
Modify your program from in-class
exercise 2-part 2 to control the
intensity of the LED attached to pin 9
based on keyboard input.
Use the Serial.parseInt() method to
read numeric keyboard input as an
integer.
An input of 9 should produce full
intensity and an input of 0 should turn
the LED off.

More Related Content

What's hot

Arduino e-Course Syllabus for Beginners
Arduino e-Course Syllabus for BeginnersArduino e-Course Syllabus for Beginners
Arduino e-Course Syllabus for BeginnersMadhu Honey
 
Introducing the Arduino
Introducing the ArduinoIntroducing the Arduino
Introducing the ArduinoCharles A B Jr
 
Intro to Hardware Programming with the Arduino Uno
Intro to Hardware Programming with the Arduino UnoIntro to Hardware Programming with the Arduino Uno
Intro to Hardware Programming with the Arduino UnoVui Nguyen
 
Arduino and Internet of Thinks: ShareIT TM: march 2010, TM
Arduino and Internet of Thinks: ShareIT TM: march 2010, TMArduino and Internet of Thinks: ShareIT TM: march 2010, TM
Arduino and Internet of Thinks: ShareIT TM: march 2010, TMAlexandru IOVANOVICI
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to ArduinoQtechknow
 
Programming with arduino
Programming with arduinoProgramming with arduino
Programming with arduinoMakers of India
 
Introduction to Arduino Programming
Introduction to Arduino ProgrammingIntroduction to Arduino Programming
Introduction to Arduino ProgrammingJames Lewis
 
Arduino tutorial #4
Arduino tutorial #4Arduino tutorial #4
Arduino tutorial #4동호 손
 
Raspberry pi tutorial #2
Raspberry pi tutorial #2Raspberry pi tutorial #2
Raspberry pi tutorial #2동호 손
 
Arduino tutorial #3
Arduino tutorial #3Arduino tutorial #3
Arduino tutorial #3동호 손
 
Analog to Digital Conversion Using Microcontroller Education Boards
Analog to Digital Conversion Using Microcontroller Education BoardsAnalog to Digital Conversion Using Microcontroller Education Boards
Analog to Digital Conversion Using Microcontroller Education BoardsKyle VanDruten
 
The IoT Academy IoT training Arduino Part 2 Arduino IDE
The IoT Academy IoT training Arduino Part 2 Arduino IDEThe IoT Academy IoT training Arduino Part 2 Arduino IDE
The IoT Academy IoT training Arduino Part 2 Arduino IDEThe IOT Academy
 
arduino-1
 arduino-1 arduino-1
arduino-1jhcid
 
Embedded controls
Embedded controlsEmbedded controls
Embedded controlscantos_rpi
 

What's hot (20)

Arduino e-Course Syllabus for Beginners
Arduino e-Course Syllabus for BeginnersArduino e-Course Syllabus for Beginners
Arduino e-Course Syllabus for Beginners
 
Introducing the Arduino
Introducing the ArduinoIntroducing the Arduino
Introducing the Arduino
 
Arduino tutorial
Arduino tutorialArduino tutorial
Arduino tutorial
 
Arduino
ArduinoArduino
Arduino
 
Intro to Hardware Programming with the Arduino Uno
Intro to Hardware Programming with the Arduino UnoIntro to Hardware Programming with the Arduino Uno
Intro to Hardware Programming with the Arduino Uno
 
Instructor background
Instructor backgroundInstructor background
Instructor background
 
Arduino and Internet of Thinks: ShareIT TM: march 2010, TM
Arduino and Internet of Thinks: ShareIT TM: march 2010, TMArduino and Internet of Thinks: ShareIT TM: march 2010, TM
Arduino and Internet of Thinks: ShareIT TM: march 2010, TM
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduino
 
Programming with arduino
Programming with arduinoProgramming with arduino
Programming with arduino
 
Lecture6
Lecture6Lecture6
Lecture6
 
Introduction to Arduino Programming
Introduction to Arduino ProgrammingIntroduction to Arduino Programming
Introduction to Arduino Programming
 
Arduino tutorial #4
Arduino tutorial #4Arduino tutorial #4
Arduino tutorial #4
 
Raspberry pi tutorial #2
Raspberry pi tutorial #2Raspberry pi tutorial #2
Raspberry pi tutorial #2
 
Arduino 123
Arduino 123Arduino 123
Arduino 123
 
Arduino tutorial #3
Arduino tutorial #3Arduino tutorial #3
Arduino tutorial #3
 
Analog to Digital Conversion Using Microcontroller Education Boards
Analog to Digital Conversion Using Microcontroller Education BoardsAnalog to Digital Conversion Using Microcontroller Education Boards
Analog to Digital Conversion Using Microcontroller Education Boards
 
The IoT Academy IoT training Arduino Part 2 Arduino IDE
The IoT Academy IoT training Arduino Part 2 Arduino IDEThe IoT Academy IoT training Arduino Part 2 Arduino IDE
The IoT Academy IoT training Arduino Part 2 Arduino IDE
 
arduino-1
 arduino-1 arduino-1
arduino-1
 
Embedded controls
Embedded controlsEmbedded controls
Embedded controls
 
Tech Talk IOT
Tech Talk IOTTech Talk IOT
Tech Talk IOT
 

Similar to Arduino wk2

The IoT Academy IoT training Arduino Part 4 Arduino interfaces
The IoT Academy IoT training Arduino Part 4 Arduino interfacesThe IoT Academy IoT training Arduino Part 4 Arduino interfaces
The IoT Academy IoT training Arduino Part 4 Arduino interfacesThe IOT Academy
 
Arduino Programming Familiarization
Arduino Programming FamiliarizationArduino Programming Familiarization
Arduino Programming FamiliarizationAmit Kumer Podder
 
Arduino.pptx
Arduino.pptxArduino.pptx
Arduino.pptxAadilKk
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduinoavikdhupar
 
teststststststLecture_3_2022_Arduino.pptx
teststststststLecture_3_2022_Arduino.pptxteststststststLecture_3_2022_Arduino.pptx
teststststststLecture_3_2022_Arduino.pptxethannguyen1618
 
arduinoworkshop-160204051621.pdf
arduinoworkshop-160204051621.pdfarduinoworkshop-160204051621.pdf
arduinoworkshop-160204051621.pdfAbdErrezakChahoub
 
IOT WORKSHEET 1.4.pdf
IOT WORKSHEET 1.4.pdfIOT WORKSHEET 1.4.pdf
IOT WORKSHEET 1.4.pdfMayuRana1
 
Getting started with arduino workshop
Getting started with arduino workshopGetting started with arduino workshop
Getting started with arduino workshopSudar Muthu
 
Introduction to Arduino.pptx
Introduction to Arduino.pptxIntroduction to Arduino.pptx
Introduction to Arduino.pptxAkshat Bijronia
 
Aurdidino1 anurag preetirajesh-sgsits
Aurdidino1  anurag preetirajesh-sgsitsAurdidino1  anurag preetirajesh-sgsits
Aurdidino1 anurag preetirajesh-sgsitsanurag278
 
Arduino spooky projects_class1
Arduino spooky projects_class1Arduino spooky projects_class1
Arduino spooky projects_class1Felipe Belarmino
 

Similar to Arduino wk2 (20)

The IoT Academy IoT training Arduino Part 4 Arduino interfaces
The IoT Academy IoT training Arduino Part 4 Arduino interfacesThe IoT Academy IoT training Arduino Part 4 Arduino interfaces
The IoT Academy IoT training Arduino Part 4 Arduino interfaces
 
arduinoedit.pptx
arduinoedit.pptxarduinoedit.pptx
arduinoedit.pptx
 
Arduino Programming Familiarization
Arduino Programming FamiliarizationArduino Programming Familiarization
Arduino Programming Familiarization
 
IOT beginnners
IOT beginnnersIOT beginnners
IOT beginnners
 
IOT beginnners
IOT beginnnersIOT beginnners
IOT beginnners
 
Arduino.pptx
Arduino.pptxArduino.pptx
Arduino.pptx
 
What is Arduino ?
What is Arduino ?What is Arduino ?
What is Arduino ?
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduino
 
Lab2ppt
Lab2pptLab2ppt
Lab2ppt
 
teststststststLecture_3_2022_Arduino.pptx
teststststststLecture_3_2022_Arduino.pptxteststststststLecture_3_2022_Arduino.pptx
teststststststLecture_3_2022_Arduino.pptx
 
arduinoworkshop-160204051621.pdf
arduinoworkshop-160204051621.pdfarduinoworkshop-160204051621.pdf
arduinoworkshop-160204051621.pdf
 
Ardui no
Ardui no Ardui no
Ardui no
 
IOT WORKSHEET 1.4.pdf
IOT WORKSHEET 1.4.pdfIOT WORKSHEET 1.4.pdf
IOT WORKSHEET 1.4.pdf
 
Getting started with arduino workshop
Getting started with arduino workshopGetting started with arduino workshop
Getting started with arduino workshop
 
Introduction to Arduino.pptx
Introduction to Arduino.pptxIntroduction to Arduino.pptx
Introduction to Arduino.pptx
 
Aurdidino1 anurag preetirajesh-sgsits
Aurdidino1  anurag preetirajesh-sgsitsAurdidino1  anurag preetirajesh-sgsits
Aurdidino1 anurag preetirajesh-sgsits
 
ArduinoPart1.ppt
ArduinoPart1.pptArduinoPart1.ppt
ArduinoPart1.ppt
 
ArduinoPart1.ppt
ArduinoPart1.pptArduinoPart1.ppt
ArduinoPart1.ppt
 
ArduinoPart1.ppt
ArduinoPart1.pptArduinoPart1.ppt
ArduinoPart1.ppt
 
Arduino spooky projects_class1
Arduino spooky projects_class1Arduino spooky projects_class1
Arduino spooky projects_class1
 

Recently uploaded

Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibitjbellavia9
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...Nguyen Thanh Tu Collection
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxAmanpreet Kaur
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxmarlenawright1
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Association for Project Management
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfSherif Taha
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...Nguyen Thanh Tu Collection
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxEsquimalt MFRC
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfAdmir Softic
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxDenish Jangid
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...pradhanghanshyam7136
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jisc
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsMebane Rash
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Pooja Bhuva
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxCeline George
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Pooja Bhuva
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structuredhanjurrannsibayan2
 

Recently uploaded (20)

Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
80 ĐỀ THI THỬ TUYỂN SINH TIẾNG ANH VÀO 10 SỞ GD – ĐT THÀNH PHỐ HỒ CHÍ MINH NĂ...
 
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptxSKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
SKILL OF INTRODUCING THE LESSON MICRO SKILLS.pptx
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...Making communications land - Are they received and understood as intended? we...
Making communications land - Are they received and understood as intended? we...
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
TỔNG ÔN TẬP THI VÀO LỚP 10 MÔN TIẾNG ANH NĂM HỌC 2023 - 2024 CÓ ĐÁP ÁN (NGỮ Â...
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024Mehran University Newsletter Vol-X, Issue-I, 2024
Mehran University Newsletter Vol-X, Issue-I, 2024
 
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...Kodo Millet  PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
Kodo Millet PPT made by Ghanshyam bairwa college of Agriculture kumher bhara...
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
Beyond_Borders_Understanding_Anime_and_Manga_Fandom_A_Comprehensive_Audience_...
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Single or Multiple melodic lines structure
Single or Multiple melodic lines structureSingle or Multiple melodic lines structure
Single or Multiple melodic lines structure
 

Arduino wk2

  • 1. Intro to the Arduino Topics: The Arduino Digital IO Analog IO Serial Communication
  • 2. Topic 1: Meet Arduino Uno
  • 3. Getting Started • Check out: http://arduino.cc/en/Guide/HomePage 1. Download & install the Arduino environment (IDE) (not needed in lab) 2. Connect the board to your computer via the USB cable 3. If needed, install the drivers (not needed in lab) 4. Launch the Arduino IDE 5. Select your board 6. Select your serial port 7. Open the blink example 8. Upload the program
  • 5. Select Serial Port and Board
  • 7. Input/Output Image from Theory and Practice of Tangible User Interfaces at UC Berkley
  • 8. Topic 2: Digital Input/Output • Digital IO is binary valued—it’s either on or off, 1 or 0 • Internally, all microprocessors are digital, why? 1 0
  • 9. Arduino Digital I/0 pinMode(pin, mode) Sets pin to either INPUT or OUTPUT digitalRead(pin) Reads HIGH or LOW from a pin digitalWrite(pin, value) Writes HIGH or LOW to a pin Electronic stuff Output pins can provide 40 mA of current Writing HIGH to an input pin installs a 20KΩ pullup www.mikroe.com/chapters/view/1
  • 11. IO Pins Image from Theory and Practice of Tangible User Interfaces at UC Berkley
  • 12. In-class Exercise 1: Digital IO • Use a push-button to turn ON/Off LED
  • 13. Topic 3: Analog Input • Think about music stored on a CD---an analog signal captured on digital media – Sample rate – Word length
  • 14. • Resolution: the number of different voltage levels (i.e., states) used to discretize an input signal • Resolution values range from 256 states (8 bits) to 4,294,967,296 states (32 bits) • The Arduino uses 1024 states (10 bits) • Smallest measurable voltage change is 5V/1024 or 4.8 mV • Maximum sample rate is 10,000 times a second Arduino Analog Input Image credit: Tod Kurt
  • 15. How does ADC work? • How does ADC work • Excel Demonstration
  • 16. • Can a digital devise produce analog output? Topic 3: Analog Output • Analog output can be simulated using pulse width modulation (PWM) Image from Theory and Practice of Tangible User Interfaces at UC Berkley
  • 17. Pulse Width Modulation • Can’t use digital pins to directly supply say 2.5V, but can pulse the output on and off really fast to produce the same effect • The on-off pulsing happens so quickly, the connected output device “sees” the result as a reduction in the voltage Image from Theory and Practice of Tangible User Interfaces at UC Berkley
  • 18. PWM Duty Cycle Fixed cycle length; constant number of cycles/sec Image credit: Tod Kurt output voltage = (on_time / cycle_time) * 5V
  • 19. PMW Pins • Command: analogWrite(pin,value ) • value is duty cycle: between 0 and 255 • Examples: analogWrite(9, 128) for a 50% duty cycle analogWrite(11, 64) for a 25% duty cycleImage from Theory and Practice of Tangible User Interfaces at UC Berkley
  • 20. In-class Exercise 2: Analog IO A light theremin Part 1:
  • 21. In-class Exercise 2: Analog IO • Add a 330 ohm resistor and an LED to pin 9 • Using the analogWrite() command, set the intensity of the LED as a function of the value of prReading Part 2: Add an LED
  • 22. Topic 4: Serial Communication Image from http://www.ladyada.net/learn/arduino/lesson4.html
  • 24. Serial Communication • Compiling turns your program into binary data (ones and zeros) • Uploading sends the bits through USB cable to the Arduino • The two LEDs near the USB connector blink when data is transmitted • RX blinks when the Arduino is receiving data • TX blinks when the Arduino is transmitting data todbot.com/blog/bionicarduino
  • 25. Open the Serial Monitor and Upload the Program
  • 26. Some Commands • Serial.begin() - e.g., Serial.begin(9600) • Serial.print() or Serial.println() - e.g., Serial.print(value) • Serial.read() • Serial.available() • Serial.write() • Serial.parseInt() • Example Program
  • 27. Serial-to-USB chip---what does it do? Image from Theory and Practice of Tangible User Interfaces at UC Berkley The LilyPad and Fio Arduino require an external USB to TTY connector, such as an FTDI “cable”. In the Arduino Leonardo a single microcontroller runs the Arduino programs and handles the USB connection.
  • 28. Two different communication protocols Serial (TTL): Image from http://www.fiz-ix.com/2013/02/introduction-to-arduino-serial-communication/
  • 29. USB Protocol • Much more complicated Image from http://en.wikipedia.org/wiki/USB
  • 30. In-class Exercise 3: Serial Communication Modify your program from in-class exercise 2-part 2 to control the intensity of the LED attached to pin 9 based on keyboard input. Use the Serial.parseInt() method to read numeric keyboard input as an integer. An input of 9 should produce full intensity and an input of 0 should turn the LED off.