coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · web...

22
ASSIST Lesson Plan Title Coding is Fundamental: Start coding using Arduino Introduct ion Learning how to write computer code using a variety of programming languages is quickly becoming a fundamental skill that will help students in both their continued education as well as future careers. The logic used in writing code is rooted in math and science curriculum and provides students with real- world applications of knowledge in each of those areas. However, it can be difficult for some students to visualize what they are doing when coding because programming languages, like any foreign language, can be a difficult undertaking to learn. One of the more popular programming languages to use outside of the school environment is C++ and the family of languages derived from it. C++, Visual C+ + and C# (C-Sharp) are some of the more popular versions used by a wide variety of careers from scientific research to the game industry. The Arduino programming language is highly similar to C# and is very popular to use by a wide variety of industries, including both hobby robotics enthusiasts and state-of-the-art research facilities alike. In using the Arduino LilyPad while learning to code, students can physically see the results of their coding in simple terms without the extra distractions of the digital effects they experience in programs such as Unity while also learning how sensors operate as they gain familiarity with programming logic/techniques. This ability to focus on the basic logic and writing code over the graphics will make students better prepared to use other programming languages. Real Science Applicati Programming skills are not just important for game designers. Anything that operates under the control of a computer requires a skilled programmer to make July 16, 2015

Upload: others

Post on 18-Oct-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

Title Coding is Fundamental: Start coding using ArduinoIntroduction

Learning how to write computer code using a variety of programming languages is quickly becoming a fundamental skill that will help students in both their continued education as well as future careers. The logic used in writing code is rooted in math and science curriculum and provides students with real-world applications of knowledge in each of those areas. However, it can be difficult for some students to visualize what they are doing when coding because programming languages, like any foreign language, can be a difficult undertaking to learn.

One of the more popular programming languages to use outside of the school environment is C++ and the family of languages derived from it. C++, Visual C++ and C# (C-Sharp) are some of the more popular versions used by a wide variety of careers from scientific research to the game industry. The Arduino programming language is highly similar to C# and is very popular to use by a wide variety of industries, including both hobby robotics enthusiasts and state-of-the-art research facilities alike. In using the Arduino LilyPad while learning to code, students can physically see the results of their coding in simple terms without the extra distractions of the digital effects they experience in programs such as Unity while also learning how sensors operate as they gain familiarity with programming logic/techniques. This ability to focus on the basic logic and writing code over the graphics will make students better prepared to use other programming languages.

Real Science Application

Programming skills are not just important for game designers. Anything that operates under the control of a computer requires a skilled programmer to make it work. This includes installed programs, phone apps, and all other aspects of modern life. Researchers, such as those working in the ASSIST Center at North Carolina State University, require skilled programmers to code the user interactions and operability for the wearable devices and sensors as they work towards helping the general public have the ability to better monitor their own health. Such skills are also necessary in making sure the advanced equipment that researchers operate such as X-ray crystallography, atomic microscopes and nanotechnology fabrication laboratories can produce useable information to ensure the advancement of science.

Curriculum Alignment

This section contains the curriculum alignment of the lesson to the North Carolina Career and Technical Education (CTE) competency and objectives.CTE Content Area

Grade Level

CTE Unit Competency

CTE Objective Statements

Advanced Game Design

9-12 Unit 5:Create Scenes Using a 3D Game Engine

Objective 205.2Analyze the basic mechanics of a selected 3D game engine

July 16, 2015

Page 2: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

Common Core Math

9-12 Mathematical Practice

CCSS.MATH.PRACTICE.MP5Use appropriate tools strategicallyCCSS.MATH.PRACTICE.MP6Attend to precisionCCSS.MATH.PRACTICE.MP7Look for and make use of structure

Learning Outcomes

Students will become familiar with the basics of programming logic and techniques without all the technical distractions encountered while working directly in a 3D game engine. This understanding of programming techniques in general will better prepare them for write code in a game engine as well as complete programming tasks in general.

Time Required and Location

Ten 50 minute class periodsStudents need access to a computer lab for this lesson.

Materials Needed

Teacher List Computer lab 1 Arduino LilyPad Development Kit per student Arduino Integrated Development Environment (IDE) installed on each

computer

Student List Arduino LilyPad Development Kit per student Arduino IDE Computer workstation per student Internet access

Safety Students will be using basic sensors on the devices and will not have access to any dangerous chemicals or substances.

Student Prior Knowledge

These activities are designed to be part of a larger unit on creating scenes using a 3D game engine. Students should be familiar with basic computer operation. This lesson does not assume any prior programming knowledge.

Teacher Preparations

Familiarize yourself with the Arduino LilyPad Development Kit Familiarize yourself with the Arduino IDE Ensure you are comfortable with basic programming logic Familiarize yourself with the Arduino Programming Language Verify the Arduino IDE is installed on each computer

July 16, 2015

Page 3: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

Remove and store everything from each LilyPad Kit except the master controller board with attached sensors/output devices, the FTDI breakout board and the USB cable

Activities DAY 1: PROGRAMMING BACKGROUNDBegin the class by discussing the importance of learning how to code in the modern world. Ask the students why learning to code is important to them. [5 minutes]

It is important to make sure that the students understand that learning a programming language is similar to learning any other language like Spanish or French. Each comes with its own set of rules and terms. Semantics are just as important in learning how to code as they are in learning to communicate in a verbal language. Programming languages use their own set of rules and structure, punctuation, case sensitivity, and key terms that hold specific meaning to the system. It is also important to understand that a computer program follows its instructions (code) implicitly, doing exactly and only what you ask of it. While there are many similarities among all programming languages, each has its own set of unique requirements as well.

Explain to the class that there are many different kinds of programming languages. Some are dead languages, similar to written/spoken languages that have long since gone out of use like Cobol. They are still around, but rarely used. Others are well known and frequently used, like C++. While each language has its own use and purpose, some are more common than others. Ask the students what programming languages they know. Make a list of them for students to examine. [5 minutes]

Explain that many different programming languages have their beginning in C, whether you are talking object oriented programming like Visual C or line programming like C++. For our lesson, we will be using Arduino, which is a common language used when working with sensor devices. One of the reasons we want to use Arduino is because it is very similar to C#, which we use in programming video games, and also because of the immediate, physical nature that will help visualize how the code we create operates.

The Arduino Programming language is designed to be used with a variety of circuit boards that are often used by both hobby robotics enthusiasts and researchers alike. Two of the more common boards are the Uno and the LilyPad. We will be using the LilyPad and will discuss the various components of it later.

Programming the Arduino takes place in four basic stages:

1. Write a program – This takes place using special software known as an integrated development environment (IDE). Programs written

July 16, 2015

Page 4: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

using Arduino are referred to as sketches. Like other applications, the Arduino IDE has its own associated extension on filenames so your computer knows what application to open them with. All sketches end in the extension “.ino”. Because Arduino is based on C, you must follow the same conventions and language formats as are used in the C programming language.

2. Compile the program – This involves translating the code to a language that the chip on your circuit board can understand and use to perform the tasks you want it to. If you made any errors in your coding, they will be detected and reported to you during this stage so you can correct them before proceeding. This stage is also known as Verifying.

3. Load the program onto your circuit board – This is when you move the code from your computer to the circuit board you are using your code on.

4. Execute the code – Once loaded, the code executes on your circuit board and does whatever you told it to do!

Hands-on Demonstration:Connect your LilyPad to the computer to demonstrate the above procedures for the students. You might want to have them move to the front of the room where they can see the results of each state as well as what you are doing better. To complete this demonstration, open the Arduino IDE and select one of the Example sketches located under the File menu. For the purpose of these instructions, this lesson will use Blink but the teacher may select a different sketch if desired.

Once a sketch has been opened, explain that the code is comprised of the lines of text they see in the IDE. Each line completes a specific task. Notice the greyed out text, these items are called comments. Comments are in place to help the programmer understand what a sketch or line of code does when executed. Using them is a good technique for keeping organized and highly recommended. Point out the difference between using “//” for single line comments like after a line of code vs. placing comments between “/*” and “*/”, which allows for multiple lines to be commented out.

Every sketch has two default procedure structures in them: Setup() and Loop(). It is possible for a sketch to have additional, custom functions, which are called from within the Setup and/or Loop, but they are not a requirement. Each of these functions serves their own purpose in your sketch.The Setup procedure only runs one time, after the device is switched on. This is a good location to initialize items such as testing that components function, setting variable values, filling arrays, and so forth. This procedure will not be accessed again after its code runs.

July 16, 2015

Page 5: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

The Loop procedure does exactly as its name implies: run continuously as long as the LilyPad switch is in the “on” position and power is being applied. This is a good location for testing or accessing the input and output devices that are connected to the board.

It is also important to know that one can declare variables outside of the Setup and Loop procedures. This is done for the purpose of setting items that can be used anywhere in the sketch.

Point out the functions at the start of each line which are displayed in red. Each function performs a specific task as described on the Arduino Reference webpage. Students will want to review this page to become familiar with a variety of functions before they begin writing their own code.

Also, make sure students understand the importance of punctuation use in a sketch. Each line of code ends with a semi-colon (;). Failure to include a semi-colon will result in an error message. Also point out the use of brackets {} as the opening and closing of procedures as well as how they are used in control structures such as if/then statements that require more than one line of code to be executed based on the results of a conditional test.

Next, show the students how to compile the code by clicking the checkmark button located on the toolbar at the top of the Arduino IDE. Notice when you hang over the button, the IDE identifies the button as Verify. This is useful to check that all code is valid. It is recommended that you demonstrate how an error will appear by removing one of the semi-colons at the end of a line of code and running Verify again. Discuss how error messages appear in the dialogue at the bottom of the IDE.

While Verifying the sketch is helpful for finding errors, it is not a necessity and can be skipped. This is because when you upload your sketch to the Arduino, it will verify the code as well. If an error was demonstrated by removing a semi-colon, place it back in and demonstrate uploading the sketch to your device using the right-pointing Arrow button (Upload) on the toolbar. Explain that this is transferring the code to the Arduino board. Notice the lights flashing which indicates the sketch is being transferred.

Once the sketch has been uploaded, it will begin running the code. If you used the Blink sketch for your demonstration, students should notice the green LED on the main controller board will begin to blink off and on.

Future Preparation:Give students a copy of the Basic Code Elements Handout sheet. For homework or if there is any time left in the period, have students review the information on the sheet and visit the language reference website, located at

July 16, 2015

Page 6: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

the bottom.

DAY 2: LILYPAD TEARDOWNBefore beginning to learn to code, it is important to understand what is available to work with on the LilyPad circuit board and how the various components operate. Explain that each of these components can be separated (please DO NOT do this) so they can be used for a variety of different purposes such as designing small wearable devices for monitoring health and environmental factors Hand out one LilyPad Kit to each student or pair of students. Have them take out all the components for examination. Each box should contain two individual circuit cards and a USB cable. The larger is the LilyPad master controller board with a number of input and output devices connected to it. The smaller board is known as the FTDI breakout board and is only used to connect the computer using the USB cable.

Give each student a copy of the Arduino LilyPad Simple Board Teardown handout. The main controller board for the LilyPad is the round circuit card located in the center of the circuit. This is the item that holds your sketch and controls all other components you connect to it. The board itself contains a number of important things:

FTDI Connector – used to connect the LilyPad to the computer for uploading a sketch or downloading data

Pedals – a series of connection pins used to hook a variety of input and output devices to the LilyPad, some are digital and others (denoted by the A) are analog

Reset Button – used to return to the LilyPad to its original state by clearing the sketch from memory

Negative & Positive Leads – these pedals are used for providing power to attached components

On/Off Switch – used to turn the LilyPad on and off when not connected to a computer

Battery Connector – used to provide a portable power source for your LilyPad

Processor – the chip that completes all the tasks in your sketch

After going over the main controller, point out that around it are several input and output devices. Input devices include:

Temperature Sensor – used to measure external temperature Light Sensor – used to measure ambient light

Output devices include:

Buzzer – used to produce an audible tone

July 16, 2015

Page 7: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

White LED – used to give off a bright, white light; contains 5 individual LEDs

On/Off Switch – used to pass power to components connected to the LilyPad

Momentary Button – used to provide a signal to connected components when pressed and remove the signal when released

RGB LED – used to provide red, green and blue light capability Vibration Board – used to produce a physical and auditory vibration

Once the LilyPad has been explained, have the students take out the FTDI breakout board. Explain how to connect the FTDI board to the LilyPad. Point out that the other end has a socket for a USB cable, which is how the board gets connected to the computer.

Future Preparation:For homework, have the students review the Teardown handout and continue examining the Arduino Language reference webpage.

DAY 3-5: GETTING STARTED WITH PROGRAMMINGToday the students will get to start working on coding in the Arduino IDE using the LilyPad and sensors. Begin with a short review of the past two days. [5 minutes]

Have the students connect the FTDI breakout board to the LilyPad and then plug the USB into the computer. Allow the computer to identify and install the FTDI breakout board. Note – If problems occur, you may need to update the FTDI breakout board driver which can be found on and downloaded from the Arduino website. You also need to make sure that students have the micro USB plugged all the way into the LilyPad.

The next step is to open the Arduino IDE. It is important to note that Arduino makes many different kinds of boards. The standard Arduino board that most people use is the Uno, so this is usually the default board the IDE is set to when started. Once the students have connected their LilyPad to their computer and opened the IDE, they will need to select the correct board for their development. To do this, they should select the Tools menu at the top of the IDE, then scroll down to Board and make sure they have the LilyPad Arduino as the selected board. Also, if working on a PC, make sure you select the highest numbered COM port from the port menu. Note – DO NOT use the LilyPad Arduino USB, even though the board is connected via a USB cable. Also make sure to select the ATmega328 processor. If you are not sure which COM port to use, unplug your LilyPad and look at the port options, then reconnect it and select the new port that just appeared.

At this point, there is a good chance that some of the students will have

July 16, 2015

Page 8: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

connection problems that require your assistance. Before assisting those in need, direct the students to the Arduino Tutorial webpage located at https://www.arduino.cc/en/Tutorial/HomePage. Students can begin working on the Section 1: The Basics. Once the class has started working, the teacher needs to move around the room making sure that everyone is able to connect to their LilyPad and answering questions about the coding.

Students will spend a total of three days exploring the programming examples and tutorials to become familiar with how to write code. This gives the teacher time to move around the room, assist students as needed and help them to become comfortable with coding logic.

DAY 6-8: INDEPENDENT PROJECTOnce familiar with the Arduino Programming language, pose the following problem to the class:

Now that you are familiar with programming your LilyPad and know the types of input and output devices that come with it, what can you do with it?

Students will spend the next three days designing their own product using the following criteria:

The device they create must use one input device (the defaults are the temperature and light sensors)

The device must use at least one output device to provide feedback to the operator

The sketch must be fully commented and organized, include an introduction and description of your device at the top as well as your name

All pin references must be declared as variables Include some type of test to verify the output device(s) is operating

correctly prior to being used for its main purpose in your code Include at least one control structure (conditional statement)

When completed with the coding and everything operates as expected, print a copy of your Arduino sketch.

DAY 9-10: SHARING RESULTS AND EXPERIENCEThese two days are all about sharing what we learned. Determine how students will accomplish this based on the class taking part in the lesson. Some suggestions include:

Formal multimedia presentations using an application such as PowerPoint, Google Presentations or Prezi

July 16, 2015

Page 9: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

Poster session with gallery walk Video documentation Class discussion

Regardless of the method selected, students will present their devices and explain why they chose to select their input and output devices. Students should explain what was difficult for them to accomplish/understand. Students should be given the opportunity to discuss and provide constructive criticism of each other’s coding techniques and devices. Although not a requirement, all students should be encouraged to participate in sharing.

Assessment A rubric (1) will be used to assess student learning about Arduino coding.

Assessment of the completed worksheets is optional depending on personal preference.

See the following rubrics at end of the unit plan: (Rubrics were attached as noted here)

1. Arduino Programming Rubric

Extension Activities

Advanced students can be encouraged to explore a personal choice for sensor research outside the temperature and light sensors. Doing so will require them to use a LilyPad master controller that has been separated from the board and connect the devices being used with wire or alligator clips. This extension is also dependent upon the class having access to additional sensors

Modification

If needed, students identified as requiring modifications or who struggle with English can be paired up with stronger students.A second option for students who require modifications might be to provide them with completed sketches and have them research and explain the code one line at a time rather than write their own code.

Alternative Assessments

While not preferable, individuals could be assessed as an overall group as opposed to individually. The same rubric may be used for this.

References Background Information

Unit 5: Create scenes using a 3D game engine. (Fall, 2009). In Technology Education: Advanced Game Design (Class Lecture ed.). North Carolina Department of Public Instruction: Career & Technical Education. Lecture material provided as part of the Career & Technical Education (CTE) Advanced Game Design curriculum. For more information on this material, please check the website for NCDPI at http://www.ncpublicschools.org/cte/program-areas/technology/programs

July 16, 2015

Page 10: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

NC State ASSIST Center. (n.d.). Retrieved July 8, 2015, from http://assist.ncsu.edu/

Arduino LilyPad and IDE

Getting started with Arduino (n.d.). Retrieved July 11, 2015, from https://www.arduino.cc/en/Guide/HomePage

Arduino programming notebook by Brian W. Evans (2007). Retrieved July 15, 2015, from http://playground.arduino.cc/uploads/Main/arduino_notebook_v1-1.pdf

LilyPad (December 2, 2013). Retrieved July 15, 2015, from http://lilypadarduino.org/?page_id=209

Sew Electric (n.d.). Retrieved July 15, 2015, from http://sewelectric.org/

Comments The overall goal of this lesson is to assist students in being better prepared to take classes that require computer coding. While the focus is on the Arduino programming language, it is a derivative of C and will prepare students to understand coding and computer logic in a way that will carry over into many other languages.

Author Information

Robert Bourgeois is a Career and Technical Education teacher at Durham School of the Arts. His main focus is on Game Art and Design in the Technical Education curriculum and can be reached via email at [email protected].

July 16, 2015

Page 11: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

Basic Code Elements HandoutCommentsComments are lines of code that are ignored by the computer. In other words, they don’t do anything in terms of observable or measurable features in your program. However, they are important to use to keep your program organized and give the programmer instructions on how the code works and what things mean.

A single line can be commented using the “//” characters such as:// This is a comment. It doesn’t do anything. // Comments just make code easier for you and other people to understand

You can also comment out several lines such as a paragraph by placing them between the characters “/*” and “*/”. This can be done as follows:

/* This is a comment. It doesn’t do anything. Comments just make code easier for you and other people to understand */

Simple StatementsA simple statement is a single instruction. Simple statements take up a single line of code and always end with a semi-colon (;). Here are some examples of simple statements:

int buzzerPin=5; //Set a variable to a value of 5float WarningValue= 19.5; //Sets the variable for a safe concentration of O2 in air int ledPins[] = {9, 10, 11}; //Fills an array with the values 9, 10 and 11 for use with the RGB LEDValue_O2 = sensorVoltage/7.43; //Performs a calculationsensorValue2 = analogRead(A3); //Sets a variable to what is being output to pedal A3delay(250); //Causes a quarter of a second delay before proceeding

Notice how each line has a comment after it, explaining the purpose of the line. This helps you if you ever need to return and edit your code at a later time. Also notice that some of the items set what are known as variables. Think of a variable as a place holder. Variables can store a variety of different kinds of information, depending on how they are “declared”. When a variable gets declared, you specify what kind of data it can hold. Common variable declarations include:

int – integer are your primary data type for numbers and can hold a 16 bit digit (value of -32,768 to 32,767)char – characters store a single character of information such as the letter Afloat – floats are used for decimals and can go down to 6-7 places

Conditional StatementsConditional statements consist of a condition followed by a series of statements within brackets like {} that execute when the condition is met. The most common conditional statements are:

July 16, 2015

Page 12: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

if – used for comparisons such as: if x>100if/else – same as an if but gives and alternative series of commands in the event the conditional is falsefor – repeats the commands within the brackets until the test is metwhile – continues indefinitely until the condition in the parenthesis is met such as: while(var < 200){ // do something repetitive 200 times

StructureWhen writing code in Arduino, there are basically three sections in a sketch: variable declaration, a void setup function and a void loop function. When your sketch runs, it defines the variables first. It then runs through the setup function one time, typically to set your devices and prepare them to be used. It then continuously performs the commands in the loop function until you turn if off. Here is the structure illustrated using the Example Blink sketch.

Reference: Arduino Language Webpage – https://www.arduino.cc/en/Reference/HomePageArduino LilyPad Simple Board Teardown

July 16, 2015

Page 13: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

Arduino Programming Rubric

July 16, 2015

Page 14: coachdmccoy.weebly.comcoachdmccoy.weebly.com/.../1/3/1/5/13152022/bourgeois_lilyp…  · Web viewOne of the more popular programming languages to use outside of the school environment

ASSIST Lesson Plan

Criteria Above Average20 points

Average15-19 points

Below Average8-14 points

Lacking0-5 points

Code Comments

Introductory comments at the top contain description of device and your name, individual lines are commented to describe purpose

Some introductory comments at the top including your name, most individual lines are commented to describe purpose

Some introductory comments at the top including your name, individual lines are not commented

No or minimal comments

Connected Devices

Selection of input and output devices are clear and function as described in the comments

Selection of input and output devices are clear but only one functions as described in the comments

Selection of input and output devices are clear and receive/produce some signal but neither function as described in the comments

Missing either the input or the output device

Variable Declarations

All variables are declared and have an appropriate data type based on their use

All variables are declared but some of the data types are incorrect based on their use

Most variables are declared prior to use

Lacks variable declarations, each place a variable could be used has the value coded directly into the statement

Control Structure

(Conditional)

Control structure present and operates as expected using good programming logic

Control structure present and operates but could be more concise to accomplish the same task

Control structure present but fails to exit or finish the conditional test (endless loop)

Code lacks a control structure conditional test

Output Device Test

Selected output device runs through an initialization phase during setup to verify proper functioning

Selected output device runs through an initialization phase but fails to display proof of functioning

Selected output device runs through an initialization phase, fails to display proof of functioning and crashes the sketch

No initialization test done of the selected output device

Submission ChecklistArduino Code Printout: ☐

July 16, 2015

Student Name: __________________________________________