FallShield
Hello all,
This is my Fall inspired Lol Shield dynamic animation!
As demonstrated in class, it operates with a tilt sensor that causes a looped animation to occur when disturbed.
/* This file was dynamically created by the Lol Shield Theatre: http://falldeaf.com/lolshield/ Feel free to drop by and create your own cinema masterpiece 🙂 -falldeaf Animation information - ///////////////////////// //title: tree //author: Freddie //description: pcomp ///////////////////////// //current score: 0 (as of Thursday 17th of November 2011 08:00:57 PM ) //animation page at: http://falldeaf.com/lolshield/show.php?anim=675 ///////////////////////// This program is a modification of the Basic LoL Shield Test Modified by falldeaf on 2/27/2011. Writen for the LoL Shield, designed by Jimmie Rodgers: http://jimmieprodgers.com/kits/lolshield/ This needs the Charliplexing library, which you can get at the LoL Shield project page: http://code.google.com/p/lolshield/ Created by Jimmie Rodgers on 12/30/2009. Adapted from: http://www.arduino.cc/playground/Code/BitMath History: December 30, 2009 - V1.0 first version written at 26C3/Berlin This is free software; you can redistribute it and/or modify it under the terms of the GNU Version 3 General Public License as published by the Free Software Foundation; or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA */ #include <Charliplexing.h> //Imports the library, which needs to be const int buttonPin = A5; // the number of the pushbutton pin //const int ledPin = 13; // the number of the LED pin byte line = 0; //Row counter char buffer[10]; int value; int buttonState = 0; void setup() { LedSign::Init(); //Initializes the screen // initialize the LED pin as an output: //pinMode(ledPin, OUTPUT); // initialize the pushbutton pin as an input: pinMode(buttonPin, INPUT); } void loop() { // read the state of the pushbutton value: buttonState = analogRead(buttonPin); // check if the pushbutton is pressed. // if it is, the buttonState is HIGH: if (buttonState == LOW) { DisplayBitMap(2040); DisplayBitMap(4092); DisplayBitMap(4094); DisplayBitMap(2044); DisplayBitMap(2044); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(500); } else { // turn LED off: // delay(100); // DisplayBitMap(2040); // DisplayBitMap(4092); // DisplayBitMap(4094); // DisplayBitMap(2044); // DisplayBitMap(2044); // DisplayBitMap(1008); // DisplayBitMap(192); // DisplayBitMap(192); // DisplayBitMap(480); // delay(3000); DisplayBitMap(2040); DisplayBitMap(4060); DisplayBitMap(4094); DisplayBitMap(4092); DisplayBitMap(2044); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(100); DisplayBitMap(2040); DisplayBitMap(4060); DisplayBitMap(3838); DisplayBitMap(2044); DisplayBitMap(4092); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(100); DisplayBitMap(2040); DisplayBitMap(4060); DisplayBitMap(3838); DisplayBitMap(2014); DisplayBitMap(2044); DisplayBitMap(3060); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(100); DisplayBitMap(2040); DisplayBitMap(4060); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1918); DisplayBitMap(1008); DisplayBitMap(2244); DisplayBitMap(192); DisplayBitMap(480); delay(100); DisplayBitMap(1976); DisplayBitMap(4060); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(2034); DisplayBitMap(480); DisplayBitMap(2244); DisplayBitMap(480); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1016); DisplayBitMap(1250); DisplayBitMap(480); DisplayBitMap(2532); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1016); DisplayBitMap(192); DisplayBitMap(1250); DisplayBitMap(480); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(200); DisplayBitMap(224); DisplayBitMap(1506); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(200); DisplayBitMap(480); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(2032); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(488); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(1216); DisplayBitMap(192); DisplayBitMap(480); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(1216); DisplayBitMap(480); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(1504); delay(100); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(2000); DisplayBitMap(1976); DisplayBitMap(3036); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(1000); DisplayBitMap(1976); DisplayBitMap(3068); DisplayBitMap(3830); DisplayBitMap(2012); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(1000); DisplayBitMap(1976); DisplayBitMap(3068); DisplayBitMap(3830); DisplayBitMap(2044); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(1000); DisplayBitMap(1976); DisplayBitMap(3068); DisplayBitMap(4086); DisplayBitMap(2044); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(1000); DisplayBitMap(2040); DisplayBitMap(3068); DisplayBitMap(4086); DisplayBitMap(2044); DisplayBitMap(1916); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(1000); DisplayBitMap(2040); DisplayBitMap(3068); DisplayBitMap(4086); DisplayBitMap(2044); DisplayBitMap(2044); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(1000); DisplayBitMap(2040); DisplayBitMap(4092); DisplayBitMap(4086); DisplayBitMap(2044); DisplayBitMap(2044); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); delay(1000); DisplayBitMap(2040); DisplayBitMap(4092); DisplayBitMap(4094); DisplayBitMap(2044); DisplayBitMap(2044); DisplayBitMap(1008); DisplayBitMap(192); DisplayBitMap(192); DisplayBitMap(480); } } void DisplayBitMap(int lineint) { //int data[9] = {95, 247, 123, 511, 255, 1, 5, 31, 15}; //for(line = 0; line < 9; line++) { for (byte led=0; led<14; ++led) { if (lineint & (1<<led)) { LedSign::Set(led, line, 1); } else { LedSign::Set(led, line, 0); } } line++; if(line >= 9) line = 0; }
Reply