一种分页式lcd的显示方法

文档序号:8473778阅读:601来源:国知局
一种分页式lcd的显示方法
【技术领域】
[0001]本发明涉及液晶显示领域,尤其涉及一种分页式IXD的显示方法。
【背景技术】
[0002]分页式IXD纵向每8个点阵为一个IXD页,例如,一个分页式IXD的大小为128*64点,则该分页式LCD每个LCD页的大小为128*8点。现有技术中分页式LCD通常只能显示纵向所占点数为8的整数倍的字体,可以显示的字体的大小和样式较为单一。目前解决上述问题的方法是,在内存中定义一块显存,显存的大小等于甚至大于分页式LCD的大小,当需要显示特殊字体(这里说的特殊字体指的是纵向所占点数不为8的整数倍的字体)时,相应改变显存中的数据,然后再把显存中的数据输出到分页式LCD上完成显示,但这个方法至少存在占用显存空间较大的缺陷。

【发明内容】

[0003]本发明的目的是克服现有技术的缺陷,提供一种分页式LCD的显示方法。
[0004]本发明方法是通过下述技术方案实现的:
[0005]一种分页式IXD的显示方法,包括初始化流程和显示流程;
[0006]所述初始化流程包括:根据第一参数确定涉及多行字符的LCD页,并为涉及多行字符的IXD页开辟第二显存;所述第一参数包括字符高度、IXD页高度和IXD总高度;
[0007]所述显示流程包括:根据第二参数和所述第一参数执行以下步骤,所述第二参数包括点阵数据、显示起始行、显示结束行、显示起始列和显示结束列:
[0008]步骤S1、开辟高度等于所述LCD页高度的缓存区,初始化当前行字符的起始行为所述显示起始行,初始化当前起始行为当前行字符的起始行,初始化当前结束行为当前起始行所在的LCD页的结束行;
[0009]步骤S2、判断是否存在与当前起始行和当前结束行所在的LCD页对应的第二显存,是则将所述点阵数据的当前起始行至当前结束行部分对应拷贝到所述第二显存,显示所述第二显存中的数据到LCD,执行步骤S3 ;否则将所述点阵数据的当前起始行至当前结束行部分对应拷贝到所述缓存区,显示所述缓存区中的数据到LCD,执行步骤S3 ;
[0010]步骤S3、更新当前起始行为当前结束行的下一行,将当前结束行递增所述LCD页高度,判断当前起始行和当前结束行是否位于同一 LCD页,是则执行步骤S4,否则将当前结束行更新为当前起始行所在的LCD页的结束行,执行步骤S4 ;
[0011]步骤S4、判断当前行字符是否显示完成,若显示完成则将当前行字符的起始行递增所述字符高度,执行步骤S5 ;若未显示完成则判断当前结束行是否超出了当前行字符的范围,若超出了则更新当前结束行为当前行字符的结束行,返回步骤S2,若未超出则直接返回步骤S2 ;
[0012]步骤S5、判断所有行字符是否均显示完成,是则结束,否则返回步骤S2。
[0013]进一步地,所述初始化流程还包括:记录开辟的第二显存对应的起始行和结束行;所述判断是否存在与当前起始行和当前结束行所在的LCD页对应的第二显存,具体包括:判断当前起始行和当前结束行是否同时落入任一第二显存对应的起始行和结束行的范围内,是则存在与当前起始行和当前结束行所在的LCD页对应的第二显存,否则不存在与当前起始行和当前结束行所在的LCD页对应的第二显存;
[0014]所述判断当前起始行和当前结束行是否位于同一 LCD页,可以具体包括:判断当前起始行除以所述LCD页高度所得的商,和当前结束行除以所述LCD页高度所得的商是否相等,是则当前起始行和当前结束行位于同一 LCD页,否则当前起始行和当前结束行不位于同一 LCD页;
[0015]所述判断当前结束行是否超出了当前行字符的范围,可以具体包括:判断当前结束行是否小于当前行字符的起始行与所述字符高度的和,是则当前结束行未超出当前行字符的范围,否则当前结束行超出了当前行字符的范围。
[0016]所述判断当前行字符是否显示完成,可以具体包括:判断当前起始行是否小于当前行字符的起始行与所述字符高度的和,是则当前行字符未显示完成,否则当前行字符显不完成;
[0017]所述判断所有行字符是否均显示完成,可以具体包括:判断当前行字符的起始行是否小于所述显示结束行,是则所有行字符未显示完成,否则所有行字符均显示完成;
[0018]所述第二参数中还包括取模方式;所述显示流程中,执行所述步骤S2之前还包括:判断所述取模方式是否与LCD的显示刷新方向一致,是则执行所述步骤S2 ;否则将所述点阵数据按照LCD的显示刷新方向重新组合,并将所述点阵数据更新为组合得到的数据后,执行所述步骤S2。
[0019]进一步地,所述根据第一参数确定涉及多行字符的LCD页,并为涉及多行字符的IXD页开辟第二显存,可以具体包括:
[0020]步骤al、设置当前初始化结束行等于所述字符高度;
[0021]步骤a2、判断当前初始化结束行是否超过所述LCD总高度,是则结束,否则执行步骤a3 ;
[0022]步骤a3、判断当前初始化结束行是否为所述LCD页高度的整数倍,是则执行步骤a4,否则为当前初始化结束行所在的LCD页开辟第二显存,执行步骤a4 ;
[0023]步骤a4、将当前初始化结束行递增所述字符高度,返回步骤a2 ;
[0024]更进一步地,所述初始化流程中,执行所述根据第一参数确定涉及多行字符的LCD页,并为涉及多行字符的LCD页开辟第二显存之前,还可以包括:检查所述字符高度和LCD页高度,若所述字符高度不为所述LCD页高度的整数倍,且所述字符高度大于所述LCD页高度,则顺序执行所述根据第一参数确定涉及多行字符的LCD页,并为涉及多行字符的LCD页开辟第二显存;
[0025]当所述字符高度不为所述LCD页高度的整数倍,且所述字符高度大于所述LCD页高度时,还可以包括:设置显示模式为第三模式;所述显示流程中,所述步骤Si之前还包括:步骤S0、检查显示模式,若显示模式为第三模式,则顺序执行所述步骤SI ;
[0026]所述初始化流程中还可以包括:若所述字符高度为所述LCD页高度的整数倍,则设置显示模式为第一模式;所述步骤SO中还包括:若显示模式为第一模式,则显示所述点阵数据到LCD ;
[0027]一方面,所述第二参数中还包括取模方式;所述显示流程中,执行所述显示所述点阵数据到LCD之前,还包括:判断所述取模方式是否与LCD的显示刷新方向一致,是则继续执行所述显示所述点阵数据到LCD ;否则将所述点阵数据按照所述LCD的显示刷新方向重新组合后显示到IXD ;
[0028]另一方面,所述第一参数还可以包括:IXD总宽度;所述初始化流程中还包括:若所述字符高度不为所述LCD页高度的整数倍,且所述字符高度小于所述LCD页高度,则设置显示模式为第二模式,并根据所述LCD总高度和LCD总宽度开辟相应大小的第一显存,所述第一显存中的数据与IXD上的点一一对应;所述步骤SO中还包括:若显示模式为第二模式,则拷贝所述点阵数据到所述第一显存,并将所述第一显存中与所述点阵数据所占的LCD页对应的数据的所述显示起始列至所述显示结束列部分显示到LCD ;
[0029]所述第二参数中还可以包括取模方式;所述显示流程中,执行所述拷贝所述点阵数据到所述第一显存之前,还包括:判断所述取模方式是否与LCD的显示刷新方向一致,是则继续执行所述拷贝所述点阵数据到所述第一显存;否则将所述点阵数据按照所述LCD的显示刷新方向重新组合后拷贝到所述第一显存,并将所述第一显存中与重新组合后的点阵数据所占的LCD页对应的数据的所述显示起始列至所述显示结束列部分显示到LCD。
[0030]本发明方法的有益效果在于占用较小的显存空间即可实现在IXD的显示范围内显示任意大小的字体。
【附图说明】
[0031]为了更清楚的说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032]图1为本发明实施例提供的一种分页式LCD的显示方法中的初始化流程图;
[0033]图2为初始化流程中开辟第二显存的具体流程图;
[0034]图3为本发明实施例提供的一种分页式LCD的显示方法中的显示流程图。
【具体实施方式】
[0035]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0036]实施例一
[0037]本发明实施例一提供一种分页式LCD的显示方法。所述方法包括初始化流程和显示流程两部分,其中:
[0038]初始化流程包括:根据第一参数确定涉及多行字符的LCD页,并为涉及多行字符的IXD页开辟第二显存;所述第一参数包括字符高度、IXD页高度和IXD总高度;
[0039]显示流程包括:根据第二参数和所述第一参数执行以下步骤,所述第二参数包括点阵数据、显示起始行、显示结束行、显示起始列和显示结束列:
[0040]步骤S1、开辟高度等于所述LCD页高度的缓存区,初始化当前行字符的起始行为所述显示起始行,初始化当前起始行为当前行字符的起始行,初始化当前结束行为当前起始行所在的页的结束行;<
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1