在该阶段打印机要根据已得到的数据进行相应的数据处理。
数据处理程序可看作是在打印机的CPU系统内部的一个内嵌解释程序,用于把计算机主机送过来的数据解释后让打印机做相应的响应。
所谓解释程序是高级语言翻译程序的一种(相对的另一种翻译程序是编译程序),它将源语言(如BASIC语言)书写的源程序作为输入,解释一句后就提交计算机执行一句,并不形成目标程序。就像外语翻译中的“口译”一样,说一句翻译一句,不产生全文的翻译文本。这种工作方式非常适合于人们通过终端设备与计算机会话,如在终端上打一条命令或语句,解释程序就立即将此语句解释成一条或几条指令并提交硬件立即执行且将执行结果反映到终端,从终端把命令打入后,就能立即得到计算结果。
但是数据处理程序相对比计算机系统中的解释程序要简单一点,少了很多高级语言需要的功能,比如不需要定义数据类型、基本没有复杂的数学运算和逻辑运算、没有复杂的判断、没有循环操作、没有函数、没有过程或子程序等。
对于数据处理程序,首先要把数据里面的打印命令筛选出来,根据这些命令对打印机进行预处理,做好相应命令的打印机状态和机能的设置,确定每行要打印字符或整行打印点阵的数量。然后从输入数据缓冲区中取出字符数据或位图像数据进行有关点阵数据的处理,即通常所说的按行处理,为字符代码或符号从字符ROM和符号ROM找出相应的字模的字形点阵信息,或者直接接受图像点阵信息。所有的数据处理过程都是在中间数据缓冲区中进行的,当一行打印数据处理完成时或在这一行数据的某个位置上出现表示回车的命令时,便将这一行打印数据送往打印缓冲区,执行有关打印控制的程序,将其打印出来。
当打印数据准备好以后,控制程序要根据用户对打印机设定的打印质量的要求(如草稿打印、信函打印、倍密度打印等)来确定字车步进电机的运行步频,并根据选定的运行步频进行字车驱动的控制。(www.xing528.com)
由于打印头击打频率(出针频率)是固定的,因此打印密度是随着字车运行速度而变化的。字车速度慢,打印点的密度就大,打印质量也就高;反之,字车速度快,打印点的密度小,打印质量就降低。
另外,对于步进电机驱动的系统,其控制基本是开环控制,所以还要计算和记忆执行部件走过的距离(字车是通过HP传感器后开始计算),以防打印头或字车超出机器的可打印范围甚至撞向机心的侧架。
输纸控制的目的是为了满足打印的需要,如点阵密度较高的字符或汉字需要两次或两次以上的打印才能完成,为了使其上下很好地对应衔接,应控制打印纸微量走纸;如果需要打印下一行字符,则要按照规定的换行间距进行输纸。究竟每次输纸量是多少,要由处理器根据处理后的打印数据控制输纸步进电机转动的步数来决定。
在打印过程中,当一行打印完成后,在下一行打印开始前要进行打印机的状态检测,主要包括打印头当前位置的检测、缺纸检测、打印头过热检测等以及是否通过控制面板给出了脱机命令和其他的操作命令。在上述检测和处理结束后,才能进入下一行打印数据的处理过程。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。