#include <SPI.h>
#include <Wire.h>
#include <Adafruit_GFX.h>
#include <Adafruit_SSD1306.h>
Adafruit_SSD1306 display = Adafruit_SSD1306(128, 64, &Wire);
#define charw 16
#define charh 16
#define bitmap_width 128
#define bitmap_height 64
static const unsigned char PROGMEM bitmap_logo[] = {0xFF,0xFF,0xFF,0xFF,0xFF,0xF0,0x3F,0xFF,0xFF,0xFC,0x0F,0xFF,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFE,0x1F,0xFF,0xFF,0xFF,0xFF,0xF8,0x7F,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xE3,0xFF,0xF0,0x00,0x00,0x0F,0xFF,0xC7,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFE,0x3F,0xF8,0x1B,0x7F,0xFF,0xF0,0x0F,0xFC,0x7F,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xF1,0xFE,0x03,0xDF,0xFF,0xF8,0xFF,0xF0,0x7F,0xCF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0x8F,0xE1,0xFF,0x7F,0xFF,0xFF,0xFF,0xFF,0xC7,0xF9,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFE,0x7F,0x3F,0xFF,0xFE,0x7F,0xFF,0xFF,0xFF,0xFC,0x7E,0x7F,0xFF,0xFF,
0xFF,0xFF,0xF9,0xF9,0xFF,0xF9,0xFF,0xCF,0xFB,0x9F,0xFF,0xFF,0x8F,0xDF,0xFF,0xFF,
0xFF,0xFF,0xEF,0xFF,0xFF,0xFE,0xFF,0xFF,0xFF,0x7F,0xF3,0xFF,0x73,0xF3,0xFF,0xFF,
0xFF,0xFF,0xBE,0x7F,0xE3,0xFF,0xC0,0x7C,0x00,0xFF,0xFF,0xC3,0xFE,0x7D,0xFF,0xFF,
0xFF,0xFE,0x79,0xFF,0xFF,0xFF,0x81,0xFF,0xFF,0x83,0xFF,0xFF,0xDF,0x9F,0x7F,0xFF,
0xFF,0xFD,0xE7,0xFF,0xFF,0xF0,0x7F,0xFF,0xFF,0xFE,0x1F,0xFF,0xCF,0xE7,0x9F,0xFF,
0xFF,0xF7,0x9F,0xFF,0xF7,0x8F,0xFF,0x3F,0xFC,0xFF,0xF1,0x83,0xFF,0xF9,0xEF,0xFF,
0xFF,0xEF,0x7F,0xB7,0xFC,0x7F,0xC1,0xFD,0xBF,0x83,0xFE,0x3F,0xFE,0x7C,0xF3,0xFF,
0xFF,0xBC,0x3F,0xFE,0xBB,0xFF,0x87,0xF9,0x9F,0xE1,0xFF,0xCF,0x0D,0xC7,0x3D,0xFF,
0xFF,0x78,0xFF,0xFD,0xFF,0xC7,0xFF,0x75,0xAE,0x7F,0xE3,0xFB,0xFF,0xFF,0xDE,0xFF,
0xFE,0xF7,0xD0,0xFF,0x3E,0x7C,0x7F,0xFD,0xBF,0xFE,0x3E,0x7E,0xFF,0x3F,0xFF,0x7F,
0xFD,0xCF,0xDF,0x7C,0xF3,0xFD,0xE7,0xFF,0xFF,0xE7,0xBF,0xCF,0x3B,0x7F,0xFB,0xBF,
0xFB,0xBB,0xFF,0xFB,0xCF,0xF3,0xDB,0x8F,0xF1,0xD9,0xEF,0xF3,0xDF,0xFF,0x05,0xDF,
0xF7,0x7F,0xF3,0xE7,0xBF,0xEF,0x77,0x7D,0xBE,0xEE,0xF7,0xFC,0xE7,0xCB,0xFE,0xEF,0xFF,0x7F,0x3E,0xDE,0x7F,0xBD,0xFE,0xFD,0xBF,0x7F,0xBD,0xFE,0x78,0x3F,0xDF,0x7F,
0xEE,0xF8,0xDF,0xBF,0x87,0x7B,0xED,0xF1,0x83,0xB7,0xCE,0xC1,0xFD,0xFE,0xFF,0x77,
0xDD,0x3F,0xEF,0x77,0xFC,0xEF,0xDF,0xDF,0xFF,0xDB,0xC7,0x7F,0xEE,0xFC,0x1B,0xBB,
0xFB,0xDF,0xFE,0xEB,0xFF,0xC0,0x7B,0xFF,0xFF,0x9C,0x7F,0xFF,0xD7,0x7F,0xF7,0xDF,
0xB8,0xF8,0x1F,0xDD,0xFF,0xFF,0xB0,0x7F,0xF0,0x7F,0xFF,0xFF,0x3B,0xFF,0xFF,0xDD,
0xF7,0x7F,0xFD,0xDE,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFE,0xFF,0xBC,0x1D,0xEF,
0x77,0xFF,0xFF,0xBF,0xBF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xF3,0xFD,0xDF,0xFE,0xDE,
0x77,0xF0,0x1B,0xFF,0xCF,0xFF,0xFF,0x7F,0xFF,0xFF,0xF9,0xFF,0xFE,0xDF,0xFF,0x7E,
0x6F,0xFF,0xFF,0x7F,0xDC,0x7F,0xFF,0xFF,0xFF,0xFF,0xFF,0xFB,0xFE,0xED,0xFF,0xF7,
0xE0,0xFF,0xF7,0xFF,0xDF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xDF,0xFF,0xEF,0x9D,0xD7,
0xEF,0xDE,0xF7,0x00,0x3B,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x0C,0x00,0x6B,0xFF,0x77,
0xEF,0xFF,0xF7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xFF,0xF7,
0xE8,0x3F,0xF7,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEC,0xC7,0xF7,
0xEF,0xF0,0xF6,0x00,0x30,0x00,0xFF,0xFF,0xFF,0xFF,0xF8,0x0C,0x00,0x6F,0x7F,0xF7,
0xEF,0xFF,0xF7,0x7F,0xFB,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xFF,0xF7,
0x6F,0xFF,0xFF,0x7F,0xDB,0xFF,0xFF,0xFF,0xFF,0xFF,0xEF,0xDB,0xFE,0xEF,0xFF,0xF7,
0x7F,0xF0,0xFB,0x7F,0xFD,0xEF,0xFF,0xFF,0xFF,0xFF,0x9F,0xBF,0xFE,0xDF,0xCF,0xFE,
0x76,0x1F,0xFF,0xBF,0xEF,0xFB,0xFF,0xFF,0xFF,0xFF,0x7F,0xF7,0xFD,0xDF,0xF1,0xEE,
0xF7,0xFF,0x7D,0xDF,0xF6,0xFD,0xFF,0xFF,0xFF,0x9E,0x3F,0x6F,0xFD,0xBF,0xFF,0xEF,
0xBB,0xFF,0xFF,0xDF,0xFB,0x1F,0xFF,0xFF,0xFF,0xFF,0xF8,0xDF,0xFB,0xFD,0xFF,0xDD,0xFA,0xFF,0xFE,0xEF,0xE1,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xC7,0xF7,0x7B,0x01,0xDF,
0xDD,0xFF,0xEF,0x76,0x3F,0xF8,0x7F,0xFF,0xFF,0xDA,0x1F,0xFE,0x6E,0xFF,0xE3,0xBB,
0xEE,0xBF,0xFF,0xBB,0xFE,0x77,0xBF,0xFF,0xFF,0x3F,0xEE,0x7F,0xDD,0xFF,0xFF,0xF7,
0xFE,0xFB,0xF3,0xDF,0xE7,0xBD,0xCE,0xFF,0xC0,0x77,0xBD,0xE3,0xFB,0xDE,0x3F,0x77,
0xF7,0x6F,0xFF,0xE7,0x3F,0xEE,0x77,0xFF,0xFF,0xEE,0x73,0xFC,0xF7,0x7F,0xF2,0xEF,
0xFB,0xBF,0xFF,0x3B,0xCF,0xF7,0x9F,0xFF,0xF6,0xDD,0xEF,0xF3,0xCF,0xFF,0xFD,0xDF,
0xFD,0xD3,0xFF,0xFC,0xF3,0xFD,0xE3,0xFF,0xFF,0x87,0xBF,0xCF,0xB8,0xFF,0xBB,0xBF,
0xFE,0xF7,0x3F,0xE7,0x7E,0x7E,0x7F,0xFF,0xFF,0xFE,0x7E,0x3E,0xEF,0xFF,0xA7,0x7F,
0xFF,0x7A,0x77,0xDD,0xDF,0x89,0xFF,0xFF,0x86,0xFF,0x81,0xF9,0x1F,0xCF,0xDE,0xFF,
0xFF,0xBC,0xFF,0x7F,0xF3,0xFF,0xE7,0xF9,0x9D,0xE7,0xFF,0xCE,0xFF,0xF8,0x3D,0xFF,
0xFF,0xCF,0x5D,0xFE,0x64,0xFF,0x81,0xFD,0xBF,0x80,0xFF,0x33,0xFF,0xFE,0xF3,0xFF,
0xFF,0xF7,0x93,0xFD,0xFC,0x0F,0xFF,0x3F,0xFE,0x7F,0xF1,0x3F,0xF9,0xC1,0xEF,0xFF,
0xFF,0xF9,0xE7,0xFB,0xDB,0xC8,0xFF,0xFF,0xFF,0xFF,0x0C,0xEE,0xFF,0x27,0x9F,0xFF,
0xFF,0xFE,0xF8,0x67,0x7F,0xF6,0x03,0xFF,0xFF,0xC0,0x77,0xFE,0x3F,0x9F,0x7F,0xFF,
0xFF,0xFF,0xBE,0x7F,0xF3,0xFF,0xCC,0x00,0x00,0x7F,0xBB,0xBF,0xD8,0x7C,0xFF,0xFF,
0xFF,0xFF,0xCF,0xCB,0xCF,0x1F,0xFF,0xFF,0xFF,0xFF,0xFD,0xCF,0xF3,0xF3,0xFF,0xFF,
0xFF,0xFF,0xFB,0xF0,0x3E,0xFF,0x7F,0x67,0x7F,0xDD,0xFC,0xF9,0x8F,0xCF,0xFF,0xFF,
0xFF,0xFF,0xFE,0x7E,0x3D,0xBF,0x63,0x7F,0x7E,0xCE,0xFE,0x7C,0x7E,0x7F,0xFF,0xFF,
0xFF,0xFF,0xFF,0x9F,0xE3,0xFF,0x7F,0x7F,0xFE,0xFE,0xE7,0x87,0xF9,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xF3,0xFE,0x03,0xFF,0xE7,0xFF,0x7F,0xB8,0x7F,0xCF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFE,0x3F,0xF0,0x43,0xFF,0xFF,0x82,0x0F,0xFC,0x7F,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xC3,0xFF,0xE0,0x00,0x00,0x07,0xFF,0xE3,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xFF,0xFF,0xFC,0x3F,0xFF,0xFF,0xFF,0xFF,
0xFF,0xFF,0xFF,0xFF,0xFF,0xE0,0x7F,0xFF,0xFF,0xFE,0x07,0xFF,0xFF,0xFF,0xFF,0xFF};
static const unsigned char PROGMEM zhe[]={0x02,0x08,0x42,0x1C,0x22,0x60,0x22,0x40,0x0F,0xC0,0x82,0x40,0x42,0x7E,0x52,0xC8,
0x13,0x48,0x2E,0x48,0xE2,0x48,0x22,0x48,0x22,0x48,0x22,0x48,0x2A,0x88,0x05,0x08};
/*-- 文字: 大--宽x高=16x16 */
static const unsigned char PROGMEM da[]={0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,
0x01,0x00,0xFF,0xFE,0x01,0x00,0x01,0x00,0x02,0x80,0x02,0x80,0x04,0x40,0x04,0x40,0x08,0x20,0x10,0x10,0x20,0x08,0xC0,0x06};
/*-- 文字: 宁--宽x高=16x16 */
static const unsigned char PROGMEM ning[]={ 0x02,0x00,0x01,0x00,0x01,0x00,0x7F,
0xFE,0x40,0x02,0x80,0x04,0x00,0x00,0x3F,0xF8,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00};
/*-- 文字: 波--宽x高=16x16 */
static const unsigned char PROGMEM bo[]={ 0x00,0x20,0x20,0x20,0x10,0x20,0x13,
0xFE,0x82,0x22,0x42,0x24,0x4A,0x20,0x0B,0xFC,0x12,0x84,0x12,0x88,0xE2,0x48,0x22,0x50,0x22,0x20,0x24,0x50,0x24,0x88,0x09,0x06};
/*-- 文字: 理--宽x高=16x16 */
static const unsigned char PROGMEM li[]={ 0x00,0x00,0x01,0xFC,0xFD,0x24,0x11,
0x24,0x11,0xFC,0x11,0x24,0x11,0x24,0x7D,0xFC,0x10,0x20,0x10,0x20,0x11,0xFC,0x10,0x20,0x1C,0x20,0xE0,0x20,0x43,0xFE,0x00,0x00};
/*-- 文字: 工 --宽x高=16x16 */
static const unsigned char PROGMEM gong[]={ 0x00,0x00,0x00,0x00,0x7F,0xFC,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0x01,0x00,0xFF,0xFE,0x00,0x00,0x00,0x00};
/*-- 文字: 学--宽x高=16x16 */
static const unsigned char PROGMEM xue[]={ 0x22,0x08,0x11,0x08,0x11,0x10,0x00,0x20,
0x7F,0xFE,0x40,0x02,0x80,0x04,0x1F,0xE0,0x00,0x40,0x01,0x80,0xFF,0xFE,0x01,0x00,0x01,0x00,0x01,0x00,0x05,0x00,0x02,0x00};
/*-宋体12- 文字: 院--宽x高=16x16 */
static const unsigned char PROGMEM yuan[]={ 0x00,0x40,0x78,0x20,0x4B,0xFE,0x52,
0x02,0x54,0x04,0x61,0xF8,0x50,0x00,0x48,0x00,0x4B,0xFE,0x48,0x90,0x68,0x90,0x50,0x90,0x41,0x12,0x41,0x12,0x42,0x0E,0x44,0x00};
static const unsigned char *hanzi[]={zhe,da,ning,bo,li,gong,xue,yuan};
void setup()
{
display.begin(SSD1306_SWITCHCAPVCC,0x3C);
delay(10);
}
void loop()
{
display.clearDisplay();
for(int i=0;i<=7;i++)
display.drawBitmap(i*16,24,hanzi[i],charw,charh,WHITE);
//从24行,0列开始,输出内容为 浙大宁波理工学院,每个字大小为16*16,颜色为白色
display.display();
delay(3000);
display.clearDisplay();
display.clearDisplay();
display.drawBitmap(0,0, bitmap_logo,bitmap_width,bitmap_height,WHITE);
//从0行,0列开始到128行,64列显示logo,颜色为白色
display.display();
delay(3000);
}