arduino programming part1me 120: arduino programming arduino programming part 1 me 120 mechanical...

19
ME 120: Arduino Programming Arduino Programming Part 1 ME 120 Mechanical and Materials Engineering Portland State University

Upload: others

Post on 15-Mar-2020

86 views

Category:

Documents


3 download

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

Open the example sketch, blink.ino

9

ME 120: Arduino Programming

Load “Blink” from the built-in examples

10

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

Common Code Structure

12

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

Code Structure: loop function

15

loop function isrepeated indefinitely

ME 120: Arduino Programming

Details of the Blink Code

16

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

ME 120: Arduino Programming

Turn off an output pin with digitalWrite

19

digitalWrite(LED_BUILTIN, LOW)Set the LED_BUILTIN pin to LOW, which means “off”

delay(1000);Tell the microcontroller to do nothing for 1000 ms = 1 s