一、接口定义说明
电脑的并口,通常是25针. 接口定义如下:
针 | 方向 |
2,3,4,5,6,7,8,9 | 双向 |
1,14,16,17 | 输出 |
10,11,12,13,15 | 输入 |
18,19,20,21,22,23,24,25 | 地 |
功能说明:
二、并口编程基础
这些引脚,其实就是I/O口。而且是可以控制的,以软件的方式,非常简单。
在计算机内部,对应的寄存器如下:
0x378是8bit数据寄存器的地址,对应并口针的顺序是9,8,7,6,5,4,3,2
0x379是状态寄存器,11,10,12,13,15 - - -
0x37A是控制寄存器,- - - 并口中断允许位,17,16,14,1
也就是说PC的0x378可以用来做输入和输出,0x37A的低4位可以用来输出,0x379是输入。这样就可以用并口模拟很多时许,比如IIC、JTAG、SPI等等。
注意:上述的寄存器地址是以0x378为基地址的。如果基地址为0x3F0,那么他们的数据、状态、控制寄存器地址分别为0x3F0、0x3F1、0x3F2。(基地址缺省的是0x378,也可在BIOS里重新设置)
输入函数:int inport(int address); address就是上面的寄存器地址
输出函数:int outport(int address,int value);
无论是DOS下编程、还是Windows下,都可用。
三、25针并口具体定义
Pin Name Dir Description
1 /STROBE -> Strobe
2 D0 -> Data Bit 0
3 D1 -> Data Bit 1
4 D2 -> Data Bit 2
5 D3 -> Data Bit 3
6 D4 -> Data Bit 4
7 D5 -> Data Bit 5
8 D6 -> Data Bit 6
9 D7 -> Data Bit 7
10 /ACK <- Acknowledge
11 BUSY <- Busy
12 PE <- Paper End
13 SEL <- Select
14 /AUTOFD -> Autofeed
15 /ERROR <- Error
16 /INIT -> Initialize
17 /SELIN -> Select In
18 GND -- Signal Ground
19 GND -- Signal Ground
20 GND -- Signal Ground
21 GND -- Signal Ground
22 GND -- Signal Ground
23 GND -- Signal Ground
24 GND -- Signal Ground
25 GND -- Signal
针脚 | 功能 | 针脚 | 功能 |
1 | 选通端,低电平有效 | 10 | 确认,低电平有效 |
2 | 数据通道0 | 11 | 忙 |
3 | 数据通道1 | 12 | 缺纸 |
4 | 数据通道2 | 13 | 选择 |
5 | 数据通道3 | 14 | 自动换行,低电平有效 |
6 | 数据通道4 | 15 | 错误,低电平有效 |
7 | 数据通道5 | 16 | 初始化,低电平有效 |
8 | 数据通道6 | 17 | 选择输入,低电平有效 |
9 | 数据通道7 | 18-25 | 地 |