User Tools

Site Tools


oak:tutorials:blink

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
oak:tutorials:blink [2016/03/22 09:05]
jwhendy
oak:tutorials:blink [2016/03/22 14:02]
jwhendy
Line 73: Line 73:
 This code tells the Oak that we will be using pin 1 as an output, and then loops over and over sending a ''​HIGH''​ signal to pin 1 (turns the LED on), waits 1 second, and then turns the LED off by sending a ''​LOW''​ signal. This code tells the Oak that we will be using pin 1 as an output, and then loops over and over sending a ''​HIGH''​ signal to pin 1 (turns the LED on), waits 1 second, and then turns the LED off by sending a ''​LOW''​ signal.
  
-You can find a template like this in the Arduino IDE under ''​File -> Examples -> Oak Examples -> Start''​. Otherwise, start a new sketch and copy/paste the above into your file. Make sure the port and board selections are correct and then upload the code (the button above the text window with a right arrow icon). You should see this in the message area at the bottom of the Arduino window:+You can find a template like this in the Arduino IDE under ''​File -> Examples -> Oak Examples -> Start''​. Otherwise, start a new sketch and copy/paste the above into your file. With your Oak plugged powered on, make sure the Arduino ​board selection is correctand then upload the code (the button above the text window with a right arrow icon). You should see this in the message area at the bottom of the Arduino window:
  
 <​code>​ <​code>​
Line 89: Line 89:
 [[http://​digistump.com/​wiki/​_media/​oak/​tutorials/​blink-simple.gif|{{oak:​tutorials:​blink-simple.gif?​300}}]] [[http://​digistump.com/​wiki/​_media/​oak/​tutorials/​blink-simple.gif|{{oak:​tutorials:​blink-simple.gif?​300}}]]
  
-===== Code: changing LED behavior ​=====+=== changing LED behavior ===
  
 Now that you have a general idea of how to turn a light on and off, what else could you do? How might you make the blink shorter or longer? What do you think this changed code might do? (Hint: compare the delay values after each step!) Now that you have a general idea of how to turn a light on and off, what else could you do? How might you make the blink shorter or longer? What do you think this changed code might do? (Hint: compare the delay values after each step!)
Line 116: Line 116:
 </​code>​ </​code>​
  
-With this code, the light will blink for a shorter time and stay off longer.+With this code, the light will blink for a shorter time and stay off longer. ​
  
-=== Code: a for() loop ===+===== Conclusion =====
  
-You can also define the delays using variables and loops to make things more interesting:​ +Congratulations -- you'​ve ​uploaded your first sketch ​to the Oak! In this lesson, you were able to tackle all of these first stepswhich is definite accomplishment:
- +
-<​code>​ +
-// now we'​ve ​added two variables ​to hold our +
-// on and off time delays +
-// the "​int"​ variable is able to hold integer values +
-int on_time; +
-int off_time; +
- +
-void setup()  +
-{                 +
- +
-  pinMode(1OUTPUT); //LED on Oak +
- +
-+
- +
-void loop() +
-+
- +
-  // the for() loop will initialize ​new temporary variable, i +
-  // it runs until i >= 500, adding 50 each time +
-  for(int i = 0; i < 500; i = i+50) +
-  { +
- +
-    // the on time will equal i (0, 50, 100, ...) +
-    on_time = i; +
-     +
-    // the off time will equal 500 - i (500, 450, 400, ...) +
-    off_time = 500 - i; +
- +
-    digitalWrite(1,​ HIGH); +
-    delay(on_time);​ +
-   +
-    digitalWrite(1,​ LOW); +
-    delay(off_time);​ +
-   +
-  } +
-   +
-+
-</​code>​ +
- +
-Here is what happens each time the loop runs: +
- +
-^time through loop ^i ^on_time ^off_time| +
-|1|0|0|500| +
-|2|50|50|450| +
-|3|100|100|300| +
-|.|.|.|.| +
-|.|.|.|.| +
-|10|450|450|50| +
- +
-When the ''​for()''​ loop above runs, ''​i''​ is equal to 0. It calculatesIf you upload this code, you will see this (click for enlarged view in new tab): +
- +
-[[http://​digistump.com/​wiki/​_media/​oak/​tutorials/​loop-changing-blink.gif|{{oak:​tutorials:​loop-changing-blink.gif?​300}}]]+
  
 +  * pre-requisites:​ upgrading your Oak and setting up the Arduino IDE
 +  * writing a sketch in the Arduino IDE
 +  * uploading a sketch
 +  * setting a pin as an ''​OUTPUT''​
 +  * understanding the ''​loop()''​ section, which does something again and again
 +  * sending a ''​HIGH''​ and ''​LOW''​ voltage to a pin
 +  * using ''​delay()''​ to affect the behavior of an LED
  
-Congratulations! You've taken your first steps with the Oak. Take a look at some of the other [[http://​digistump.com/​wiki/​oak?​redirect=1|tutorials]] ​for more!+Keep your momentum going and take a look at the [[http://​digistump.com/​wiki/​oak/tutorials/leds|next tutorial]] which will get you started wiring up LED bulbs, resistors, and some more advanced coding!
oak/tutorials/blink.txt · Last modified: 2016/03/23 16:26 by jwhendy