NuMaker-PFM-NUC472 : I2C1 LCD draw bitmap

main.cpp

Committer:
ccli8
Date:
2017-07-11
Revision:
2:d43ae746ce5e
Parent:
0:b2c331c6996c

File content as of revision 2:d43ae746ce5e:

// NuMaker-PFM-NUC472 : I2C1 LCD draw bitmap
#include "mbed.h"
#include "ssd1306.h"

I2C i2c1(PD_12, PD_10); // I2C1_SDA, I2C1_SCL

SSD1306 LCD;

unsigned char BMP_128x64_Nuvoton_NuMaker[128*8] = { // Nuvoton NuMaker Logo 
    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,0x80,0xC0,0xE0,0xE0,0xF0,0x70,0x30,0x30,0x30,0x70,0xF0,0xE0,0xE0,0xC0,0x80,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xF0,0x00,0x00,0x30,0x70,0xF0,0xE0,0x80,0x00,0x00,0x00,0x00,0x80,0xE0,0xF0,0xF0,0x30,0x00,0x80,0xC0,0xE0,0xE0,0xF0,0x70,0x70,0x30,0x30,0x70,0x70,0xF0,0xE0,0xE0,0xC0,0x00,0x18,0x08,0x08,0x0C,0x0C,0xFC,0xFC,0xFC,0xFC,0x1C,0x0C,0x0C,0x08,0x08,0x08,0x80,0xC0,0xE0,0xE0,0xF0,0x70,0x70,0x30,0x30,0x70,0x70,0xE0,0xE0,0xE0,0xC0,0x00,0x00,0x00,0x80,0xC0,0xE0,0xE0,0xF0,0x70,0x30,0x30,0x30,0x70,0xF0,0xE0,0xE0,0xC0,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x7F,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0x7F,0x3F,0x00,0x00,0x0F,0x1F,0x3F,0x3F,0x78,0x70,0x70,0x60,0x70,0x70,0x78,0x3F,0x3F,0x1F,0x0F,0x00,0x00,0x00,0x00,0x01,0x07,0x0F,0x3F,0x7C,0x7C,0x3F,0x1F,0x07,0x01,0x00,0x00,0x00,0x0F,0x1F,0x3F,0x3F,0x38,0x70,0x70,0x70,0x70,0x70,0x70,0x3C,0x3F,0x1F,0x1F,0x07,0x00,0x00,0x00,0x00,0x00,0x3F,0x7F,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x07,0x1F,0x3F,0x3F,0x38,0x70,0x70,0x70,0x70,0x70,0x70,0x3D,0x3F,0x1F,0x1F,0x07,0x00,0x00,0x3F,0x7F,0x7F,0x7F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x7F,0x7F,0x7F,0x3F,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,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,0x80,0x80,0x80,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,0xFF,0xFF,0xFF,0x0F,0x3F,0xFC,0xF0,0xC0,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0x00,0x00,0x00,0x00,0x00,0xF0,0xF0,0xF0,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x0F,0x7F,0xFE,0xF8,0xC0,0x00,0x00,0x00,0x00,0xC0,0xF0,0xFE,0x7F,0x0F,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0xE0,0xE0,0x70,0x70,0x70,0x70,0x70,0xF0,0xE0,0xC0,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x80,0xC0,0xE0,0x70,0x30,0x10,0x00,0x00,0xC0,0xE0,0xE0,0x70,0x70,0x70,0x70,0xF0,0xE0,0xC0,0x80,0x00,0x00,0x00,0xF0,0xF0,0xF0,0xE0,0x70,0x70,0x70,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x03,0x0F,0x3F,0xFC,0xE0,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x00,0x7F,0xFF,0xFF,0xE0,0xC0,0xC0,0xC0,0xE0,0xFF,0xFF,0xFF,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x03,0x0F,0x7F,0xFF,0xF8,0xF8,0xFE,0x3F,0x0F,0x01,0x00,0x00,0xFF,0xFF,0xFF,0x00,0x00,0x00,0x78,0xFC,0xFC,0xCE,0xCE,0xC6,0xC6,0xE6,0xFF,0xFF,0xFF,0x00,0x00,0x00,0xFF,0xFF,0xFF,0x06,0x0F,0x1F,0x7D,0xF8,0xE0,0xC0,0x80,0x00,0x3F,0x7F,0xFF,0xEC,0xCC,0xCC,0xCC,0xCC,0xCC,0xEF,0xEF,0x0F,0x00,0x00,0x00,0xFF,0xFF,0xFF,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,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x00,0x00,0x01,0x01,0x01,0x00,0x00,0x00,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x00,0x01,0x01,0x01,0x00,0x00,0x00,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

unsigned char BMP_64x64_Academic[64*8] = {
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x00,0x80,0x80,0x00,0x00,0x00,0x80,0x00,0x00,0x00,0x80,0x00,0x80,0x00,0x00,0x00,0x00,0x80,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x20,0x20,0xE0,0x20,0x20,0x00,0x00,0x00,0x80,0x80,0x80,0x00,0x00,0x00,0x80,0x00,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x01,0x00,0x00,0x1F,0x00,0x00,0x0F,0x10,0x10,0x10,0x1F,0x00,0x01,0x0E,0x10,0x0C,0x03,0x00,0x00,0x0F,0x10,0x10,0x10,0x0F,0x00,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,0x0F,0x10,0x10,0x10,0x0F,0x00,0x00,0x1F,0x01,0x00,0x00,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,0x80,0x80,0x80,0xC0,0xC0,0xC0,0xC0,0xC0,0xE0,0xE0,0xE0,0xE0,0xE0,0xF0,0xF0,0xF0,0xF0,0xF0,0xF8,0xF8,0xF8,0xF8,0x7C,0x7C,0x7C,0xF8,0xF8,0xF8,0xF8,0xF8,0xF0,0xF0,0xF0,0xF0,0xF0,0xE0,0xE0,0xE0,0xE0,0xC0,0xC0,0xC0,0xC0,0xC0,0x80,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x01,0x01,0x01,0x03,0x03,0x03,0x07,0x07,0x07,0x0F,0x0F,0x8F,0x9F,0x9F,0x1F,0x3F,0x3F,0x3F,0x7F,0x7F,0x7F,0xFF,0xFF,0xFF,0xFF,0xFC,0xF8,0xF8,0xF8,0xFC,0xFC,0xFC,0xFC,0xFC,0x7C,0x7C,0x7D,0x3D,0x39,0x39,0x19,0x19,0x99,0x89,0x89,0x09,0x01,0x01,0x03,0x03,0xFB,0x03,0x01,0x01,0x01,0x01,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x3F,0x7F,0x7F,0xFF,0xFF,0xFF,0xFE,0xFE,0xFC,0xFC,0xFC,0xF8,0xF8,0xF9,0xF1,0xF1,0xF3,0xF1,0xF1,0xF9,0xF8,0xF8,0xFC,0xFC,0xFC,0xFE,0xFE,0xFE,0xFF,0xFF,0xFF,0x7F,0x3F,0x3F,0x00,0x00,0x00,0x00,0x00,0xFF,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,0x03,0x03,0x07,0x07,0x0F,0x0F,0x1F,0x1F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x3F,0x1F,0x1F,0x0F,0x0F,0x07,0x07,0x03,0x03,0x01,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x40,0x7C,0x70,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0xE0,0xE0,0xC0,0x00,0x00,0xE0,0xE0,0x00,0x80,0x80,0x00,0x00,0x80,0x80,0x00,0x00,0xE0,0xE0,0xC0,0x00,0x00,0x00,0xC0,0xE0,0xE0,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0xF0,0xF0,0x00,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x80,0x80,0x80,0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
    0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x1F,0x1F,0x00,0x03,0x0C,0x1F,0x1F,0x00,0x0F,0x1F,0x10,0x10,0x1F,0x1F,0x00,0x00,0x1F,0x1F,0x01,0x07,0x1C,0x07,0x01,0x1F,0x1F,0x00,0x0C,0x1E,0x12,0x1F,0x1F,0x00,0x1F,0x1F,0x06,0x1F,0x19,0x00,0x0F,0x1F,0x12,0x12,0x13,0x13,0x00,0x1F,0x1F,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00
};

int main() {
    
    i2c1.frequency(400000); 
    
    LCD.initialize();
    LCD.clearscreen();
    
    while(true) {
            LCD.drawBMP(BMP_128x64_Nuvoton_NuMaker);
            LCD.clearscreen();
            LCD.drawBmp64x64(32, 0, FG_COLOR, BG_COLOR, BMP_64x64_Academic);
            Thread::wait(500);
        }
}