/* littleBits SOS/All Is Well Beacon This example demonstrates the use of if() statements. It reads the state of a potentiometer (an analog input) and turns on an LED in a specific pattern only if the potentiometer goes above a certain threshold level. A different pattern is played if the potentiometer is below that threshold. The circuit: *littleBit power bit connected to slide dimmer *slide dimmer connected to Arduino at Heart at a0 * LED (or wire, then LED) connected to Arduino at Heart at d5 created 17 Jan 2009 modified 9 Apr 2012 by Tom Igoe modified 15 July 2014 by Nicole Hershberger This example code is in the public domain. http://arduino.cc/en/Tutorial/IfStatement */ // These constants won't change: const int analogPin = A0; // pin that the sensor is attached to const int ledPin = 5; // pin that the LED is attached to const int threshold = 400; // an arbitrary threshold level that's in the range of the analog input void setup() { // initialize the LED pin as an output: pinMode(ledPin, OUTPUT); // initialize serial communications: Serial.begin(9600); } void loop() { // read the value of the potentiometer: int analogValue = analogRead(analogPin); // if the analog value is high enough, turn on the LED: if (analogValue > threshold) { digitalWrite( 5, HIGH ); // Code for Morse S delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 500 ); digitalWrite( 5, HIGH ); // Code for Morse O delay( 500 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 500 ); digitalWrite( 5, HIGH ); // Code for Morse S delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 5000 ); } else { digitalWrite( 5, HIGH ); // Code for Morse A delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 200 ); digitalWrite( 5, HIGH ); // Code for Morse L delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 200 ); digitalWrite( 5, HIGH ); // Code for Morse L delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 1000 ); digitalWrite( 5, HIGH ); // Code for Morse I delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 200 ); digitalWrite( 5, HIGH ); // Code for Morse S delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 1000 ); digitalWrite( 5, HIGH ); // Code for Morse W delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 200 ); digitalWrite( 5, HIGH ); // Code for Morse E delay( 100 ); digitalWrite( 5, LOW ); delay( 200 ); digitalWrite( 5, HIGH ); // Code for Morse L delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 200 ); digitalWrite( 5, HIGH ); // Code for Morse L delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 500 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 150 ); digitalWrite( 5, HIGH ); delay( 100 ); digitalWrite( 5, LOW ); delay( 5000 ); } // print the analog value: Serial.println(analogValue); delay(1); // delay in between reads for stability }