Arduino U8g2库渲染中文两种方式
1.全屏渲染
#include <Arduino.h>
#include <U8g2lib.h>
//定义全局渲染模式
U8G2_SSD1306_128X64_NONAME_F_HW_I2C u8g2(U8G2_R0, /* reset=*/U8X8_PIN_NONE);
void setup(void)
{
//初始化OLED对象
u8g2.begin();
//开启字符支持
u8g2.enableUTF8Print();
}
void loop(void)
{
//设置字体
u8g2.setFont(u8g2_font_unifont_t_chinese2);
u8g2.setFontDirection(0);
//清除缓存
u8g2.clearBuffer();
//设置光标位置
u8g2.setCursor(0, 30);
u8g2.print(" 你好啊");
//发送缓存区内容
u8g2.sendBuffer();
delay(1000);
}
2.局部渲染模式(完成进度条效果)
#include <Arduino.h>
#include <U8g2lib.h>
U8G2_SSD1306_128X64_NONAME_1_HW_I2C u8g2(U8G2_R0, /* reset=*/U8X8_PIN_NONE);
int num=1;
void setup(void)
{
//初始化OLED对象
u8g2.begin();
//开启字符支持
u8g2.enableUTF8Print();
}
void loop(void)
{
u8g2.firstPage();
do{
//设置外边框
u8g2.drawFrame(0,42,128,20);
//设置内边框
u8g2.drawBox(5,45,num,15);
}while (u8g2.nextPage());
if(num<128){
num=num+1;
}else
{
num=1;
}
}