#include #include #define SCREEN_WIDTH 128 // OLED display width, in pixels #define SCREEN_HEIGHT 32 // OLED display height, in pixels #define OLED_RESET 4 // Reset pin # (or -1 if sharing Arduino reset pin) Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET); const byte saeed[] ={0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc3, 0x00, 0x00, 0x00, 0xff, 0xd8, 0x00, 0x01, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x6d, 0x40, 0x00, 0x01, 0x00, 0x07, 0x00, 0x02, 0x03, 0x80, 0x00, 0x00, 0x07, 0xf7, 0x80, 0x02, 0x80, 0xf0, 0x00, 0x03, 0x00, 0x01, 0x80, 0x06, 0x00, 0x80, 0x07, 0xfe, 0x0c, 0x00, 0x00, 0x06, 0x00, 0x18, 0x00, 0x02, 0x00, 0x00, 0x40, 0x0c, 0x00, 0x40, 0x04, 0x00, 0x18, 0x00, 0x00, 0x1c, 0x00, 0x0e, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x20, 0x00, 0x00, 0x10, 0x00, 0x00, 0x18, 0x00, 0x02, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x20, 0x08, 0x00, 0x10, 0x00, 0x00, 0x10, 0x00, 0x00, 0x80, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x10, 0x08, 0x00, 0x10, 0x00, 0x00, 0x88, 0x00, 0x00, 0xc0, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x60, 0x04, 0x00, 0x00, 0x00, 0x08, 0x00, 0x10, 0x00, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x00, 0x20, 0x02, 0x00, 0x00, 0x00, 0x08, 0x00, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x20, 0x03, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x08, 0x00, 0x10, 0x00, 0x00, 0x18, 0x00, 0x00, 0x30, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x00, 0x10, 0x00, 0x60, 0x00, 0x00, 0x08, 0x00, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x10, 0x00, 0x10, 0x00, 0x00, 0x08, 0xff, 0xf8, 0x0d, 0x60, 0x1f, 0xf8, 0x00, 0x08, 0x00, 0x00, 0x10, 0x00, 0x05, 0x00, 0x00, 0x1b, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x10, 0x00, 0x00, 0x60, 0x00, 0x10, 0x00, 0x10, 0x08, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x00, 0x28, 0x00, 0x00, 0x08, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x00, 0x20, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x10, 0x08, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x00, 0x20, 0x00, 0x00, 0x01, 0x80, 0x10, 0x00, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0xc0, 0x10, 0x00, 0x00, 0x08, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x40, 0x10, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x00, 0x68, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x10, 0x08, 0x00, 0x10, 0x00, 0x00, 0x08, 0x00, 0x00, 0x48, 0x00, 0x00, 0x00, 0x40, 0x08, 0x00, 0x10, 0x08, 0x00, 0x08, 0x00, 0x00, 0x08, 0x00, 0x03, 0x90, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x10, 0x08, 0x00, 0x08, 0x00, 0x00, 0x08, 0x03, 0xfe, 0x20, 0x00, 0x00, 0x05, 0x10, 0x08, 0x00, 0x10, 0x08, 0x00, 0x08, 0x00, 0x00, 0x0f, 0xfe, 0xfa, 0x80, 0x00, 0x00, 0xca, 0x00, 0x10, 0x00, 0x10, 0x0e, 0x00, 0x0c, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x07, 0xff, 0x50, 0x00, 0x10, 0x00, 0x10, 0x03, 0xf0, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} ; const byte smiley[]={0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3f,0xf8,0x00,0x00,0x00,0x00,0x00,0x01,0xff,0x80,0x00,0x00,0x00,0x00,0x00,0x06,0x3f,0xfe,0x00,0x00,0x00,0x00,0x00,0x3f,0x0f,0xf0,0x00,0x00,0x00,0x00,0x00,0x01,0xbe,0xab,0x80,0x00,0x00,0x00,0x01,0xff,0xf8,0x9c,0x00,0x00,0x00,0x00,0x00,0x0f,0xff,0xff,0xe0,0x00,0x00,0x00,0x03,0xf7,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0x1f,0xff,0xff,0xe0,0x00,0x00,0x00,0x00,0x7f,0xff,0xff,0x00,0x00,0x00,0x00,0x00,0xfe,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1e,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x80,0x00,0x00,0x00,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xc0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x06,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x1c,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xc0,0x00,0x00,0x07,0xf8,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3f,0xff,0xff,0xfe,0x30,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1f,0xff,0x80,0x00,0x40,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x03,0xfe,0x00,0x03,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0xff,0xff,0xfe,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00} ; void setup() { if (!display.begin(SSD1306_SWITCHCAPVCC, 0x3C)) for (;;); // Don't proceed, loop forever } void loop() { bytes_to_screen(saeed); delay(1000); bytes_to_screen(smiley); delay(1000); } void bytes_to_screen(byte image[]) { display.clearDisplay(); for (int j = 0; j < SCREEN_HEIGHT; j++) { for (int i = 0; i < SCREEN_WIDTH; i++) { display.drawPixel(i, j, bitRead(image[(j * SCREEN_WIDTH + i) / 8], 8 - (j * SCREEN_WIDTH + i) % 8)); } } display.display(); }