并行端口接口资料

目录
一、标准并行端口(SPP
1.1 并行端口导论
1.2 硬件特性
1.3 端口地址
1.4 软件寄存器(SPP
  1.4.1 双向端口
  1.4.2 并行端口用于8比特输入
  1.4.3并行端口IRQ的使用
1.5 编程
二、增强型并行端口(EPP
2.1  增强型并行端口
2.2  EPP硬件特性
2.3  EPP握手(Hand shake
2.4  EPP软件寄存器
三、扩展功能端口(ECP
3.1  扩展能力端口入门
3.2  ECP硬件特性
3.3  ECP握手
3.4  RLE——运行长编码
3.5  ECP软件寄存器
3.6  ECP扩展控制寄存器(ECR
3.6.1 ECP的配置寄存器AcnfgA
3.6.2 ECP的配置寄存器BcnfgB
一、 并行端口
1.1 并行端口导论
并行端口在接口设计工程中是最常用的。
该端口在任何规定时间内将允许输入达到9比特,输出达到12比特。
该端口由4条控制线,5条状态线和8数据线组成。
PC机后部常常可以见到作为D25脚阴性连接的端口,或者是D—25引脚的阳性连接。这将是一个RS—232串行端口和一个完全不同的端口。
关于RS-232串行端口的大量资料可以查看网终止提供的信息。
网址为:ities/siliconValley/Bay/8302/serial.htm
1994所以前,连接比如打印机、扫描仪、CD-ROM等设备还没有设置并行端口如何工作的标准。一些人在他们的驱动器中使用TTLTransistor to Transistor Logic)技术,然而多数人(尤其是最近)使用CMOSComp Lementary Metal Dxide Semiconductors)技术。
IEEE 1284-1994标准,说明了五种工作模式,它们是:
1、 兼容模式
2、 半字节模式(本文档中没有对该项进行描述)
3、 字节模式(本文档中没有对该项进行描述)
4、 EPP模式(增强型并行端口模式)
5、 ECP模式(扩展能力模式)
其目的是为了设计新型的驱动器和设备,他们之间能够彼此兼容且向下兼容并行端口(SPP),兼容模式,半字节模式和字节模式仅使用于并行端口卡上的标准硬件。而EPP模式和ECP模式需要运行速度更快的附加硬件,并且仍旧向后兼容标准并行端口。
正如通常所知“兼容模式”或是Centronics模式,仅以每秒50K字节的典型速度传送数据,但是能够达到每秒150K字节。为了接收数据,你必须把这种模式设为半字节式或字节模式。半字节模式在反方向能够输入一个半字节(4比特),例如从设备到计算机。字节模式使用并行双向的特点(仅在某些卡中有此特性)能够在反方向输入一个字节(8比特)数据。
扩展型和增强型并行端口使用附加硬件以控制握手。为输出一比特数据到打印机(或者是其它设备上)可使用兼容模式,软件必须是有以下功能:
写字节到数据端口
检查,确定打印机是否忙?如果忙,打印机不按收任何数据;如这样写的任何数据将被丢失。
设置选取通脉冲(引脚1)为低。来通知打印机在数据线上的数据正确。(引脚2-9
在设置选通脉冲为低之后,等待大约5微秒后,重新设置选通脉冲为高。(step 3
这就限制了端口可能运行的速度,EPPECP端口通过硬件检查确认打印机是否忙,产生一个造通脉冲来解决这一不是。这意味着仅有一个I/O指令需要执行,这样速度就提高了。这些类型的端口,一秒中大约能输出1MbECP端口还具有使用DMA通道的优点,这样不需执行I/O指令数据就能够被传输。
1.2 硬件特性
下面是D25脚连接器(插孔)和(Centronics 34脚连接器)到“引脚输出”表D25脚连接器是计算机并行端口最常用的连接器,而Centronics连接器常见用于打印机。IEEE 1284标准明确说明了三种不同类型用于计算机并行端口的连接器,第一种类型为1284A,它是D25脚常用于计算机后部的连接器。第二种类型为1284B,它是广泛用于打印机的36引脚Centronics连接器。IEEE 1284C也为36引脚连接器,类似与Centronics连接器,但形状较小一点,该类型的连接器据说有一个接线柱弹簧锁(Clip latch)较好的电
气特性,且易于安装,它还包括两个以上的信号引脚,这种信号被用来查看其它设备是否连接好,是否有电。1284C连接器,被再次要求进行重新设计,因此在不久的将来,我们将会看到新型的连接器。
表一:D-25脚并行端口连接器的引脚分配。
Pin No
(D-25)
Pin No
centronics
SPP Signal
direction Register Hardware
In/out                      Inverted
1
1
NStroke
In/out
controt
Yes
2
2
Data 0
Out
Data
3
3
D1
O
D
4
4
D2
O
D
5
5
D3
O
D
6
6
D4
O
D
7
7
D5
高狄O
D
8
8
D6
O
D
9
9
D7
O
D
10
10
大功率发光二极管NAck
In
Status
11
11
Busy
In
S
Yes
12
12
Paper-out /Paper-end
In
S
13
13
Select
In
S
14
14
n Auto-Linefeed
In/out
Control
15
32
n Error/n Fault
In
Status
16
31
n Initialize
In/out
Control
17
36
n select-printer/n select-In
In/out
Control
Yes
18-25
19-30
Ground
Gnd
上表中在信号名前使用“n”提醒注意该信号的低有效。例如:n Error表示当该线上信号为低时打印机出错,该线通常为高,表示打印机正常工作。“Hardware Inverted ”(硬件反向)意味着信号是通过打印机卡硬件实现反向的。例如Busy线,施加于该引脚的信号为+5v(逻辑1)目被状态寄存器读取,该信号应在相应的位置被回复为逻辑0
1.3  端口地址
打印机/并行端口有3个常用的地址,已在下表2中列出。3BCh基址如今不是被典型使用的,但当并行端口连接视频卡时就使用该地址。固定用于LPT1 & LPT2的基址典型地为378h & 278h,小写字符h表示为16进制数,在不同机器中这些地址允许改变。
表二:端口地址
Address                      Notes:
3BCh-3BFh      具体用于视频卡的并行端口不支持ECP地址
大庆教育论坛
378h—37Fh      常用于LPT1
278h—27Fh      常用于LPT2
最初打开计算机时,BIOSBasic Input/ Output System)将确定端口的数目,并分配设备标号LPT1LPT2LPT3给它们。BIOS首先查看地址3BCh,如果在此处发现了一个并行端口,该端口将被分配作为LPT1。然后查看地址378h,如在此处发现并行端口,将把下一个空闲的设备标号分配给它,该标号可能为LPT1前提为在3BCh处没有接口卡;或者为LPT2,在3BCh处有接口卡,最后将访问的地址为378h,进行和其它两端口一样的处理,这样就有可能使LPT2所对应的地址为378h,而不是所期望的278h
对于已分配设备LPT1LPT2&LPT3而言,人们不用担心与他们的计算机接口设备。大多数时间基址是被用于端口接口而不是LPT1等,然而如你想到LPT1或其他在线打印机设备对应的地址,你可查阅BIOS提供的表,当BIOS分配地址给你的打印机设备时,它在内存中特定位置保存下来这些地址,因此我们可以查询到他们。
表三:在BIOS数据区的LPT地址
Start Address
Function
0000:0408
LPT1的基址
0000:040A
LPT2的基址
0000:040C
LPT3的基址
0000:040E
LPT4的基址(注1
1:在BIOS数据区的地址0000040E可能在PS/2被用作扩展的基本输入输出系统数据区和新的Bioses
上表了列出了人们可以在BIOS数据区查到打印机端口的地址,每一地址占用2个字节,下面的C语言的例子,演示了如何去读这些位置以得到你的打印端口地址。
#include<stdio.h>
#include<doso.h>
void main(void)
{ unsigned int far*ptraddr;/*pointer to location of Brt Address */
unsigned int address; A Address of Port*/
int a;
ptraddr=(unsigned int far*)0x00000408;
for(a=0;a<3;a++)
{address=*ptraddr;
if(address=0) printf(“No port found for LPT%d\n”,a+1);
else printf(“address assigned to LPT%d is xh\n”,a+1,address);
*ptraddr++;}
}
1.4 软件寄存器——标准并行端口(SPP
3:软件寄存器
水泥电阻
Offset
name
Read/write
Bit No
Properties(特性)
Base+0
Data Port
Write
Bit 7
Data 7
(Note-1)
Bit 6
Data 7
1
Bit 5
Data 5
Bit 4
Data 4
Bit 3
Data 3
Bit 2
Data 2
Bit 1
Data 1
Bit 0
Data 0
Base+1
Status Port
Read Only
Bit 7
Busy
Bit6
Busy
Bit 5
Paper out
Bit 4
Select in
Bit 3
Error
Bit 2
IRQ(Not)
Bit 1
Reserved
Bit 0
Reserved
Base+2
Control port
Read/write
Bit 7
Unused
Bit6
Unused
Bit 5
Enable
Bit 4
Bi-Directional Port
Bit 3
Enable IRQ Via Ack
Bit 2
Select  Printer
Bit 2
Initialize Printer
Bit 1
Auto-linefeed
Bit 0
Strobe
      1:如果端口为双向的,则读写选择可由数据寄存器来完成。
基址常被称为数据端口或数据寄存器,它仅用于在并行端口数据线(引脚2-9)输出数据。该端口通常反为写端口,如你从该端口读入,你得到最近发送的字节,可是如果你的端口是双向的,你能在这个地址上收得数据,想得到更多的详细资料,请参阅“双向端口”。状态端口/寄存器(基址+1)为一只读端口,任何写入该端口的数据均被忽略,该端口由5条输入线(引脚10111213爬墙党15),一个IRQ状态寄存器和2反向位组成。请注意位7Busy中国实验方剂学忙)是一个低有效输入,例如如果位7偶尔为“0”,这意味着在引脚11上为+5v。同样地位2IRQ not),如果位2为“1”,没有中断发生。控制端口(基址+2)打算用作为一个只写端口,当打印机联接到并行端口,使用四条“控制线controls”他们是选通脉冲,自动Linefeed,初始化和选择打印机,这些控制信号除初始化外都被反向。

本文发布于:2024-09-22 04:00:23,感谢您对本站的认可!

本文链接:https://www.17tex.com/xueshu/473601.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

下一篇:BH72 固氮弧菌
标签:端口   并行   模式   打印机   数据   字节   地址   设备
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议