aboutsummaryrefslogtreecommitdiff
path: root/tests/BlinkWithoutDelay
diff options
context:
space:
mode:
authorChristopher Peplin <chris.peplin@rhubarbtech.com>2014-09-09 23:09:35 -0400
committerChristopher Peplin <chris.peplin@rhubarbtech.com>2014-09-09 23:17:15 -0400
commitc86ce093ce93eb8da1136acd1e81973ef0bb54fc (patch)
tree9113fe08113c3548b84ba02b4d55db8cee49395f /tests/BlinkWithoutDelay
parente30bb5c28a42152007d70325477f364605b73f34 (diff)
Add a script to compile examples as an automated test suite.
* Added script/boostrap.sh to download the Arduino IDE and MPIDE (for chipKIT). Tested in Linux, should work in Cygwin and OS X too. * Added script/runtests.sh to run "make" in each example project and collect the results. The script returns -1 if any fails. * Moved currently testable examples to a "tests" directory, separate from examples that require alternative cores.
Diffstat (limited to 'tests/BlinkWithoutDelay')
-rw-r--r--tests/BlinkWithoutDelay/BlinkWithoutDelay.ino65
-rw-r--r--tests/BlinkWithoutDelay/Makefile5
2 files changed, 70 insertions, 0 deletions
diff --git a/tests/BlinkWithoutDelay/BlinkWithoutDelay.ino b/tests/BlinkWithoutDelay/BlinkWithoutDelay.ino
new file mode 100644
index 0000000..0143571
--- /dev/null
+++ b/tests/BlinkWithoutDelay/BlinkWithoutDelay.ino
@@ -0,0 +1,65 @@
+/* Blink without Delay
+
+ Turns on and off a light emitting diode(LED) connected to a digital
+ pin, without using the delay() function. This means that other code
+ can run at the same time without being interrupted by the LED code.
+
+ The circuit:
+ * LED attached from pin 13 to ground.
+ * Note: on most Arduinos, there is already an LED on the board
+ that's attached to pin 13, so no hardware is needed for this example.
+
+
+ created 2005
+ by David A. Mellis
+ modified 8 Feb 2010
+ by Paul Stoffregen
+
+ This example code is in the public domain.
+
+
+ http://www.arduino.cc/en/Tutorial/BlinkWithoutDelay
+ */
+
+// constants won't change. Used here to
+// set pin numbers:
+const int ledPin = 13; // the number of the LED pin
+
+// Variables will change:
+int ledState = LOW; // ledState used to set the LED
+long previousMillis = 0; // will store last time LED was updated
+
+// the follow variables is a long because the time, measured in miliseconds,
+// will quickly become a bigger number than can be stored in an int.
+long interval = 1000; // interval at which to blink (milliseconds)
+
+void setup() {
+ // set the digital pin as output:
+ pinMode(ledPin, OUTPUT);
+}
+
+void loop()
+{
+ // here is where you'd put code that needs to be running all the time.
+
+ // check to see if it's time to blink the LED; that is, if the
+ // difference between the current time and last time you blinked
+ // the LED is bigger than the interval at which you want to
+ // blink the LED.
+ unsigned long currentMillis = millis();
+
+ if(currentMillis - previousMillis > interval) {
+ // save the last time you blinked the LED
+ previousMillis = currentMillis;
+
+ // if the LED is off turn it on and vice-versa:
+ if (ledState == LOW)
+ ledState = HIGH;
+ else
+ ledState = LOW;
+
+ // set the LED with the ledState of the variable:
+ digitalWrite(ledPin, ledState);
+ }
+}
+
diff --git a/tests/BlinkWithoutDelay/Makefile b/tests/BlinkWithoutDelay/Makefile
new file mode 100644
index 0000000..872d069
--- /dev/null
+++ b/tests/BlinkWithoutDelay/Makefile
@@ -0,0 +1,5 @@
+BOARD_TAG = uno
+ARDUINO_LIBS =
+
+include ../TestSuiteCommon.mk
+include ../../Arduino.mk