原创 PC打印机并口解析(转)

2007-8-5 15:53 4926 6 6 分类: 汽车电子
PC打印机并口解析(转)

2007年01月12日 星期五 下午 05:30



并行接口的分类: SPP(标准并行接口) ,EPP(增强型并行接口),ECP(扩展型并行端口)


  标准并行端口(SPP)也是最早的端口定义,主要功能如下,1:并行端口提供了8个数据线以进行并行的字节传输,2:计算机能够通过数据线向打印机发送选能信号,以通知打印机已经准备好接收数据,3:打印机接收到数据后,向计算机发送一个回应信号(NACK)。


  增强型并行端口(EPP)的出现提供了一种更高性能的连接方式,并向下兼容所有在此之前存在的并行接口及外设。与SPP不同之处在于原来17个信号中的重新定义,在这17个信号中,EPP使用了其中的14个信号进行传输,握手和选通,剩下的3个信号可以由外设设计者有来自定义。


并行接口的大致结构:
      
并行口一般有25个引脚,其中包括8位数据线,5位打印机状态线,4位控制线.下面将对这些引脚予以详细说明
:
  (
:1:>,表示由计算机发向打印机;,表示由打印机发向计算机
,
      2:>
低电平有效信号用上划线或星号表示(S7*),高电平有效信号则没有上划线或星号)

 

打印口各引脚的定义:
1.选通, PC->Printer
2-9.数据(D0-D7)
10.应答(ACK),Printer->PC
11.忙(BUSY), Printer->PC
12.无纸(PE), Printer->PC
13.联机(SLCT), Printer->PC
14.自动换行(AUTO FD), PC->Printer
15.错误(ERROR), Printer->PC
16.初始化(INIT),PC->Printer
17.选择输出(SELECT IN), PC->Printer
18-25.地(GND)

     打印机常用端口: 对于LPT1:0X378 为数据发送地址,0X379为打印机状态地址,0X37A为计算机向打印机控制地址, 通常为了使程序具有通用性我们可以从注册表中取得这个地址,对于WINDOWS CE 而言,这个值被存储在{HKEY_LOCAL_MACHINE//DRIVERS//BUILTIN//PARALLEL//IOBASE}.然后我们就可以通过对此三个端口进行控制达到简单的并口编程的目的.


下面是对打印机状态端口及打印机控制端口作一详细解释:


控制端口:



0x37A


1


1


输入控制


中断


17线


16 线


14 线


1  线


  这个0x37A计算机控制打印机的地址,可以产生对打印机进行控制的必要信号,可写,两高位(78)没什么用,第6位写1表示可以向并口输出数据。第五位中断信号(IRQ EN),利用此信号线,驱动程序可以在STATUS端口信号(nAck)的帮助下,使用该信号对中断信号的产生与否进行控制。第3210位分别控制第17线,第16线,第14线和第1线。(可以控制它们的状态)具体作用可参见前表


状态端口:



0x379


S711 


S610应答


S512缺纸


S413联机


S315 错误


  S2 


S1  


S0  


 0x379为打印机状态地址,可读,通过个端口打印机适配器可以很方便的读取打印机的状态。


标记为S7的信号表示最高位,SO表示为最低位,只有S3S7五个信号才是真正有用的信号。他们的具体信号功能解释如下:


S7*(busy):打印机使用该信号表示打印机正处于忙状态,不能再接收数据。需要强调的是,该信号通过适配器板时,进行了反相处理,因此连接器上的低电平到微处理器时就变成了高电平。


S6nAck):当适配器发出选通信号时,打印机就会产生该信号作为响应。通常情况下,该信号是高电平,选通打印机之后,打印机首先把该信号设为低电平,然后再返回高电平。


S5PE):当打印机缺纸时,它就会产生一个这样的信号,通常情况下,该信号由打印机保持为低电平,打印机纸使用完之后,该信号就会变成高电平。


S4SELECT):当打印机恢复正常操作时,它就会插入一个高电平的该信号。当打印机处于无效状态时,访信号就会变成低电平。


S3NERROR):当打印机出现错误时就会产生这种邮错信号。产生出错的原因很多,如打印纸堵了或产生了内部错误。产生错误时该信号就会设置成低电平。


 


          原文地址:http://hi.baidu.com/auto_and_ctrl/blog/item/a1fe698da411aa12b21bba00.html

文章评论0条评论)

登录后参与讨论
我要评论
0
6
关闭 站长推荐上一条 /2 下一条