你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

STM32L562DK探索板——初试显示汉字

[复制链接]
老牛洋车 发布时间:2026-7-23 12:22
在官方提供的BSP例程中,字符显示本身就有分别显示8、12、16、20和24点阵ASCII字符的函数,所以我就尝试利用官方现成的函数来显示有限的汉字。首先找到其字库文件,这些字库文件不是通常以.h标识的头文件,而是以.c为后缀的C文件,同样是通过include包含进来。分析了一个字符,了解到其结构是横向高位在前、从左到右、从上到下的结构,于是便在字模生成软件中生成了24*24点阵的几个汉字的字模。如何在程序中调用这几个汉字字模呢?思考后决定用最简单的办法,即用生成的三个“探索板”字模替换原字库末尾不常用的“{|}”三个字符:
0 R& B4 X/ B" I. p7 _) s Font1.png
7 p( x& ^$ G* y0 h6 V& e) m$ @. @/ J; L
然后在界面显示中添加代码,如下图:
( m! c/ u& F( Y+ t7 z, R, ?- y* }6 G8 S# `8 h; h, F9 d! U5 L# F9 @
Font2.png 7 S; J: N- Y8 o6 i6 ~& k

% r- K: D9 r* S# S8 L1 O0 K编译下载后发现显示效果不佳,汉字的后几列没有显示出来。仔细一看说明才知道其24点阵实际上只显示24*17点阵,后面的7列不显示(因为ASCII码显示宽高相同的话字型不美观)。  N  v0 Z0 O  M" I4 p* {( C% [

5 N/ ]( G( C3 U, B Font4.png
% `3 E# i$ s1 r9 x3 T7 t2 R% B8 \4 ~; t+ F6 R- Y# l
考虑到若修改显示函数的话太麻烦,只能修改字模才更方便些,于是只好回到字模生成软件里来修改字模:  D  M& I6 A. M* t
Font3.png
1 Z2 c* S3 ~7 \1 _* q* d  L% _/ Z$ D# T8 H4 [  e$ @+ J) A
字模修改完成后再编译下载,勉强可以显示出汉字了:
9 G# b  c% b; m  H# ^ Font6.jpg
8 U7 i6 X2 B2 b5 L+ ]& N  G5 ~+ R
' j9 |2 X, _; C3 j- G' q" r这个试验没有太多的实用价值,因为要增加显示的汉字就要对应减少原来的ASCII字符,所以显示汉字的数量杜极其有限。另外字模生成软件中没有24*17点阵的模板,全靠手工修改字模效率很低,不实用。下一步再添加对应的字符显示函数试试看。
/ S5 Z8 G! x. p: E/ p9 s" V. E# v( A9 `/ Z: l
Font5.png
收藏 评论0 发布时间:2026-7-23 12:22

举报

0个回答

所属标签

相似技术帖

官网相关资源

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
人形机器人运动控制、感知与智能配电
半导体创新技术与应用方向
EE架构与软件定义汽车
12V/48V 汽车智能配电(SPD)
区域控制单元(ZCU)与分区架构
关注我们
st-img 微信公众号
st-img 手机版