#include <MicroView.h> // include MicroView library
uint8_t sprite_1_f1 [] = {
0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
0x40, 0x40, 0x20, 0x10, 0x10, 0x88, 0xC4, 0xE2, 0xE2, 0xF1, 0xF1, 0xF1, 0xF1, 0x71, 0x71, 0x3F,
0x3F, 0x71, 0x71, 0xF1, 0xF1, 0xF1, 0xF1, 0xE2, 0xC2, 0xC4, 0x88, 0x10, 0x10, 0x20, 0x40, 0x80,
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x40, 0x40, 0x20, 0x10, 0x08, 0x88, 0xC4, 0xC2, 0xE2, 0xF1, 0xF8,
0xF8, 0xFC, 0x7E, 0x3F, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x01, 0x81, 0x80, 0x80, 0xC0, 0xC0,
0xC0, 0xC0, 0xC0, 0x80, 0x81, 0x81, 0x03, 0x07, 0x0F, 0x0F, 0x1F, 0x3F, 0x3E, 0x7C, 0xFC, 0xF8,
0xF0, 0xE1, 0xE2, 0xC4, 0x84, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xF8, 0xFC, 0x3E, 0x1F, 0x1F, 0x0F, 0x07, 0x03, 0x03, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFC, 0xFE, 0xFF, 0xFF, 0xFF, 0x9F, 0x0F, 0x67,
0x67, 0x0F, 0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7C, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x03, 0x03, 0x07, 0x0F, 0x1F, 0x1F, 0xFE, 0xFC, 0xF8, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x3D, 0x7D, 0xF9, 0xF9, 0xF1, 0xE2, 0xC2, 0xC4, 0x88,
0x08, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x01, 0x07, 0x0F, 0x1F, 0x3F, 0x3F, 0x3F, 0x7F, 0x7E,
0x7E, 0x5F, 0x7F, 0x3F, 0x2F, 0x3F, 0x1F, 0x0F, 0x07, 0x81, 0x40, 0x20, 0x20, 0x10, 0x08, 0x08,
0x84, 0xC2, 0xC2, 0xE1, 0xF1, 0xF9, 0xF9, 0x7D, 0x3F, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0F,
0x1F, 0x3F, 0x3E, 0x7C, 0xFC, 0xF8, 0xF0, 0xF1, 0xE1, 0xC2, 0x84, 0x84, 0x08, 0x10, 0x10, 0xE0,
0xE0, 0x10, 0x10, 0x08, 0x84, 0x84, 0xC2, 0xE1, 0xF1, 0xF0, 0xF8, 0xFC, 0x7C, 0x3E, 0x3F, 0x1F,
0x0F, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x0F, 0x0F, 0x1F, 0x3F, 0x7E, 0x7E, 0xFF,
0xFF, 0x7E, 0x7E, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
};
uint8_t sprite_1_f2 [] = {
0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
0x40, 0x40, 0x20, 0x10, 0x10, 0x88, 0xC4, 0xE2, 0xE2, 0xF1, 0xF1, 0xF1, 0xF1, 0x71, 0x71, 0x3F,
0x3F, 0x71, 0x71, 0xF1, 0xF1, 0xF1, 0xF1, 0xE2, 0xC2, 0xC4, 0x88, 0x10, 0x10, 0x20, 0x40, 0x80,
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x40, 0x40, 0x20, 0x10, 0x08, 0x88, 0xC4, 0xC2, 0xE2, 0xF1, 0xF8,
0xF8, 0xFC, 0x7E, 0x3F, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x01, 0x81, 0x80, 0x80, 0xC0, 0xC0,
0xC0, 0xC0, 0xC0, 0x80, 0x81, 0x81, 0x03, 0x07, 0x0F, 0x0F, 0x1F, 0x3F, 0x3E, 0x7C, 0xFC, 0xF8,
0xF0, 0xE1, 0xE2, 0xC4, 0x84, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xF8, 0xFC, 0x3E, 0x1F, 0x1F, 0x0F, 0x07, 0x03, 0x03, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFC, 0xFE, 0xFF, 0x9F, 0x0F, 0x67, 0x67, 0x0F,
0x9F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7C, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x03, 0x03, 0x07, 0x0F, 0x1F, 0x1F, 0xFE, 0xFC, 0xF8, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x3D, 0x7D, 0xF9, 0xF9, 0xF1, 0xE2, 0xC2, 0xC4, 0x88,
0x08, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x01, 0x07, 0x0F, 0x1F, 0x3F, 0x3F, 0x3E, 0x7E, 0x7F,
0x7F, 0x5F, 0x7F, 0x3F, 0x2F, 0x3F, 0x1F, 0x0F, 0x07, 0x81, 0x40, 0x20, 0x20, 0x10, 0x08, 0x08,
0x84, 0xC2, 0xC2, 0xE1, 0xF1, 0xF9, 0xF9, 0x7D, 0x3F, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0F,
0x1F, 0x3F, 0x3E, 0x7C, 0xFC, 0xF8, 0xF0, 0xF1, 0xE1, 0xC2, 0x84, 0x84, 0x08, 0x10, 0x10, 0xE0,
0xE0, 0x10, 0x10, 0x08, 0x84, 0x84, 0xC2, 0xE1, 0xF1, 0xF0, 0xF8, 0xFC, 0x7C, 0x3E, 0x3F, 0x1F,
0x0F, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x0F, 0x0F, 0x1F, 0x3F, 0x7E, 0x7E, 0xFF,
0xFF, 0x7E, 0x7E, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
};
uint8_t sprite_1_f3 [] = {
0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
0x40, 0x40, 0x20, 0x10, 0x10, 0x88, 0xC4, 0xE2, 0xE2, 0xF1, 0xF1, 0xF1, 0xF1, 0x71, 0x71, 0x3F,
0x3F, 0x71, 0x71, 0xF1, 0xF1, 0xF1, 0xF1, 0xE2, 0xC2, 0xC4, 0x88, 0x10, 0x10, 0x20, 0x40, 0x80,
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x40, 0x40, 0x20, 0x10, 0x08, 0x88, 0xC4, 0xC2, 0xE2, 0xF1, 0xF8,
0xF8, 0xFC, 0x7E, 0x3F, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x01, 0x81, 0x80, 0x80, 0xC0, 0xC0,
0xC0, 0xC0, 0xC0, 0x80, 0x81, 0x81, 0x03, 0x07, 0x0F, 0x0F, 0x1F, 0x3F, 0x3E, 0x7C, 0xFC, 0xF8,
0xF0, 0xE1, 0xE2, 0xC4, 0x84, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xF8, 0xFC, 0x3E, 0x1F, 0x1F, 0x0F, 0x07, 0x03, 0x03, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0x9C, 0x0E, 0x67, 0x67, 0x0F, 0x9F, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFE, 0x7C, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x03, 0x03, 0x07, 0x0F, 0x1F, 0x1F, 0xFE, 0xFC, 0xF8, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x3D, 0x7D, 0xF9, 0xF9, 0xF1, 0xE2, 0xC2, 0xC4, 0x88,
0x08, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x01, 0x07, 0x0F, 0x1E, 0x3E, 0x3F, 0x3F, 0x7F, 0x7F,
0x7F, 0x5F, 0x7F, 0x3F, 0x2F, 0x3F, 0x1F, 0x0F, 0x07, 0x81, 0x40, 0x20, 0x20, 0x10, 0x08, 0x08,
0x84, 0xC2, 0xC2, 0xE1, 0xF1, 0xF9, 0xF9, 0x7D, 0x3F, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0F,
0x1F, 0x3F, 0x3E, 0x7C, 0xFC, 0xF8, 0xF0, 0xF1, 0xE1, 0xC2, 0x84, 0x84, 0x08, 0x10, 0x10, 0xE0,
0xE0, 0x10, 0x10, 0x08, 0x84, 0x84, 0xC2, 0xE1, 0xF1, 0xF0, 0xF8, 0xFC, 0x7C, 0x3E, 0x3F, 0x1F,
0x0F, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x0F, 0x0F, 0x1F, 0x3F, 0x7E, 0x7E, 0xFF,
0xFF, 0x7E, 0x7E, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
};
uint8_t sprite_1_f8 [] = {
0xFF, 0xE1, 0xE1, 0xE1, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80,
0x40, 0x40, 0x20, 0x10, 0x10, 0x88, 0xC4, 0xE2, 0xE2, 0xF1, 0xF1, 0xF1, 0xF1, 0x71, 0x71, 0x3F,
0x3F, 0x71, 0x71, 0xF1, 0xF1, 0xF1, 0xF1, 0xE2, 0xC2, 0xC4, 0x88, 0x10, 0x10, 0x20, 0x40, 0x80,
0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xE1, 0xE1, 0xE1, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x40, 0x40, 0x20, 0x10, 0x08, 0x88, 0xC4, 0xC2, 0xE2, 0xF1, 0xF8,
0xF8, 0xFC, 0x7E, 0x3F, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x01, 0x81, 0x80, 0x80, 0xC0, 0xC0,
0xC0, 0xC0, 0xC0, 0x80, 0x81, 0x81, 0x03, 0x07, 0x0F, 0x0F, 0x1F, 0x3F, 0x3E, 0x7C, 0xFC, 0xF8,
0xF0, 0xE1, 0xE2, 0xC4, 0x84, 0x08, 0x10, 0x20, 0x20, 0x40, 0x40, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xF8, 0xF8, 0xFC, 0x3E, 0x1F, 0x1F, 0x0F, 0x07, 0x03, 0x03, 0x01,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF0, 0xFC, 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xF3, 0xE1,
0xCC, 0xCC, 0xE1, 0xF3, 0xFF, 0xFF, 0xFF, 0xFE, 0x7C, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x01, 0x03, 0x03, 0x07, 0x0F, 0x1F, 0x1F, 0xFE, 0xFC, 0xF8, 0xF8, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, 0x1F, 0x3D, 0x7D, 0xF9, 0xF9, 0xF1, 0xE2, 0xC2, 0xC4, 0x88,
0x08, 0x10, 0x20, 0x20, 0x40, 0x80, 0x80, 0x01, 0x07, 0x0F, 0x1F, 0x3F, 0x3F, 0x3F, 0x7F, 0x7F,
0x7F, 0x5F, 0x7F, 0x3F, 0x2F, 0x3F, 0x1F, 0x0F, 0x07, 0x81, 0x40, 0x20, 0x20, 0x10, 0x08, 0x08,
0x84, 0xC2, 0xC2, 0xE1, 0xF1, 0xF9, 0xF9, 0x7D, 0x3F, 0x1F, 0x1F, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x0F,
0x1F, 0x3F, 0x3E, 0x7C, 0xFC, 0xF8, 0xF0, 0xF1, 0xE1, 0xC2, 0x84, 0x84, 0x08, 0x10, 0x10, 0xE0,
0xE0, 0x10, 0x10, 0x08, 0x84, 0x84, 0xC2, 0xE1, 0xF1, 0xF0, 0xF8, 0xFC, 0x7C, 0x3E, 0x3F, 0x1F,
0x0F, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF,
0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x0F, 0x0F, 0x1F, 0x3F, 0x7E, 0x7E, 0xFF,
0xFF, 0x7E, 0x7E, 0x3F, 0x1F, 0x0F, 0x0F, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00,
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF
};
int buttonPin = 2; // push button pin
volatile uint8_t displaySelect = LOW; // variable to store the display status
volatile uint8_t pressCount = 0;
void setup() {
uView.begin(); // start MicroView
uView.clear(PAGE); // clear page
pinMode(buttonPin, INPUT_PULLUP); // initialize the pushbutton pin as an input
/* Enables interupt 0 on pin 2 to trigger on a falling edge of the button press */
attachInterrupt(digitalPinToInterrupt(buttonPin), button_press, FALLING);
}
void loop() {
/* Changes sprites displayed based on the state of the display select */
if(displaySelect == HIGH)
{
uView.drawBitmap(sprite_1_f1);
uView.display();
delay(500);
uView.drawBitmap(sprite_1_f2);
uView.display();
delay(500);
uView.drawBitmap(sprite_1_f3);
uView.display();
delay(500);
uView.drawBitmap(sprite_1_f2);
uView.display();
delay(500);
uView.drawBitmap(sprite_1_f1);
uView.display();
delay(500);
}
else
{
uView.clear(PAGE); // clear page
uView.display();
}
}
void button_press()
{
/* Toggles display state*/
displaySelect = !displaySelect;
////////////////////////////////////// Tester //////////////////////////////////////
// /*Check if the pushbutton is pressed.
// if it is not pressed, the displaySelect is HIGH:*/
// if (displaySelect == HIGH)
// {
// uView.setCursor(0,0); // set cursor at 0,0
// uView.print("OFF"); // print OFF
// uView.display();
// }
// else
// {
// uView.setCursor(0,0);
// uView.print("ON ");
// uView.display();
// }
}
Comments
Please log in or sign up to comment.