#include <Arduino.h>
#include <U8g2lib.h>
#include <Wire.h>
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE); // initialization for the used OLED display
// 默认SLC9;SDA8
// U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/ U8X8_PIN_NONE, /* clock=*/ 16, /* data=*/ 17); // ESP32 Thing, HW I2C with pin remapping
// 指定SLC、SDA
/*
void setup(void) {
Wire.begin(17,16); //指定 Wire.begin(sda,scl)
}
*/
const unsigned char img1[] U8X8_PROGMEM = {
0x00,0x00,0xC0,0x1F,0xF8,0x03,0x00,0x00,0x00,0x00,0xF8,0x3F,0xF8,0x80,0x03,0x00,0x00,0x00,0xFF,0x3F,0xF8,0x00,0x0F,0x00,0x00,0xF0,0xFF,0x1F,0xF8,0x00,0x3E,0x00,0x00,0xFF,0x3F,0x00,0xF8,0x00,0xFC,0x00,0xF0,0xFF,0x07,0x00,0xF8,0x00,0xF8,0x01,0xFF,0xC0,0x07,0x00,0xF8,0x00,0xF8,0x03,0x00,0xC0,0x07,0x00,0xF8,0x00,0xF0,0x07,
0x00,0xC0,0x07,0x00,0xF8,0x00,0xE0,0x0F,0x00,0xC0,0x07,0x00,0xF8,0x00,0xC0,0x0F,0x00,0xC0,0x07,0x00,0xF8,0x00,0xC0,0x0F,0x00,0xC0,0x07,0x00,0xF8,0x00,0x80,0x0F,0x00,0xC0,0x07,0x00,0xF8,0x00,0x80,0x07,0x00,0xC0,0x07,0x00,0xF8,0x00,0x00,0x03,0x00,0xC0,0x07,0x00,0xF8,0x00,0x00,0x00,0x00,0xC0,0x07,0x00,0xF8,0x00,0x00,0x00,
0x00,0xC0,0x07,0x00,0xF8,0x00,0x00,0x10,0x00,0xC0,0x07,0x00,0xF8,0x00,0x00,0x38,0x00,0xC0,0x07,0x00,0xF8,0x00,0x00,0x7C,0x00,0xC0,0x07,0x00,0xF8,0x00,0x00,0xFE,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0xFF,0x00,0xC0,0x07,0x00,0xF0,0x00,0x00,0x00,0x00,0xC0,0x07,0x00,0xF0,0x00,0x00,0x00,
0x00,0xC0,0x07,0x00,0xF0,0x00,0x00,0x00,0x00,0xC0,0x07,0x00,0xF0,0x00,0x00,0x00,0x00,0xC0,0x07,0x00,0xF0,0x00,0x80,0x00,0x00,0xC0,0x07,0x00,0xF0,0x01,0xC0,0x01,0x00,0xC0,0x07,0x00,0xF0,0x01,0xC0,0x03,0x00,0xC0,0x07,0x00,0xF0,0x01,0xE0,0x07,0x00,0xC0,0x07,0x00,0xF0,0x01,0xF0,0x0F,0x00,0xC0,0x07,0x00,0xE0,0x01,0xF0,0x03,
0x00,0xC0,0x07,0x80,0xE0,0x01,0xF8,0x01,0x00,0xC0,0x07,0xF0,0xE0,0x01,0xF8,0x00,0x00,0xC0,0x07,0x3E,0xE0,0x01,0x7C,0x00,0x00,0xC0,0xC7,0x07,0xE0,0x01,0x3E,0x00,0x00,0xC0,0xFF,0x01,0xE0,0x03,0x3E,0x00,0x00,0xC0,0x7F,0x00,0xE0,0x03,0x1F,0x00,0x00,0xF8,0x0F,0x00,0xC0,0x83,0x0F,0x00,0x00,0xFF,0x07,0x00,0xC0,0x83,0x07,0x00,
0xF0,0xFF,0x07,0x00,0xC0,0xC3,0x07,0x00,0xFE,0xDF,0x07,0x00,0xC0,0xE7,0x03,0x00,0xFF,0xC7,0x07,0x00,0xC0,0xF7,0x01,0x00,0xFF,0xC0,0x07,0x00,0x80,0xFF,0x00,0x00,0x3F,0xC0,0x07,0x00,0x80,0x7F,0x00,0x00,0x0F,0xC0,0x07,0x00,0x80,0x7F,0x00,0x00,0x03,0xC0,0x07,0x00,0x00,0x3F,0x00,0x00,0x01,0xC0,0x07,0x00,0x80,0x1F,0x00,0x00,
0x00,0xC0,0x07,0x00,0xC0,0x1F,0x00,0x00,0x00,0xC0,0x07,0x00,0xE0,0x3F,0x00,0x00,0x00,0xC0,0x07,0x00,0xF0,0x7F,0x00,0x00,0x00,0xC0,0x07,0x00,0xF8,0xFC,0x00,0x00,0x00,0xC0,0x07,0x00,0x7E,0xF8,0x01,0x00,0x00,0xC0,0x07,0x00,0x3F,0xF0,0x03,0x00,0x00,0xC0,0x07,0x80,0x0F,0xE0,0x07,0x00,0x00,0xC0,0x07,0xE0,0x03,0xE0,0x0F,0x80,
0x00,0xC0,0x07,0xF0,0x01,0xC0,0x1F,0x80,0x00,0x80,0x07,0x7C,0x00,0x80,0x3F,0x80,0x00,0xC0,0x07,0x1F,0x00,0x00,0xFF,0x80,0x00,0xC0,0x87,0x07,0x00,0x00,0xFE,0x83,0x78,0xE0,0xE7,0x00,0x00,0x00,0xFC,0xCF,0xF0,0xFF,0x37,0x00,0x00,0x00,0xF0,0xFF,0xC0,0xFF,0x03,0x00,0x00,0x00,0xE0,0xFF,0x00,0xFF,0x03,0x00,0x00,0x00,0x80,0xFF,/*"我",0*/
};
const unsigned char img2[] U8X8_PROGMEM = {
0x00,0xE0,0x1F,0xC0,0x01,0x00,0x00,0x00,0x00,0xE0,0x0F,0x80,0x07,0x00,0x00,0x00,0x00,0xF0,0x03,0x80,0x0F,0x00,0x00,0x00,0x00,0xF0,0x01,0x00,0x1F,0x00,0x00,0x80,0x00,0xF0,0x01,0x00,0x3F,0x00,0x00,0xC0,0x00,0xF8,0x00,0x00,0x7E,0x00,0x00,0xE0,0x00,0xF8,0x00,0x00,0x7E,0xE0,0xFF,0xFF,0x00,0x78,0x00,0x00,0x7C,0xC0,0xFF,0xFF,
0x00,0x7C,0x00,0x00,0x7C,0x80,0x01,0xE0,0x00,0x7C,0x00,0x00,0x7C,0x00,0x00,0xE0,0x00,0x3C,0x00,0x01,0x38,0x00,0x00,0xE0,0x00,0x3E,0x00,0x07,0x38,0x00,0x00,0xE0,0x00,0x1E,0x00,0x1F,0x18,0x00,0x00,0xE0,0x00,0x1F,0x00,0x7F,0x00,0x00,0x00,0xE0,0x00,0x0F,0x00,0x3F,0x00,0x00,0x00,0xE0,0x00,0x0F,0x00,0x1F,0x00,0x00,0x00,0xE0,
0x80,0x1F,0x00,0x1F,0x00,0x00,0x00,0xE0,0x80,0x3F,0x00,0x1F,0x00,0x00,0x00,0xE0,0xC0,0xFF,0x00,0x1F,0x00,0x00,0x00,0xE0,0xC0,0x7F,0x00,0x1F,0x00,0x00,0x00,0xE0,0xE0,0x3D,0x00,0x1F,0x00,0x00,0x00,0xE0,0xE0,0x3D,0x00,0x1F,0x00,0x00,0x00,0xE0,0xF0,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0xF0,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,
0x78,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x38,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x3C,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x1C,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x0E,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x06,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x07,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x03,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,
0x01,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,
0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,
0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,
0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xE0,0x00,0x3C,0x00,0x1F,0x00,0x00,0x00,0xF0,0x00,0x3C,0x00,0x1F,0x00,0x80,0x3F,0xF8,0x00,0x3C,0x00,0x1F,0x00,0x00,0xFE,0xFF,0x00,0x3E,0x00,0x1F,0x00,0x00,0xF0,0xFF,0x00,0x3E,0x00,0x1F,0x00,0x00,0xC0,0xFF,/*"们",1*/
};
void setup(void) {
u8g2.begin();
u8g2.enableUTF8Print(); // enable UTF8 support for the Arduino print() function
}
void loop(void) {
u8g2.setFont(u8g2_font_unifont_t_chinese2); // use chinese2 for all the glyphs of "你好世界"
//u8g2.setFont(u8g2_font_b10_t_japanese1); // all the glyphs of "こんにちは世界" are already included in japanese1: Lerning Level 1-6
u8g2.setFontDirection(0);
u8g2.firstPage();
do {
u8g2.setCursor(0, 15);
u8g2.print("Hello World!");
u8g2.setCursor(0, 40);
u8g2.print("你好世界"); // Chinese "Hello World"
//u8g2.print("こんにちは世界"); // Japanese "Hello World"
} while ( u8g2.nextPage() );
delay(2000);
do {
u8g2.clearBuffer();
u8g2.drawXBMP(0,0,64,64,img1);
u8g2.drawXBMP(64,0,64,64,img2);
} while ( u8g2.nextPage() );
delay(5000);
}Loading
esp32-s3-devkitc-1
esp32-s3-devkitc-1