• 已解决 73482 个问题
  • 已帮助 5993 位优秀工程师

st7920控制的LCD12864打点法显示汉字

e5a2d2c663deaea5 2020-06-04 浏览量:935
请教各位大神,最近在玩st7920控制的LCD12864这个屏,有一些疑问,希望大神们带带小白:
用打点法显示自己想要的汉字,具体是怎么实现的啊?比如说,我现在可以任意位置打一个点了,然后我怎么实现我想要的汉字呢?
0 0 收起

我来回答

上传资料:
选择文件 文件大小不超过15M(格式支持:doc、ppt、xls、pdf、zip、rar、txt)
最佳答案
  • 首先,需要理解字符模块其实就是一个个显示具体字符的点阵图形这个概念

    这样,你能控制任意点显示时,其实就有了能显示任意图形的可能,而字符作为一种特殊的图形当然也可以显示啦。


    这样具体显示汉字就变成

    1. 获取对应汉字字模(点阵图形),比如是以左上角为0的一个图形,有固定的宽度w和高度h,组成一个w*h二进制位数组A,一般w=16,或者N*8bits,N大于等于2,高也是。这里把字符图形w占用的像素位计为W,并假定A是字模按行存储的,每行存储W位数据。

    2. 以某个位置为起始点(偏移点P0--(x0y0)),把汉字的图形显示出来,则对应字模图形显示关系为

    ( (x0+c)(y0+r) ) = A[r] & 0x1<<(W-c),这样就可以完成控制显示啦。

    • 发布于 2020-06-26
    • 举报
    • 评论 0
    • 0
    • 0

其他答案 数量:3
  • 可以参考画图功能实现,需要修改起始地址,每行写完要写到下一行地址,
    • 发布于2020-06-04
    • 举报
    • 评论 0
    • 0
    • 0

  • 打一个点和打多个点的方法是一样的,先算好显示那个字需要打哪几个点,然后一次性将打那几个点的命令送到ST7920
    • 发布于2020-06-07
    • 举报
    • 评论 0
    • 0
    • 0

  • 这种方式,写一个字,要很费时的,而且代码量很大,你不如生成字库,通过库显示汉字。

    你这种方式,就是把一个字分成多个点,显示的,太费时间与空间了

    • 发布于2020-06-18
    • 举报
    • 评论 0
    • 0
    • 0

相关问题

问题达人换一批

st7920控制的LCD12864打点法显示汉字