|
一、汉字取模工具 嵌入式LCD屏显示无非就是不间断刷新LCD宽度*LCD高度的像素矩阵,并为每个像素指定特定颜色。对于LCD屏幕显示汉字,无非就是将字体形状转换为字体宽度*字体高度的像素矩阵,及指定每个字体像素的颜色,然后在LCD屏幕指定位置按字体宽度*字体高度的像素矩阵进行刷新渲染。% H# z1 \- X. G0 n2 k/ Z: {6 p0 z ) q( Y8 A5 |9 I1 j 汉字取模工具可以设置汉字显示的行、列像素大小,设置字体类型等信息,将输入的每个字符转换成指定行宽、列宽的二进制矩阵,在该矩阵中,字体覆盖区域采用1标记、字体不覆盖区域采用0标记。 二、汉字取模配置# M$ U+ p3 Q/ O) M9 _7 S6 A 我们双击LcmZimo.exe打开,取模工具界面如下,红框部分是字体相关参数设置,篮框部分是图片参数设置(通常用于各种艺术字体、图片像素等): / G, V# h% Q6 c
- N- h3 @# W2 D# _$ h" x 现在来制作24*24矩阵的“嵌入式开发测试!”的字体编码表,如下图进行设置。 : z8 U4 n, z) z+ ^6 `) ?, k/ ^1 z- d3 Y
/ L9 G. j3 h9 J4 A 最终得到字符编码表: 6 r) [! e* O0 y- @" p
7 R% W8 C8 f1 P3 F" ~9 `: w* \ 点击保存,将字符编码表输出为头文件“pytest.h”,如下图: # Y) \+ O6 s: }* H3 a# x1 u# F
" f! o; H0 r" v. j2 D: g M0 k" v# k( i2 x0 b: @ 三、创建工程 本文基于STM32L496VGT3的MCU创建一个新工程,并提前实现了lpusart串口驱动、三个按键及三个LED灯驱动、以及OLED屏幕驱动(SPI引脚) 假定已经实现了这些基本功能,在此基础上实现OLED屏幕显示刚刚定义汉字“嵌入式开发测试!”。- h8 u* S6 C; N/ w 四、汉字LCD显示设计 将刚才取模软件保存输出的pytest.h头文件拷贝到ICore/oled目录下,本文对pytest.h做了细微调整(去除一些不规范编程告警,不调整无影响): % S1 w8 d T( G! l: x
) Y& [& h. {! V 取模软件针对每个字符输出了一个72字节的8bit的数值,也就是72字节*8bit=576bit=24*24像素,目前该字符编码在取模软件上设置是横向取模左高位,数据排列:从左到右从上到下,就意味着,每3个字节*8bit=24bit表示一行的像素,如前三个字符0X00 0X18 0X00->0000 0000 0001 1000 0000 0000,作为“嵌”字第一行像素标记,位数值为1的填充前景色,为0的填充背景色。具体代码如下:/ T5 T7 K1 Y% D4 D/ \
上述代码中,每个汉字72字节编码表,3个字节表示一行(列宽3*8bit=24),共24行(72字节/3=24),构成24*24的二进制矩阵,然后根据该二进制矩阵,为1的给与前景色,为0的给与背景色,从而得到24*24的颜色矩阵,然后在渲染时在24*24像素的LCD区域渲染对应的颜色,形成屏幕显示输出。 然后逐个字符绘制输出,完成前面输入字段“嵌入式开发测试!”的全部输出:
五、汉字输出测试 在主循环函数中,按键KEY0时,屏幕输出显示“嵌入式开发测试!”字段:) x. o& Y3 J# U2 b; N ?4 k
编译及下载:* k) O# Y( j% n3 C# Y
+ J- }' t. K C: \' | 按键KEY0,屏幕输出显示如下:. J$ h+ p1 b6 y3 r* p. ]% V $ P( m, H6 o) p4 C
% ]; Q$ E- w# ~7 c' o* Z* O ———————————————— 版权声明:py_free-物联智能5 {$ t. ?& @ p! N- e 如有侵权请联系删除 ( v8 Y6 S7 X1 k 6 X' N6 p% q1 x7 B$ z |
【STM32H5 评测】基础硬件加密与随机数性能 - STM32H5E5实测硬件AES加解密、HASH运算、TRNG真随机数输出速率与稳定性
【STM32H5 评测】内存读写性能 - STM32H5E5实测Flash,SRAM读写速度,用DMA搬运大块数据
【STM32H5 评测】CPU核心性能 - STM32H5E5跑 RTOS,观察任务切换速度、中断响应快慢
【NUCLEO-C562RE】OLED 显示
保姆级教程:CMake 工程导入 STM32CubeIDE 步骤
STM32CubeCLT 1.22.0新版本发布
【下载问题解决】关于ST官网下载软件问题解决
【STM32H735G-DK测评】lvgl移植
【STM32H735G-DK 测评】STM32H735G-DK External Loder 编译和测试
《MCUBoot课程》学习笔记+从信任链原理到量产实践
微信公众号
手机版