OLED上使用U8g2中文库的指南

OLED之U8g2中文库使用

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

  • 前言

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

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

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

    一、准备文件

    开始之前先新建一个文件夹所有的文件都在这文件夹中操作,我这里新建一个font,名字随意。

    1、中文字体文件

    本地字体文件路径: C:\Windows\Fonts,如果想要其他酷炫的字体可以网上下载。然后将字体文件放入刚刚新建的font文件夹中

    2、U8g2源码

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

    之后解压,后面备用

    3、GUITool字体生成工具

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

    二、使用步骤

    1.准备.map文件

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

    然后修改成下面的格式,

    32-128表示ASCII字符范围,然后另存为一个.map文件格式,这里我保存为
    u8g2_myfont_chinese.map

    2.生成.bpf字库文件

    打开字体工具
    选中准备好的字体文件,生成字库

    3.准备.bat批处理文件

    将bdfconv.exe从U8g2的源码拷贝到自己创建的文件夹中

    新建一个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
    


    4.代码中使用

    由于U8g2_fonts.c内容太多我们就不添加自己的字体文件进去,我们直接将生成的字体文件添加进工程,同时.h文件不要忘记包含 #include “u8g2.h”,否则编译不过。

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

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

    总结

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

    物联沃分享整理
    物联沃-IOTWORD物联网 » OLED上使用U8g2中文库的指南

    发表回复