通用型打印驱动模块转让专利

申请号 : CN200910111404.7

文献号 : CN101554804B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 叶华峰袁金颖江健琦陈帆洪金枝

申请人 : 福建实达电脑设备有限公司

摘要 :

本发明涉及一种通用型打印驱动模块,包括打印API模块、字符点阵解析模块及机芯驱动模块,其特征在于:所述的打印API模块提供与具体硬件平台无关的应用程序接口,根据系统应用程序的需求,对下层字符点阵解析模块和机芯驱动模块提供的函数,封装成各种实现具体功能的打印API;所述的字符点阵解析模块将打印操作和走纸操作转换为通用型点阵信息单元GDU,提供给机芯驱动模块使用;所述的机芯驱动模块接收字符点阵解析模块输出的通用型点阵信息单元GDU,控制打印机芯完成打印操作。本发明采用模块化设计,为今后的产品升级提供了良好的接口环境,而且大大提高了打印速度,具有较高的实用价值。

权利要求 :

1.一种通用型打印驱动模块,包括打印API模块、字符点阵解析模块及机芯驱动模块,其特征在于:所述的打印API模块提供与具体硬件平台无关的应用程序接口,根据系统应用程序的需求,对下层字符点阵解析模块和机芯驱动模块提供的函数,封装成各种实现具体功能的打印API;所述的字符点阵解析模块将打印操作和走纸操作转换为通用型点阵信息单元(GDU),提供给机芯驱动模块使用;所述的机芯驱动模块接收字符点阵解析模块输出的通用型点阵信息单元(GDU),控制打印机芯完成打印操作;

所述的通用型点阵信息单元(GDU)包括走纸操作的通用型点阵单元(GFDU)和打印操作的通用型点阵单元(GPDU);在通用型点阵信息单元(GDU)形成后,所述的字符点阵解析模块会将连续的走纸操作的通用型点阵单元(GFDU)进行合并,以及相邻的打印操作的通用型点阵单元(GPDU)和走纸操作的通用型点阵单元(GFDU)进行合并;

所述的通用型点阵信息单元(GDU)的格式具有以下特征,包括:一点阵数,表示该行需要打印的点阵数;

一点阵数据,表示该行打印的点阵内容;

走纸量,表示该行打印完的走纸步数;

所述的机芯驱动模块的机芯驱动控制流程包括以下几个步骤;

(1)通用型点阵信息单元(GDU)打印,检查点阵数是否为0,不是的话,打印;

(2)点阵数为0的话,继续检查走纸量是否为0,不是的话,走纸;

(3)走纸量为0的话,结束通用型点阵信息单元(GDU)打印。

2.根据权利要求1所述的通用型打印驱动模块,其特征在于:所述的字符点阵解析模块包括:取字符点阵子模块,实现根据输入字符内码从储存器获取该字符的点阵;

点阵旋转子模块,实现对点阵旋转功能;

点阵扩展子模块,实现点阵放大功能。

3.根据权利要求2所述的通用型打印驱动模块,其特征在于:所述的旋转功能包括90度、180度和270度点阵旋转。

说明书 :

通用型打印驱动模块

技术领域

[0001] 本发明涉及打印机驱动程序领域,特别是一种适用于微型针式打印机和微型热敏打印机的驱动程序。

背景技术

[0002] 目前微型打印机被广泛应用于各种场合,打印各种单据、发票、凭条等。微型针打和热敏打印机是最常见的。针打和热敏机芯的工作原理的差异,导致两种机芯的打印驱动程序差别比较大,使得针打驱动和热敏驱动分别设计,而且驱动程序一般采用非模块的设计方案,驱动的扩展性很差,一旦驱动需要增加其他机芯,往往需要重新编写程序代码,然后进行大量调试。打印速度是打印机一个重要性能,实际打印速度往往无法达到理论打印速度。对于机芯来说打印过程其实就只有两种操作:纯走纸(Feed)和纯打印(Print)。微打驱动往往将走纸和打印操作的控制分别独立,即驱动后台有两个独立的控制流程,见图1。两个控制流程不能相互嵌套,走操作结束后才能进行打印操作,或者打印操作结束后才能进行走纸操作。在打印过程中,走纸电机工作状态变化是:停止-加速-匀速-减速-停止。由于走纸电机存在停止、加速和减速的过程,使得走纸电机平均速度无法达到理论最大走纸速度,而走纸电机的速度决定了打印速度,导致打印速度小于理论打印速度。

发明内容

[0003] 本发明的目的是提供一种通用型打印驱动模块,采用模块化设计,不仅为今后的产品升级提供了良好的接口环境,而且大大提高了打印速度,具有较高的实用价值。
[0004] 本发明是这样是实现的,一种通用型打印驱动模块,包括打印API模块、字符点阵解析模块及机芯驱动模块,其特征在于:所述的打印API模块提供与具体硬件平台无关的应用程序接口,根据系统应用程序的需求,对下层字符点阵解析模块和机芯驱动模块提供的函数,封装成各种实现具体功能的打印API;所述的字符点阵解析模块将打印操作和走纸操作转换为通用型点阵信息单元GDU,提供给机芯驱动模块使用;所述的机芯驱动模块接收字符点阵解析模块输出的通用型点阵信息单元GDU,控制打印机芯完成打印操作。
[0005] 所述的通用型点阵信息单元GDU包括走纸操作的通用型点阵单元GFDU和打印操作的通用型点阵单元GPDU;在通用型点阵信息单元GDU形成后,
[0006] 所述的字符点阵解析模块会将连续的GFDU进行合并,以及相邻的GPDU和GFDU进行合并;
[0007] 所述的通用型点阵信息单元GDU的格式具有以下特征,包括:
[0008] 一点阵数,表示该行需要打印的点阵数;
[0009] 一点阵数据,表示该行打印的点阵内容;
[0010] 走纸量,表示该行打印完的走纸步数;
[0011] 所述的机芯驱动模块的机芯驱动控制流程包括以下几个步骤;
[0012] (1)通用型点阵信息单元GDU打印,检查点阵数是否为0,不是的话,打印;
[0013] (2)点阵数为0的话,继续检查走纸量是否为0,不是的话,走纸;
[0014] (3)走纸量为0的话,结束通用型点阵信息单元GDU打印。
[0015] 本发明采用模块化设计的打印驱动,对驱动的开发、升级和维护带来了便利:(1)如果要增加新的打印字体,只要单独字符点阵解析模块,不影响其它两个模块;(2)如果要增加新的机芯驱动,只要独立开发一个机芯驱动模块,然后加入底层机芯模块即可。(3)打印API屏蔽了打印驱动升级对应用程序的影响。

附图说明

[0016] 图1是现有打印机驱动控制流程图。
[0017] 图2是本发明实施例的结构原理框图。
[0018] 图3是本发明实施例的机芯控制流程图。
[0019] 图4是传统打印驱动走纸电机控制方法及本发明电机控制方法时序图。

具体实施方式

[0020] 下面结合附图及实施例对本发明做进一步描述。
[0021] 如图2所示,本发明提供一种通用型打印驱动模块,将工作原理差别很大的各种针式打印机和热敏打印机驱动统一整合成一套驱动,具体包括打印API模块、字符点阵解析模块及机芯驱动模块,其特征在于:所述的打印API模块(Print API Modules,PAM)提供与具体硬件平台无关的应用程序接口,其主要功能是对下层设备驱动程序进行封装。其根据应用程序的需求,将字符点阵解析驱动和机芯驱动提供的函数封装成各种实现具体功能的打印API,例如:字符打印、图像打印、进纸等。
[0022] 所述的字符点阵解析模块(Dot Convert Modules,DCM),可分为3个子模块:取字符点阵子模块,实现根据输入字符内码从储存器获取该字符的点阵;点阵旋转子模块,实现对点阵旋转功能,可以支持90度、180度和270度点阵旋转;点阵扩展子模块实现点阵放大功能,可以支持多种倍宽、倍高、倍宽倍高字体。该字符点阵解析模块将打印操作和走纸操作,转换为通用型点阵信息单元(General Dot Unit,GDU),提供给机芯驱动模块使用。所述的通用型点阵信息单元格式:
[0023]
[0024] 点阵数(DotNum):表示该行需要打印的点阵数;点阵数据(DotData):表示该行打印的点阵内容;走纸量(Steps):表示该行打印完的走纸步数。
[0025] 走纸操作(Feed)的通用型点阵单元(General FeedDot Unit,GFDU)格式:DotNum=0,DotData任意,Steps=走纸量;
[0026] 打印操作(Print)的通用型点阵单元(General PrintDot Unit,GPDU)格式:DotNum=N,DotData为点阵内容,Steps=走纸量。
[0027] 在通用型点阵信息单元GDU形成后,所述的字符点阵解析模块会将连续的GFDU进行合并,以及相邻的GPDU和GFDU进行合并。因此打印过程的各种走纸和打印操作,最后转换成一个项数最少GDU列表,再提供给机芯驱动模块。
[0028] 所述的机芯驱动模块(Printer Driver Modules,PDM)接收字符点阵解析模块输出通用型点阵信息单元GDU,控制打印机芯完成打印操作。采用统一格式的GDU后,开发机芯驱动变得很简单,单步进针打、双步进针打、热敏微打等机芯驱动中仅仅是根据GDU控制机芯出针(或加热)和电机时序,实现打印功能。驱动控制流程如图3所示,其包括以下几个步骤;
[0029] (1)通用型点阵信息单元GDU打印,检查点阵数是否为0,不是的话,打印;
[0030] (2)点阵数为0的话,继续检查走纸量是否为0,不是的话,走纸;
[0031] (3)走纸量为0的话,结束通用型点阵信息单元GDU打印。
[0032] 综上所述,本发明的特点是将机芯走纸操作转换成为打印操作,简化了驱动控制流程,由于打印过程走纸电机采用最优化的控制时序,减少了停止、加速、减速、慢速的状态切换的次数,提高了走纸电机的平均速度,自然提高了打印速度,如图4所示,走纸1、走纸2和打印1操作合并成GDU1,打印2和走纸3合并成GDU2。传统打印驱动执行图4所示操作,走纸电机需要6个停止阶段,3个加速阶段,3个减速阶段,3个匀速阶段,1个慢速阶段;
而采用通用型打印驱动后,走纸电机仅仅需要3个停止阶段,2个加速阶段,2个减速阶段,
2个匀速阶段,从而大大提高了走纸电机的速度。此外采用模块化设计思想,降低了各个模块的耦合度,使得驱动的多个模块之间可以实现水平开发,不仅加快开发进度也节省了开发成本。
[0033] 以上所述仅为本发明的较佳实施例,凡依本发明申请专利范围所做的均等变化与修饰,皆应属本发明的涵盖范围。