LOL shield – first Iteration – Aneta Genova
Here is my first LOL shield iteration.
Code:
#include <Charliplexing.h> //Imports the library, which needs to be
const int buttonPin = A4; // the number of the pushbutton pin
byte line = 0; //Row counter
char buffer[10];
int value;
int buttonState = 0;
void setup()
{ Serial.begin(9600);
LedSign::Init(); //Initializes the screen
// initialize the pushbutton pin as an input:
pinMode(buttonPin, INPUT);
}
void loop()
{
// read the state of the pushbutton value:
buttonState = digitalRead(buttonPin);
// check if the pushbutton is pressed. if it is, the buttonState is HIGH:
if (buttonState == HIGH) {
Serial.println(‘low’);
delay(300);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
}
else {
Serial.println(‘0000909090909090’);
delay(300);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
delay(300);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(255);
delay(300);
DisplayBitMap(63);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(255);
DisplayBitMap(511);
delay(300);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(255);
DisplayBitMap(255);
DisplayBitMap(511);
delay(300);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(255);
DisplayBitMap(255);
DisplayBitMap(511);
DisplayBitMap(511);
delay(300);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(127);
DisplayBitMap(255);
DisplayBitMap(255);
DisplayBitMap(511);
DisplayBitMap(1023);
delay(300);
DisplayBitMap(31);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(127);
DisplayBitMap(127);
DisplayBitMap(255);
DisplayBitMap(1023);
DisplayBitMap(2047);
delay(300);
DisplayBitMap(31);
DisplayBitMap(31);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(127);
DisplayBitMap(255);
DisplayBitMap(1023);
DisplayBitMap(2047);
delay(300);
DisplayBitMap(15);
DisplayBitMap(31);
DisplayBitMap(31);
DisplayBitMap(63);
DisplayBitMap(63);
DisplayBitMap(127);
DisplayBitMap(255);
DisplayBitMap(511);
DisplayBitMap(2047);
delay(300);
DisplayBitMap(7);
DisplayBitMap(15);
DisplayBitMap(31);
DisplayBitMap(31);
DisplayBitMap(31);
DisplayBitMap(63);
DisplayBitMap(255);
DisplayBitMap(511);
DisplayBitMap(2047);
delay(300);
DisplayBitMap(3);
DisplayBitMap(7);
DisplayBitMap(7);
DisplayBitMap(15);
DisplayBitMap(31);
DisplayBitMap(63);
DisplayBitMap(511);
DisplayBitMap(2047);
DisplayBitMap(4095);
delay(300);
DisplayBitMap(1);
DisplayBitMap(3);
DisplayBitMap(3);
DisplayBitMap(7);
DisplayBitMap(15);
DisplayBitMap(31);
DisplayBitMap(1023);
DisplayBitMap(2047);
DisplayBitMap(8191);
delay(300);
DisplayBitMap(0);
DisplayBitMap(3);
DisplayBitMap(3);
DisplayBitMap(7);
DisplayBitMap(15);
DisplayBitMap(63);
DisplayBitMap(1023);
DisplayBitMap(4095);
DisplayBitMap(16383);
delay(300);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(3);
DisplayBitMap(3);
DisplayBitMap(7);
DisplayBitMap(15);
DisplayBitMap(1023);
DisplayBitMap(8191);
DisplayBitMap(16383);
delay(300);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(3);
DisplayBitMap(7);
DisplayBitMap(15);
DisplayBitMap(2047);
DisplayBitMap(16383);
DisplayBitMap(16383);
delay(300);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(15);
DisplayBitMap(255);
DisplayBitMap(8191);
DisplayBitMap(16383);
DisplayBitMap(16383);
delay(300);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(2047);
DisplayBitMap(16383);
DisplayBitMap(16383);
DisplayBitMap(16383);
delay(300);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(16383);
DisplayBitMap(16383);
DisplayBitMap(16383);
DisplayBitMap(16383);
delay(300);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(14336);
DisplayBitMap(16380);
DisplayBitMap(16383);
DisplayBitMap(16383);
DisplayBitMap(16383);
delay(300);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(0);
DisplayBitMap(8192);
DisplayBitMap(12288);
DisplayBitMap(16368);
DisplayBitMap(16380);
DisplayBitMap(16383);
DisplayBitMap(16383);
}
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