纵向取模需要自己倒叙吗_如何将文字或图形转成LCD上使用的C51字模数据之一…………文字取模...

本文介绍了如何使用取模软件将文字和图形转化为LCD12864显示的点阵数据,重点讲解了纵向取模、字节正序与倒序的概念,并通过实例说明了不同排列方式下的数据转换结果。
摘要由CSDN通过智能技术生成

这一讲说说如何用取模软件将图形转成数据吧,有很多人反复问我这个问题,我就再罗嗦下吧!

取字模的软件有很多款。有的只能将文字转成字模数据,有的既可将文本文字转字模也能将图片转成点阵数据。在这里我就介绍一款使用简单易用的,它能将文字或图形转成我们LCD模块使用的C51数据,其它的软件也大同小异。

界面很简单,左边是各种功能和设置修改栏,右边上半部分是显示你所工作的点阵图,右下部分是文字输入框和点阵数据查看框。

我们用它主要是想让它将文字或图形转成我们在LCD12864上显示的点阵数据。所以我就讲讲如何将文字和图形转成点阵数据。

点击左边功能栏里的“参数设置”,再点击“文字输入区字体选择”如下图。

我们选宋体,小五号字。小五号字就是12X12的点阵。然后在“文字输入区”里输入你想要转为字模的文字。例如“你好”

接着再在“参数设置”项里点击“其他选项”如下图:

在选项中你可以设定横向取模还是纵向取模,是字节正序还是字节倒序。

然后按住“CTRL”键的同时按“Enter”键。文字点阵就显示在左上部分的点阵图上了。如下图:

如果觉得字形不好看你还可以用鼠标在点阵图上修改,点左键画点,点右键擦除。

下面就要进行点阵的转换了。

选择左边功能项的“取模方式”,有C51和A51格式,根据你编程所使用的语言来选择,我是一般是用C语言来写,所以我点击“C51格式”

这时在右下区的点阵生成区内就显示出转换的字模数据。如图:

你可用复制、粘贴的方法直接将这些字模数据粘贴到你所要编写的程序中。也可以从左边功能选项的“基本操作”里的“保存点阵数据”来将字模数据保存成一个文本文件。

文字的取字模方法大致就是这样了。

但在转换之前首先要弄清几个问题。

1、数据字节与点阵的关系

我们的LCD12864是黑白显示的,没有灰度级。也就是说任意一个点只有两种状态,要么是白(不显示),要么是黑(黑色显示)。那么只要一位的数据就能表示出一个点,即0或1。那么一个字节的数据就能表示LCD屏上的8个点。所以一般LCD屏的宽和高的总点数都是8的倍数。例如128X64。

2、LCD屏上每个字节点的排列顺序

上面讲过一个字节的数据可以表示LCD上的8个点。也就是说将一个字节的数据送到LCD模块,它就能相应地显示8个点,但这8个点是如何排列的呢?不同的LCD模块对每字节8个点的排列是不同的。在LCD模块的产品说明书上会告诉你它的排列方式。例如,我前面讲的那种采用KS0108控制器的并口LCD12864,它的每字节点阵排列方式是竖(纵)向排列的。而我这篇前面讲的串行LCD12864采用ST7920控制器的模块就是按每字节横向排列的。

3、正序和倒序

另外还有一个正序和倒序的问题,通常我们一个字节的数据按二进制排列的话都是左边为高位A7,右边为低位A0,这就是正序。如果LCD的点阵与一个字节数据的排列顺序想反,左边最左边显示的是A0,右边显示A7,这就是倒序。竖向排列也一样,通常数据是上面为高位A7,下面为低位A0,是正序。如果LCD模块的点阵排列正好反了,就是竖向倒序。见下图:

下图是KS0108控制器的LCD竖向倒序排列:

下面是ST7920控制器的的横向正序排列:

对于一个具体的汉字点阵来说如下图:

先说横向取模:

下面我们来看看实际取模的数据:

果然是ox7B和0xC0,我们再来看看倒序的数据:

是0xDE和0x03吧!我这样说大家能理解取模原理了吗?

接下来我们说说纵向取模:

下面是实际纵向正序读模数(红圈里的就是第一、二字节):

下面是纵向倒序的字模数据(红圈里的是第一、第二字节):

其它字节数据可以根据此规律类推。

16×16点阵汉字也一样的:

实际获取的纵向正序字模数据为下图(红圈里的为上述三个字节数据):

实际读取的纵向倒序字模数据如下图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值