ESP32 Audino 驱动12864点阵屏 自定义中文字库
一.安装u8g2
#include <Arduino.h> #include <U8g2lib.h> U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/U8X8_PIN_NONE, /* clock=*/22, /* data=*/21); // ESP32 Thing, HW I2C with pin remapping 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 u8g2.firstPage(); do { u8g2.setCursor(0, 20); u8g2.print("helloworld"); // Chinese "Hello World" u8g2.setCursor(0, 40); u8g2.print("你好世界"); // Chinese "Hello World" } while (u8g2.nextPage()); delay(1000); }
二.解决部分中文无法显示问题
1.生成自定义字库
下载字库生成软件,解压后如下图,在python环境下,运行main.py
可根据需求输入字体路径
运行完毕后,在code文件下生成字库C文件,复制下图方框内的数据
2.替换字库数据
按下图路径打开u8g2_fonts.c,随便打开一个原有的字库数据,用上图的数据进行替换