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中文字库的使用,希望各位看官点赞关注一波。

OLED之U8g2中文库使用相关推荐

  1. STM32使用OLED移植U8g2库

    STM32使用OLED移植U8g2库 STM32CubeMX配置 硬件 STM32F103C8T6 I2C通信OLED 128*64 软件 System Core->RCC->HSE-&g ...

  2. esp32使用MicroPython驱动oled屏显示中文和英文

    文章目录 esp32使用MicroPython驱动oled屏显示中文和英文 介绍 安装 特点 开源 硬件连接 API 示例 显示英文字符 显示汉字 参考链接 esp32使用MicroPython驱动o ...

  3. micropython oled中文_micropython中怎么将gb2312编码的字节流变成中文

    展开全部 # -*- code: utf-8 -*- # 在 micropython 中运行, 注意在运行目录下有 hzk12/16 # '啊' 是汉字区第1个汉字,62616964757a68696 ...

  4. Arduino Uno 驱动OLED进阶 显示中英文字

    之前已经学会如何接线,实现示例显示 这次就开始一些实际的应用 本示例还是使用IIC的接线方法,请参照第一篇 Arduino 驱动OLED屏幕IIC接线方式简单入门 实现文字的显示 这代码上实现在指定的 ...

  5. word2vec训练中文模型—wiki百科中文库

    ps:整理电脑文档,将之前的做的word2vec训练的中文模型实验记录做下poko,欢迎交流学习. 1.准备数据与预处理 注意事项:请将内存最好选择8g及以上的电脑,否则可能卡顿,并在开始时候安装好p ...

  6. 玩转OLED,U8g2动画,增长数字和随机三角形等

    1.动态数字显示 从逻辑上来说,就是绘制一个实心方块,遮挡上一次绘制的内容,然后再绘制这一次的. //动画数字效果 void dynamicNum(int x, int y, int num) {in ...

  7. 玩转u8g2 OLED库,一篇就够

    1.前言     最近博主听到QQ群里面问得比较多的问题:     "博哥,有玩过OLED吗?"     "博哥,有试过在ESP8266上调成功过SSD1306吗?&qu ...

  8. esp32 Arduino(九)u8g2图形库 IIC驱动OLED

    一.简介: LED驱动芯片:SSD1306 开发平台: vscode+platformIO 开发板:ESP32 Divkit v1 目前Arduino平台上使用最广泛的OLED库: U8G2 gith ...

  9. 玩转 ESP32 + Arduino (八) U8G2驱动OLED

    OLED驱动芯片:SSD1306 开发平台: vscode+platformIO 开发板:ESP32 Divkit v1 目前Arduino平台上使用最广泛的OLED库: U8G2 github地址: ...

  10. 【arduino】【u8g2库】OLED屏-U8glib库 增强版 U8G2库

    转载请注明:  冬菇不败   及出处 :http://www.arduino.cn/thread-41193-1-1.html 以下的函数描述是源自原文: https://github.com/oli ...

最新文章

  1. 使用early stopping解决神经网络过拟合问题
  2. 如何向数据库添加时同时返回ID
  3. 每天一道LeetCode-----将间隔集中有重叠的间隔合并
  4. 02.1-元素定位(find)
  5. 简述php语言的特点是_PHP语言有哪些优势和特点(一)
  6. 服务器拒绝mac访问共享文件,Mac共享文件连接失败怎么办?Mac无法访问打开共享文件解决方法...
  7. 字体引起的用户密码错误
  8. 两个对象值相同(x.equals(y) == true),但却可有不同的hashCode,这句话对不对?
  9. 如何在第三方平台或系统中引入外源邮箱:126邮箱、QQ邮箱
  10. Unrecognized Windows Sockets error: 10106: create解决方案
  11. 蛙蛙推荐:一个程序员2012年技术学习总结 - 蛙蛙王子 - 博客园
  12. 设计模式与软考试题之职责链模式
  13. 移动应用测试---安居客
  14. 编程基础知识(变简单的进制转换)
  15. Vue+ElementUI中 el-dialog弹框蒙层问题
  16. ICO泡沫破灭,是马甲的脱落,区块链技术本源回归
  17. 我的十年编程路 2017年篇
  18. 腾讯内核java调用,taip: TAIP是调用腾讯AI的Java客户端,为调用腾讯AI功能的开发人员提供了一系列的交互方法。...
  19. resnet50过拟合处理
  20. 火狐弹窗漏洞 11 年仍未修复;谷歌被指将合规网站标记为恶意

热门文章

  1. IPX 、 IPEX 、 UFL连接器
  2. HTML Typo.css 中文网页重设与排版
  3. FAI自动部署debian
  4. 学习Nginx这一篇就够了(非本人原创文章)
  5. 科大讯飞18岁成人礼:这家极客公司未来不设限
  6. 数据库MySQL入门-下
  7. 独孤木专栏Delayed Project(中)
  8. 给定一个 n X n 的矩阵,求它的转置矩阵
  9. “黎明”号新任务继续“锁定”谷神星
  10. strut-控制器ActionServlet类详解