Microcontrollers 101 – Spooky Outline

– Laptop (Mac OS X or Windows. Linux if you’re willing to work at it)
– Some programming experience

Good To Have
– Basic knowledge of electric circuits
– Multimeter
– Wire cutters / strippers
– Soldering skills

Tools Needed In Class
– Wire cutter
– Tape

Class Outline
Class 1: Intro and Blinky LED

– Introducing Arduino
– Arduino the concept (vs Basic Stamp)
– Arduino the board
– Arduino the IDE
– Processing pedigree
– Getting the Arduino IDE, and running it
– Installing USB drivers
– Arduino sketch structure
– Two functions: setup() and loop()
– C code, but easy
– Quick overview of build process
– Basic (LED) circuts
– Power and ground
– Current limiting resistors
– Connecting them the right way ’round
– Making an LED lamp with battery, LED, & resistor
– Saftey Considerations
– Lead on parts (wash hands)
– Static sensitivity of parts (stay grounded)
– Your first Arduino sketch: “Blinky”
– Blinky as “hello world” for microcontrollers
– Building and coding an LED blinking device
– Using digitalWrite()
– Get Creative / Fun modifications
– blinkblinkblink, wait…., blink.
– Morse code player
– Make blinky eyes

Class 2: Reading Digital and Analog Values

– Hooking a Button to Arduino
– A simple schematc of the circuit
– Visual wiring diagram version
– Using digitalRead()
– Hooking a potentiometer to Arduino
– A simple schematc of the circuit
– Visual wiring diagram version
– Ardino sketch: “SendPot”
– Using analogRead()
– Use pot to vary blink rate of LED
– Arduino sketch: “VaryBlinky”
– Making Some Evil Eyes
– Uses pot to vary brightness of LEDs
– Hooking up two red LEDs, w/ schematic
– Briefly about analogWrite(), more in next class
– Arduino sketch “EvilEyes”
– Making Evil Eyes Come Out At Night
– Using Light-sensitive resistors
– Modify “EvilEyes” to use LSR
– Making eyeballs out of ping pong balls
– Make a Stand-alone Arduino board
– Adding 9V battery
– Be careful of polarity and shorts
– Going Further
– Other types of inputs (mag reed switch, FSR, etc)
– Get Creative
– Make your own inputs
– Wrapping things in alumninum foil to make switches
– Making pressure sensors from old tin cans and duct tape

Class 3: Motion and Color with PWM

– About PWM
– PWM as digital-to-analog voltage converter
– PWM as analog time (percentage on vs off)
– Making a Color Fading Mood Lights
– R, G, B LEDs
– Arduino sketch “MoodLight”
– Adding Movment with a Servo
– About servos
– Making PWM by hand using digitalWrite() to control a servo
– Making a Scary Severed Hand or Wiggling Snake
– Attaching a servo to the hand or snake
– Programming the motion
– Controlling the computer with Arduino + Processing
– About Processing
– Running Processing sketches
– About Serial.print()
– Going Further
– Using Arduino as custom input device for Processing
– Get Creative
– Add motion to any Halloween object
– Add dynamic color

Class 4: Touch and Sound: Piezo elements

– About Piezos
– Can be ouput, like a buzzer
– Can be input, to measure pressure
– Build and write a melody player
– MIDI notes
– Arduino sketch “MusicBox”
– Some spooky melodies
– Piezos as Pressure Sensors
– Schematic of piezo as input device
– Adding “knock sensor” to EvilEyes or MoodLight
(wakes up with noise, etc)
– Get Creative