This 60 minute course covers the basics of Arduino. It spans from an overview of the board design (components, I/O, power, etc.) to the software development environment. Schuyler St. Leger (a.k.a. @DocProfSky), the instructor, then goes through several live examples of prototyping circuits using an Adruino Uno and a breadboard along with additional components. You will need to watch the full 60 minute video is on Youtube to see the programming examples.
Programming and circuit examples include:
1) Blinking the on-board LED.
2) Blinking an LED via the digital header I/O.
3) Adding a button switch into the circuit to control the LED's on/off/on modes. This circuit expansion introduces a breadboard and the concept of a pull-down resistor to suppress electrical noise.
4) Using a potentiometer to control an LED's blink rate. The inner workings of a potentiometer is also explained.
5) Using a potentiometer to control an LED's brightness using Pulse Width Modulation (PWM.) The concept of PWM is also explained.
6) Controlling a servo motor.
7) Using a potentiometer to control a servo motor.
This course was presented at Desert Code Camp, November 2012 at Chandler-Gilbert Community College in Chandler, AZ.
Arduino 101 by Schuyler St. Leger - Desert Code Camp - 2012 Nov 17
1. Arduino 101
Schuyler St. Leger @DocProfSky
Jim St. Leger @Intel_Jim
Desert Code Camp
17 November 2012
Photo courtesy of Sparkfun 1
2. Agenda
• Overview of Arduino
• Software overview
• Live examples of programming
• Some references for further enlightenment
@DocProfSky 2
3. What is Arduino?
• Open-source electronics
prototyping platform
• Hardware based on Atmel 8-bit
microcontroller ATmega8 series
– The DUE is 32-bit
• Open-source hardware
• Open-source software
@DocProfSky 3
4. Arduino Uno: What’s What
Reset LED Header for
Switch Pin 13 Digital I/O
USB
Port
Clock/
Oscillator
USB Inter-
face Chip
Micro-
Power controller
Regulator
DC Power Analog Input
Power
Port Header
Header 4
5. Software Programming
• Integrated Development Environment (IDE)
– All-in-one programming tool with built in compiler
– Supported host development platforms
• Microsoft Windows
• Mac OS X
• Linux
• Arduino language is C/java based
@DocProfSky 5
6. Software Programming
• Sketch / Program: Three main parts
1. Structure
2. Values (variables, constants)
3. Functions
@DocProfSky 6
7. Software Programming
Let’s see some examples (easier to harder):
• Basic sketch to blink an LED (“HELLO WORLD”)
• Using a push-button switch to control an LED
• Using a potentiometer to control an LED’s blink rate
• Using a potentiometer to control an LED’s brightness
(using PWM = Pulse Width Modulation)
• And more if we have time…
@DocProfSky 7
9. Ready To Get Started!
For the .NET
audience
@DocProfSky 9
10. Where to Get More Information
• Arduino website: http://www.arduino.cc/
– Lots of reference information
• Forum http://arduino.cc/forum/
• Playground http://arduino.cc/playground/
• Getting Started
– Basic setup guide http://arduino.cc/en/Guide/HomePage
– Tutorials to and examples
http://arduino.cc/en/Tutorial/HomePage
@DocProfSky 10
11. More Places to Get Information
• Ladyada.net: Great Arduino tutorial!
– http://www.ladyada.net/learn/arduino/
– Supported by Adafruit
– 5 easy lessons for happiness and prosperity
• Lesson 0 Pre-flight check...Is your Arduino and computer ready?
• Lesson 1 The "Hello World!" of electronics, a simple blinking light
• Lesson 2 Sketches, variables, procedures and hacking code
• Lesson 3 Breadboards, resistors and LEDs, schematics, and basic RGB color-mixing
• Lesson 4 The serial library and binary data - getting chatty with Arduino and
crunching numbers
• Lesson 5 Buttons & switches, digital inputs, pull-up and pull-down resistors, if/if-
else statements, debouncing and your first contract product design.
@DocProfSky 11
12. Even More Hardware Sources
• Adafruit
http://www.adafruit.com
• Evil Mad Scientist
http://www.evilmadscientist.com/
• Maker Shed
http://www.makershed.com
• RadioShack
http://www.radioshack.com
• SparkFun
http://www.sparkfun.com/
• And many more…
@DocProfSky 12
13. Thanks
HeatSync Labs hosts Arduino meet-ups every
Wednesday night.
140 W. Main St, downtown Mesa
Stop by and check it out!
Schuyler St. Leger
@DocProfSky
@DocProfSky 13