OLED之U8g2中文库使用

OLED之U8g2中文库使用

  • 前言
  • 一、准备文件
    • 1、中文字体文件
    • 2、U8g2源码
    • 3、GUITool字体生成工具
  • 二、使用步骤
    • 1.准备.map文件
    • 2.生成.bpf字库文件
    • 3.准备.bat批处理文件
    • 4.代码中使用
  • 总结


前言

最近有项目用到OLED显示屏,然后经过选择采用了U8g2的图形库。

硬件平台: STM32Fxxx + OLED(SSD1306)
驱动库:U8g2

提示:以下是本篇文章正文内容,下面案例可供参考

一、准备文件

开始之前先新建一个文件夹所有的文件都在这文件夹中操作,我这里新建一个font,名字随意。
OLED之U8g2中文库使用_第1张图片

1、中文字体文件

本地字体文件路径: C:\Windows\Fonts,如果想要其他酷炫的字体可以网上下载。然后将字体文件放入刚刚新建的font文件夹中
OLED之U8g2中文库使用_第2张图片 OLED之U8g2中文库使用_第3张图片

2、U8g2源码

下载U8g2的源码:GitHub上下载, 点击这里下载。

OLED之U8g2中文库使用_第4张图片之后解压,后面备用
OLED之U8g2中文库使用_第5张图片

3、GUITool字体生成工具

下载GUITool工具: 点击这里下载。

二、使用步骤

1.准备.map文件

汉字转Unicode在线转换,将需要显示的汉字转换成Unicode
点击这里

OLED之U8g2中文库使用_第6张图片然后修改成下面的格式,
OLED之U8g2中文库使用_第7张图片
32-128表示ASCII字符范围,然后另存为一个.map文件格式,这里我保存为
u8g2_myfont_chinese.map

OLED之U8g2中文库使用_第8张图片

2.生成.bpf字库文件

打开字体工具
OLED之U8g2中文库使用_第9张图片选中准备好的字体文件,生成字库
OLED之U8g2中文库使用_第10张图片

3.准备.bat批处理文件

将bdfconv.exe从U8g2的源码拷贝到自己创建的文件夹中
OLED之U8g2中文库使用_第11张图片
OLED之U8g2中文库使用_第12张图片新建一个conv.bat批处理文件,名称随意

bdfconv.exe -v -b 0 -f 1 simhei_U16.bdf -M u8g2_myfont_chinese.map -n u8g2_myfont_chinese -o u8g2_myfont_chinese.c -d simhei_U16.bdf

OLED之U8g2中文库使用_第13张图片
OLED之U8g2中文库使用_第14张图片

4.代码中使用

由于U8g2_fonts.c内容太多我们就不添加自己的字体文件进去,我们直接将生成的字体文件添加进工程,同时.h文件不要忘记包含 #include “u8g2.h”,否则编译不过。
OLED之U8g2中文库使用_第15张图片

另外,函数使用u8g2_DrawUTF8时由于编码的原因,我的keil里需要在中文字符串后面加一个空格,否则显示不正常,编译也会报错。

u8g2_DrawUTF8(u8g2,16,25,"电子技术有限公司 ");//

OLED之U8g2中文库使用_第16张图片

总结

例如:以上就是今天要讲的内容,本文仅仅简单介绍了U8g2中文字库的使用,希望各位看官点赞关注一波。

你可能感兴趣的:(嵌入式,stm32CubeMx,单片机,stm32,嵌入式硬件,OLED,U8g2)