arduino programming part1me 120: arduino programming arduino programming part 1 me 120 mechanical...
TRANSCRIPT
ME 120: Arduino Programming
Arduino Programming Part 1
ME 120Mechanical and Materials Engineering
Portland State University
ME 120: Arduino Programming
Overview
Arduino EnvironmentBasic code components
❖ Two required functions: startup() and loop()❖ Variables❖ Calling built-in functions
2
ME 120: Arduino Programming
References
These notes borrow from❖ Arduino web site
‣ http://arduino.cc/en/Guide/Environment‣ http://arduino.cc/en/Tutorial/HomePage
❖ Adafruit tutorial #1 and 2‣ http://www.ladyada.net/learn/arduino/lesson2.html
❖ Leah Buechley’s Introduction to Arduino‣ http://web.media.mit.edu/~leah/LilyPad/03_arduino_intro.html
3
ME 120: Arduino Programming
Arduino Web Site References
Overview of the development environment❖ http://www.arduino.cc/en/Guide/Environment
Language reference❖ http://arduino.cc/en/Reference/HomePage
Code tutorials❖ http://arduino.cc/en/Tutorial/HomePage
4
ME 120: Arduino Programming
Basic Process
Design the circuit:❖ What are electrical requirements of the sensors or
actuators? ❖ Identify analog inputs (sensors)❖ Identify digital inputs & outputs (buttons, LEDs, relays)
Write the code❖ Build incrementally
‣ Get the simplest piece to work first‣ Add complexity and test at each stage‣ Save and Backup frequently
❖ Use variables, not constants❖ Comment liberally
5
ME 120: Arduino Programming
Writing and Downloading Code
6
A
A
Write sketch on PC
Download sketch to Arduino
ME 120: Arduino Programming
Running Code While Tethered
7
Arduino interactswith its environment
A
Run sketch on Arduinoand send data back to PC
Serial communicationback to host
ME 120: Arduino Programming
Running Code Stand-Alone
8
A
Run Arduino in stand alone mode
Arduino interacts withits environment andruns on battery power
ME 120: Arduino Programming
Arduino IDE
11
IDE =
http://www.arduino.cc/en/Guide/Environment
IntegratedDevelopmentEnvironment
Verify/Compile
Upload to Arduino New sketchOpen sketch
Save sketch
Serial monitor
Code pane
Message pane
Tabs
ME 120: Arduino Programming
Code Structure: Header
13
Header provides information.Can also contain code
ME 120: Arduino Programming
Code Structure: setup function
14
setup function is executedonly once at the start
ME 120: Arduino Programming
Preparing an Output Pin with pinMode
17
pinMode(LED_BUILTIN, Output)Prepare pin number “LED_BUILTIN” for outputs of 5 volts.“LED_BUILTIN” is a pre-defined variable
ME 120: Arduino Programming
Turn on an output pin with digitalWrite
18
digitalWrite(LED_BUILTIN, HIGH)Set the LED_BUILTIN pin to HIGH,which means “on”
delay(1000);Tell the microcontroller to do nothing for 1000 ms = 1 s