首页 理论教育 高效数据接收程序,深入解析针式打印机

高效数据接收程序,深入解析针式打印机

时间:2023-10-30 理论教育 版权反馈
【摘要】:初始化后,在打印机工作正常的情况下即转入数据接收处理程序,打印机通常有联机和脱机两种工作状态,只有在联机方式下打印机才能接收输入的数据。中断方式接收打印内容数据的接收是通过向打印机的CPU发出中断请求后实行的。图6-5 查询方式数据接收流程

高效数据接收程序,深入解析针式打印机

初始化后,在打印机工作正常的情况下即转入数据接收处理程序,打印机通常有联机(ONLINE)和脱机(OFFLINE)两种工作状态,只有在联机方式下打印机才能接收输入的数据。数据输入时,打印机检测并判别输入的数据,若为功能代码,则转入功能码处理程序;若为字符代码,则将其存入数据缓冲器。打印机在接收到数据后,同时发出当前打印机的状态信号,以便主机能及时正确地继续向打印机发送数据。

现在的打印机基本上都是采用微处理器作为控制单元的,主机把打印内容发送至打印机时,打印机可以有立刻接收、查询方式接收、中断方式接收三种方式接收数据。由于打印内容的数据量比较大,基本上是不采用立刻接收的方式的。

当打印机处于脱机方式时,控制程序始终检测开关状态,一直等到开关状态发生变化。

1.并行LPT口数据接收

(1)查询方式接收

查询方式接收数据的过程,参见如图6-5所示的流程。

(2)中断方式接收

打印内容数据的接收是通过向打印机的CPU发出中断请求后实行的。

1)门阵列接收到主机发送到打印机接口978-7-111-33336-4-Chapter06-6.jpg信号后,将数据锁存起来(一般锁存在PA端口),然后向CPU发出978-7-111-33336-4-Chapter06-7.jpgY信号要求中断;

2)CPU接收中断后,将CPUBUSY置为高电平,然后读门阵列里的数据;

3)CPU完成读数据后,将978-7-111-33336-4-Chapter06-8.jpg置为高电平、CPUBUSY置为低电平;

4)CPU将978-7-111-33336-4-Chapter06-9.jpg置为低电平。

2.串行COM口数据接收(www.xing528.com)

(1)DTR作联络信号

这是把DTR信号作为外部设备准备好的信息送到主机来实现的。

1)当打印机能接收数据时,DTR信号被置位为SPACE。

2)当打印机处于错误状态或输入缓冲器的空间区域达到或小于256字节时,DTR信号被置位为MARK,完成与主机的联络。

(2)XON/XOFF约定

这种信息交换是通过把XON(ASCⅡ代码DC1或十六进制数11h)或XOFF(ASCⅡ代码DC3或十六进制数13h)信号,经过TxD信号线送到主机来实现的。

1)当打印机可以接收数据时,打印机发出一个XON代码给主机。

2)当打印机处于错误状态或输入缓冲器的空间区域达到或小于256字节时,打印机发出一个XOFF代码给主机。

(3)ETX/ACK约定

数据块作为一页发送,页的定义为开始位ETX代码和结束位ACK代码。接收时要把这两个代码忽略掉。

978-7-111-33336-4-Chapter06-10.jpg

图6-5 查询方式数据接收流程

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈