Microprocessors Tutorial 1: Arduino Basics
Agenda 1. Arduino Hardware 2. Arduino Software 3. MAKE: Blink 4. Electronics 5. MAKE: LED control 6. Analog 7. MAKE: Volume control 8. Links
Arduino Hardware Reset button 14 Digital Pins (6 PWM) Power USB ATMega 328 6 Analog Pins
Arduino Software Menu bar: set device, port, find examples Code: setup(), set pin direction pinMode(pin, IN/OUTPUT) loop(), set pin value with digitalWrite(led, HIGH/LOW) Or get pin value with digitalRead(pin) Buttons: verify and upload code -set device under tools> boards -set port before uploading (in tools) -sketches r for LATER, write your own code! Code for BLINK uses DIGITAL methods Connect arduino, if windows not found find driver in DEVICE MANAGER, see port, then upload
MAKE: Blink Using built in LED, so no further electronics needed! Connect Arduino Windows driver found? Correct port? Upload code -set device under tools> boards -set port before uploading (in tools) -sketches r for LATER, write your own code! Code for BLINK uses DIGITAL methods Connect arduino, if windows not found find driver in DEVICE MANAGER, see port, then upload
Electronics Breadboard: vertical connections, horizontal buses LEDs: polarized, long == + Resistor: Color-coded. Need one for LED Push Button: completes circuit only while pushed. Use a pull down resistor! LED res: ohms law 5v , 20mA Pulldown: floating when no tpressed
MAKE: LED control Hardware Connect buses to bread board, 5v and GND Connect LED, pin->220ohm -> LED+ ->GND Connect button, 5v ->button ->10kohm ->GND before res ->pin Dont need arduino for this, but for educational purposes
MAKE: LED control Software Software Declare 2 pins outside and set direction in setup() Read button state Software Declare 2 pins outside and set direction in setup() Read button state If button is on, write desired output to LEDs
Analog Digital: 0-1, On/Off LEDs, switches digitalRead(), digitalWrite() Analog: 0-1023 Potentiometer, sensor, motors AnalogRead(), analogWrite() to pin +5v Potentiometer: variable resistance
MAKE: Volume Indicator Hardware Add more LEDs, each going to a different pin Connect potentiometer, center connection to pin We will b using only 4 leds i think
MAKE: Volume Indicator Software Add LED pin variables and set direction Add pot pin, analog pin don't need direciton Get pot value Scale it using map(number, origStart, origEnd, scaledStart, scaledEnd) If pot level is higher than LED indicator, write desired output to LED We will b using only 4 leds i think Imagine replacing input to a microphone, or headphone jack!
Useful Links Arduino Examples http://arduino.cc/en/Tutorial/HomePage MAKE projects http://makezine.com/arduino/ http://makezine.com/category/electronics/arduino/?post_type=projects Adafruit ? We will b using only 4 leds i think Imagine replacing input to a microphone, or headphone jack!
academics@ieee.concordia.ca ieee.concordia.ca Questions? Comments? Suggestions? academics@ieee.concordia.ca ieee.concordia.ca