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中文字库的使用,希望各位看官点赞关注一波。
OLED之U8g2中文库使用相关推荐
- STM32使用OLED移植U8g2库
STM32使用OLED移植U8g2库 STM32CubeMX配置 硬件 STM32F103C8T6 I2C通信OLED 128*64 软件 System Core->RCC->HSE-&g ...
- esp32使用MicroPython驱动oled屏显示中文和英文
文章目录 esp32使用MicroPython驱动oled屏显示中文和英文 介绍 安装 特点 开源 硬件连接 API 示例 显示英文字符 显示汉字 参考链接 esp32使用MicroPython驱动o ...
- micropython oled中文_micropython中怎么将gb2312编码的字节流变成中文
展开全部 # -*- code: utf-8 -*- # 在 micropython 中运行, 注意在运行目录下有 hzk12/16 # '啊' 是汉字区第1个汉字,62616964757a68696 ...
- Arduino Uno 驱动OLED进阶 显示中英文字
之前已经学会如何接线,实现示例显示 这次就开始一些实际的应用 本示例还是使用IIC的接线方法,请参照第一篇 Arduino 驱动OLED屏幕IIC接线方式简单入门 实现文字的显示 这代码上实现在指定的 ...
- word2vec训练中文模型—wiki百科中文库
ps:整理电脑文档,将之前的做的word2vec训练的中文模型实验记录做下poko,欢迎交流学习. 1.准备数据与预处理 注意事项:请将内存最好选择8g及以上的电脑,否则可能卡顿,并在开始时候安装好p ...
- 玩转OLED,U8g2动画,增长数字和随机三角形等
1.动态数字显示 从逻辑上来说,就是绘制一个实心方块,遮挡上一次绘制的内容,然后再绘制这一次的. //动画数字效果 void dynamicNum(int x, int y, int num) {in ...
- 玩转u8g2 OLED库,一篇就够
1.前言 最近博主听到QQ群里面问得比较多的问题: "博哥,有玩过OLED吗?" "博哥,有试过在ESP8266上调成功过SSD1306吗?&qu ...
- esp32 Arduino(九)u8g2图形库 IIC驱动OLED
一.简介: LED驱动芯片:SSD1306 开发平台: vscode+platformIO 开发板:ESP32 Divkit v1 目前Arduino平台上使用最广泛的OLED库: U8G2 gith ...
- 玩转 ESP32 + Arduino (八) U8G2驱动OLED
OLED驱动芯片:SSD1306 开发平台: vscode+platformIO 开发板:ESP32 Divkit v1 目前Arduino平台上使用最广泛的OLED库: U8G2 github地址: ...
- 【arduino】【u8g2库】OLED屏-U8glib库 增强版 U8G2库
转载请注明: 冬菇不败 及出处 :http://www.arduino.cn/thread-41193-1-1.html 以下的函数描述是源自原文: https://github.com/oli ...
最新文章
- 使用early stopping解决神经网络过拟合问题
- 如何向数据库添加时同时返回ID
- 每天一道LeetCode-----将间隔集中有重叠的间隔合并
- 02.1-元素定位(find)
- 简述php语言的特点是_PHP语言有哪些优势和特点(一)
- 服务器拒绝mac访问共享文件,Mac共享文件连接失败怎么办?Mac无法访问打开共享文件解决方法...
- 字体引起的用户密码错误
- 两个对象值相同(x.equals(y) == true),但却可有不同的hashCode,这句话对不对?
- 如何在第三方平台或系统中引入外源邮箱:126邮箱、QQ邮箱
- Unrecognized Windows Sockets error: 10106: create解决方案
- 蛙蛙推荐:一个程序员2012年技术学习总结 - 蛙蛙王子 - 博客园
- 设计模式与软考试题之职责链模式
- 移动应用测试---安居客
- 编程基础知识(变简单的进制转换)
- Vue+ElementUI中 el-dialog弹框蒙层问题
- ICO泡沫破灭,是马甲的脱落,区块链技术本源回归
- 我的十年编程路 2017年篇
- 腾讯内核java调用,taip: TAIP是调用腾讯AI的Java客户端,为调用腾讯AI功能的开发人员提供了一系列的交互方法。...
- resnet50过拟合处理
- 火狐弹窗漏洞 11 年仍未修复;谷歌被指将合规网站标记为恶意