計(jì)算機(jī)的并行接口(2)
為了提高Centronics接口的性能,也要兼容過去的標(biāo)準(zhǔn),IEEE1284定義了5種工作模式:
本文引用地址:http://butianyuan.cn/article/201612/328723.htmSPP模式:Standard Parallel Port標(biāo)準(zhǔn)并行接口,也稱為Compatibility mode兼容模式, Nibble模式:從PC機(jī)到外設(shè)8-bit數(shù)據(jù)線,反向4-bit數(shù)據(jù)線
Byte模式:8-bit雙向傳輸,速率在50KB/s 到150KB/s之間
EPP模式:Enhanced Parallel Port增強(qiáng)并行接口,允許任一方向的高速字節(jié)傳輸
ECP模式:Extended Capabilities Port擴(kuò)展功能并行接口,允許PC機(jī)發(fā)送數(shù)據(jù)塊
符合IEEE 1284標(biāo)準(zhǔn)的并口,使用設(shè)備ID(Device identification sequence)來實(shí)現(xiàn)即插即用(Plug and Play)配置,使并口更易于使用。各種模式都可以使用相同的連接器和電纜連接方式,因硬件和編程方式的不同,傳輸速度可以從50K Bits/秒到2MB/秒不等。
2.1)SPP模式:即傳統(tǒng)的Centronics并行接口,所以也稱Centronics mode
提供基本的信號,包括8-bit數(shù)據(jù)線,4條控制線(Strobe、Initialize Printer、Select Printer、Auto Feed line)和5條狀態(tài)線(Busy、Acknowledge、Select、Paper Empty、Fault),需要三個(gè)不同的寄存器來進(jìn)行數(shù)據(jù)的讀寫操作。
SPP模式是最基本的工作模式,異步、字節(jié)單向傳輸,數(shù)據(jù)率在50KB/s 到150KB/s之間。使用AB-cable 電纜可傳6米,而使用新的CC-cable 電纜可達(dá)10米。
基本的SPP 模式的時(shí)序如圖:
當(dāng)打印機(jī)準(zhǔn)備好接收數(shù)據(jù),設(shè)BUSY為低,主機(jī)發(fā)出有效的數(shù)據(jù)到數(shù)據(jù)線,等待至少500ns然后發(fā)出STROBE負(fù)脈沖持續(xù)至少500ns,有效的數(shù)據(jù)在STROBE上升沿后至少要維持500 ns 。打印機(jī)接收數(shù)據(jù)并設(shè)BUSY有效以指示處理數(shù)據(jù),當(dāng)打印機(jī)完成數(shù)據(jù)接收,發(fā)出ACK脈沖至少500ns,然后清除BUSY以指示準(zhǔn)備好接收下一個(gè)字節(jié)數(shù)據(jù)。
Centronics標(biāo)準(zhǔn)的握手信號略有不同,nStrobe為最小寬度大于1us的負(fù)脈沖,nAck為寬度大于5us的響應(yīng)負(fù)脈沖,由于nAck信號的負(fù)脈沖較短,一般不會(huì)查詢它,而是查詢Busy。
主機(jī)軟件通過4步來完成1字節(jié)數(shù)據(jù)通過并口的傳輸:
1. 把有效數(shù)據(jù)寫入數(shù)據(jù)寄存器
2. 檢查BUSY狀態(tài)線,等待其無效(0)
3. 寫控制寄存器,使STROBE有效(0)
4. 寫控制寄存器,使STROBE失效(1)
SPP模式要求的最小的建立時(shí)間、保持時(shí)間和脈沖寬度限制了其性能,考慮到軟件的等待時(shí)間,IEEE1284最大的數(shù)據(jù)傳輸率為150 kbytes/s,而Centronics典型為10 kbytes/s,這對于點(diǎn)陣行式打印機(jī)已經(jīng)足夠了,但對于高速的激光打印機(jī)就顯露出不足。
SPP模式下的信號定義:
為操作并行口,SPP定義了寄存器,并映射到PC機(jī)的I/O空間。寄存器包括了以并口地址為基址的3塊連續(xù)的寄存器,并口地址常見為3BCH、378H和278H,其中都包括數(shù)據(jù)、狀態(tài)和控制寄存器,分別對應(yīng)數(shù)據(jù)、狀態(tài)和控制信號線操作,通常稱為數(shù)據(jù)端口、狀態(tài)端口和控制端口。打印機(jī)卡1的地址常為378H,其中數(shù)據(jù)口0378H、狀態(tài)口0379H、控制口037AH;打印機(jī)卡2的地址常為278H,其中數(shù)據(jù)口0278H、狀態(tài)口0279H、控制口027AH。支持新的IEEE 1284標(biāo)準(zhǔn)的并口,使用8到16個(gè)寄存器,地址為378H or 278H,即插即用(Plug and Play)兼容的的并口適配器也可以重新加載。
并口的寄存器定義:
數(shù)據(jù)寄存器:所占用的地址是并行接口的基地址,對應(yīng)于于接口的2-9針
狀態(tài)寄存器 :占用的地址是基地址加1,對應(yīng)于接口的10,11,12,13,15針,是只讀寄存器,其中包含一個(gè)IRQ中斷位(由Ack相反后形成),當(dāng)有中斷發(fā)生這個(gè)數(shù)據(jù)位為“0”。 Bit7(引腳11)在輸入+5V電平時(shí),數(shù)據(jù)值為”0”,有反轉(zhuǎn)的特性。
控制寄存器 :占用的地址是基地址加2,對應(yīng)于接口的1,14,16,17針,其中Bit0,Bit1,Bit3有反轉(zhuǎn)的特性。Bit4為IRQ應(yīng)用,當(dāng)向Bit4寫入“1”時(shí),將使ACK(引腳10)信號反相后成為中斷請求IRQ信號,通常為IRQ5或IRQ7。
并口使用的3BCH、378H和278H三個(gè)基地址幾乎都支持SPP、ECP和EPP模式(3BCH這個(gè)地址在早期的并口打印機(jī)適配器上不支持EPP和ECP模式)。三個(gè)不同基地址的地址段如下:
一些集成的1284 I/O控制器使用FIFO buffer傳輸數(shù)據(jù)稱為Fast Centronics或Parallel Port FIFO Mode,也使用SPP協(xié)議,但用硬件產(chǎn)生strobe信號來實(shí)現(xiàn)控制信號握手,使數(shù)據(jù)率能超過500KB/s。然而,這不是IEEE 1284定義的標(biāo)準(zhǔn)模式。
2.2)Nibble模式:用于從打印機(jī)或外部設(shè)備得到反向數(shù)據(jù)的常用方式,
Nibble模式利用4條狀態(tài)線把數(shù)據(jù)從外設(shè)傳回電腦。標(biāo)準(zhǔn)的并行口提供5條外設(shè)到PC機(jī)的信號線,用于指示外設(shè)的狀態(tài),利用這些信號線,外設(shè)可以分2次發(fā)送1字節(jié)(8-bit)數(shù)據(jù),每次發(fā)半字節(jié)(nibble:4-bit)信息。因?yàn)閚ACK信號一般用來提供外設(shè)中斷,所以難以把傳輸?shù)膎ibble(半字節(jié))信息通過狀態(tài)寄存器(Status register)合成1字節(jié),需要軟件讀狀態(tài)信號并作相應(yīng)操作來得到正確的字節(jié)信息。Nibble模式的數(shù)據(jù)率為50kbps(6米電纜),使用新型10米CC-cable電纜的數(shù)據(jù)率為150 kbps。Nibble模式的優(yōu)勢在于具有并口的PC機(jī)都可以執(zhí)行這種方式,但只能用于反向通道為低速率的場合。
下表定義了Nibble模式的信號:
下圖描述了Nibble模式的基本時(shí)序
Nibble模式數(shù)據(jù)傳輸步驟:
1. 主機(jī)通過設(shè)置HostBusy為低表明可以接收數(shù)據(jù)
2. 外設(shè)把第一個(gè)半字節(jié)(nibble)輸出到狀態(tài)線
3. 外設(shè)設(shè)置PtrClk為低指示nibble數(shù)據(jù)有效
4. 主機(jī)設(shè)置HostBusy為高指示接收到nibble數(shù)據(jù),而正在處理
5. 外設(shè)設(shè)置PtrClk為高應(yīng)答主機(jī)
6. 重復(fù)步驟1到5來接收第二個(gè)半字節(jié)(nibble)
Nibble模式與SPP模式相似,需要軟件通過設(shè)置和讀取并口的控制信號線來實(shí)現(xiàn)協(xié)議。Nibble模式與SPP模式結(jié)合建立完整的雙向通道,形成最簡單的雙向傳輸方式。從PC機(jī)到外設(shè)8-bit數(shù)據(jù)線,反向4-bit數(shù)據(jù)線,支持單向打印機(jī)接口,提供了全速率的前向傳輸和半速率的反向傳輸,速率在50KB/s 到150KB/s之間。
2.3)Byte模式:在數(shù)據(jù)線上實(shí)現(xiàn)反向傳輸?shù)姆绞?/p>
Byte模式利用數(shù)據(jù)線把8-bit數(shù)據(jù)從外設(shè)傳輸?shù)街鳈C(jī)。標(biāo)準(zhǔn)并行口的8-bit數(shù)據(jù)線只能從主機(jī)向外設(shè)單向傳輸,需要抑制住控制數(shù)據(jù)線的驅(qū)動(dòng)器,使數(shù)據(jù)可以從打印機(jī)傳到電腦。Byte模式數(shù)據(jù)傳送,一次傳送一個(gè)字節(jié),與nibble模式下需要的兩數(shù)據(jù)周期不同,速度和由電腦到打印機(jī)的一樣,在50KB/s 到150KB/s之間,使用新型CC-cable可在10米電纜上達(dá)到500kbps。
下表定義了Byte模式的信號:
Byte模式數(shù)據(jù)傳輸步驟:
1. 主機(jī)通過設(shè)置HostBusy為低表明可以接收數(shù)據(jù)
2. 外設(shè)把第一個(gè)字節(jié)(byte)數(shù)據(jù)輸出到數(shù)據(jù)線
3. 外設(shè)設(shè)置PtrClk為低指示byte數(shù)據(jù)有效
4. 主機(jī)設(shè)置HostBusy為高指示接收到byte數(shù)據(jù),而正在處理
5. 外設(shè)設(shè)置PtrClk為高應(yīng)答主機(jī)
6. 重復(fù)步驟1到5來接收其他字節(jié)(byte)數(shù)據(jù)
下圖描述了Byte模式的基本時(shí)序
制造商首先在IBM PS/2并口上增加了對8-bit數(shù)據(jù)線的讀取能力,實(shí)現(xiàn)Byte模式,使之成為雙向口,稱為擴(kuò)展并口的Type 1。此外,還提供了Type 2和Type 3,使用DMA方式。在Type 2 和 3的DMA 寫數(shù)據(jù)時(shí),DMA控制器向數(shù)據(jù)寄存器寫數(shù)據(jù),而STROBE脈沖自動(dòng)產(chǎn)生,當(dāng)從外設(shè)收到ACK,發(fā)出DMA請求,下一個(gè)字節(jié)發(fā)出。外設(shè)可以設(shè)置BUSY 來延遲傳輸。在Type 2 和 3的DMA 讀數(shù)據(jù)時(shí),ACK脈沖產(chǎn)生DMA請求,發(fā)起對系統(tǒng)存儲(chǔ)器的傳輸, DMA 控制器讀取數(shù)據(jù)寄存器,STROBE脈沖自動(dòng)產(chǎn)生。Type 2 和3的 DMA傳輸依照SPP模式時(shí)序進(jìn)行。
雖然IBM定義了Type 2和3方式提高了并口的性能,但只有IBM計(jì)算機(jī)實(shí)現(xiàn)這種功能,缺乏軟件來支持這種DMA特性。相比較,EPP和ECP 是種工業(yè)標(biāo)準(zhǔn),為更廣泛的硬件和軟件制造商支持。
2.4)EPP模式:Enhanced Parallel Port增強(qiáng)型并行端口,可實(shí)現(xiàn)高速雙向數(shù)據(jù)傳輸
EPP模式由Intel、Xircom, and Zenith Da
EPP模式的信號定義
EPP模式有一個(gè)數(shù)據(jù)周期和一個(gè)地址周期,提供了4種傳輸周期時(shí)序:
1. 數(shù)據(jù)寫周期時(shí)序
2. 數(shù)據(jù)讀周期時(shí)序
3. 地址寫周期時(shí)序
4. 地址讀周期時(shí)序
數(shù)據(jù)周期時(shí)序用于在主機(jī)和外設(shè)間傳輸數(shù)據(jù),地址周期時(shí)序用于分配地址、通道、命令和控制信息。
EPP 地址寫周期:主機(jī)首先設(shè)置WRITE*,并把地址信號發(fā)到數(shù)據(jù)線上,設(shè)置ASTROBE*;外設(shè)取消WAIT*,指示已準(zhǔn)備接收地址字節(jié);主機(jī)然后取消ASTROBE* ;外設(shè)在ASTROBE* 上升沿鎖存地址數(shù)據(jù),然后設(shè)置WAIT*,指示準(zhǔn)備開始下一周期。
EPP 地址讀周期:主機(jī)取消WRITE*,使數(shù)據(jù)線處于高阻狀態(tài),設(shè)置ASTROBE*;外設(shè)發(fā)地址字節(jié)到數(shù)據(jù)線,取消WAIT*指示地址有效;主機(jī)檢測到WAIT*取消,讀地址,然后取消ASTROBE;外設(shè)然后使數(shù)據(jù)線處于高阻狀態(tài),設(shè)置WAIT*,指示準(zhǔn)備開始下一周期。
EPP 數(shù)據(jù)寫周期:主機(jī)設(shè)置WRITE*,把數(shù)據(jù)字節(jié)發(fā)到數(shù)據(jù)線,設(shè)置DSTROBE*;外設(shè)取消WAIT*,指示準(zhǔn)備接收數(shù)據(jù);主機(jī)然后取消DSTROBE* ;外設(shè)在DSTROBE*上升沿鎖存數(shù)據(jù),然后設(shè)置WAIT*,指示準(zhǔn)備開始下一周期。
EPP 數(shù)據(jù)讀周期:主機(jī)取消WRITE*,使數(shù)據(jù)線處于高阻狀態(tài),設(shè)置DSTROBE* ;外設(shè)把數(shù)據(jù)字節(jié)發(fā)往數(shù)據(jù)線,取消WAIT*,指示數(shù)據(jù)有效;主機(jī)檢測到WAIT*取消,讀數(shù)據(jù),然后取消DSTROBE*;外設(shè)外設(shè)然后使數(shù)據(jù)線處于高阻狀態(tài),設(shè)置WAIT*,指示準(zhǔn)備開始下一周期。
EPP模式在3個(gè)SPP模式并口寄存器外又定義了5個(gè)寄存器, 用于把地址或數(shù)據(jù)自動(dòng)發(fā)到并口數(shù)據(jù)線上,然后自動(dòng)產(chǎn)生地址和數(shù)據(jù)的選通(strobe)信號。EPP模式的數(shù)據(jù)、狀態(tài)和控制寄存器與SPP模式的配置相同。
把數(shù)據(jù)寫入Auto Address Strobe寄存器,將把數(shù)據(jù)發(fā)到并口數(shù)據(jù)線,并伴隨自動(dòng)產(chǎn)生的ASTROBE*低脈沖信號;把數(shù)據(jù)寫入任一Auto Da
EPP寄存器接口:
從軟件角度看,EPP模式是擴(kuò)展了SPP的并口寄存器。SPP的并口包括數(shù)據(jù)Da
EPP寄存器定義如下:
通過產(chǎn)生一個(gè)對“base_address+4”的 I/O 寫指令,EPP控制器產(chǎn)生需要的數(shù)據(jù)寫(Da
標(biāo)準(zhǔn)并口的數(shù)據(jù)傳輸需要7個(gè)軟件步驟,EPP增加了其他的硬件和寄存器,通過單I/O 指令自動(dòng)產(chǎn)生控制strobes和數(shù)據(jù)傳輸?shù)膆andshaking信號,保證以ISA 總線速度傳輸,最大數(shù)據(jù)率為2 Mbytes/s,在其他平臺(tái)上可能達(dá)到10 Mbytes/s 。EPP的微處理器的總線結(jié)構(gòu)使之易于直接與外設(shè)硬件通訊。EPP模式還有進(jìn)一步的塊傳輸能力,使用REP_IO指令,依靠主機(jī)適配器的支持。
EPP模式數(shù)據(jù)寫時(shí)序的步驟:
1. 程序?qū)ORT4 (EPP Da
2. nWrite信號有效,數(shù)據(jù)發(fā)送到并口
3. 設(shè)datastrobe有效,然后nWAIT 設(shè)置為低
4. 等待外設(shè)的響應(yīng) (nWAIT變?yōu)闊o效)
5. 設(shè)置datastrobe無效,結(jié)束EPP周期
6. ISA 的I/O 周期結(jié)束
7. nWAIT 設(shè)置為低,指示下一個(gè)周期開始
下圖是EPP數(shù)據(jù)寫時(shí)序的實(shí)例,CPU信號nIOW是用來強(qiáng)調(diào)全部的handshake在一次I/O中完成
注意,全部數(shù)據(jù)傳輸發(fā)生在一次ISA 的I/O 周期中,這表明使用EPP協(xié)議,數(shù)據(jù)傳輸率可為500KB/s到2MB/s,這樣外設(shè)在性能上接近ISA卡。
因?yàn)槭褂没ユi握手信號協(xié)議,數(shù)據(jù)可在很低的速率下傳輸。Nibble、Byte、EPP和ECP 模式都使用互鎖握手信號協(xié)議。所謂互鎖握手信號,指每次控制信號的變化都需要另一邊的響應(yīng)。
EPP模式允許任一方向的高速字節(jié)傳輸,但不是同時(shí),是半雙工方式,為光盤機(jī)、磁帶機(jī)、硬盤機(jī)和網(wǎng)絡(luò)適配器設(shè)計(jì),數(shù)據(jù)率從500KB/S到2MB/S,使用AB-cable 電纜可傳6米,而使用新的CC-cable 電纜可達(dá)10米。
2.5)ECP模式:Extended Capability Port 擴(kuò)展功能并行接口,也可實(shí)現(xiàn)高速雙向數(shù)據(jù)傳輸
ECP模式是由Microsoft and Hewlett Packard提出,是對標(biāo)準(zhǔn)并口的擴(kuò)展,作為打印機(jī)和掃描儀類的外設(shè)的高級通訊模式,允許圖象數(shù)據(jù)壓縮、排隊(duì)中的FIFO(先入先出)和高速雙向通信。數(shù)據(jù)傳送速度大約2—4MB/S。
ECP協(xié)議重新定義了SPP模式的信號,如下表:
ECP模式提供了2種數(shù)據(jù)傳輸周期時(shí)序,可用于2個(gè)方向:
1. 數(shù)據(jù)周期da
2. 命令周期command cycle
命令周期又分為2種類型,RLE(Run-Length Count)和通道編址(Channel address)。
RLE方式實(shí)現(xiàn)數(shù)據(jù)的實(shí)時(shí)壓縮,壓縮率可達(dá)64:1,特別用于打印機(jī)和掃描儀傳輸大量光柵圖像數(shù)據(jù)(含有大量的相同數(shù)據(jù)串)時(shí),但必須主機(jī)和外設(shè)都支持才可以實(shí)現(xiàn)。通道編址與EPP的地址有不同,是用于一種物理設(shè)備包括多種邏輯設(shè)備的場合,比如FAX/Printer/Modem一體機(jī)。
ECP模式定義前向傳輸為主機(jī)到外設(shè),有2種前向傳輸周期,當(dāng)HostAck 為高,指示進(jìn)行da
ECP模式的前向傳輸時(shí)序:
1. 主機(jī)發(fā)送數(shù)據(jù)到數(shù)據(jù)線,并設(shè)置HostAck 為高來指示一個(gè)da
2. 主機(jī)設(shè)置HostClk為低,指示數(shù)據(jù)有效
3. 外設(shè)設(shè)置PeriphAck 為高響應(yīng)主機(jī)
4. 主機(jī)設(shè)置HostClk為高,這是邊緣觸發(fā)信號,用于使數(shù)據(jù)存入外設(shè)
5. 外設(shè)設(shè)置PeriphAck為低,指示準(zhǔn)備好接收下一字節(jié)
6. 循環(huán)重復(fù),但這次為command cycle,因?yàn)镠ostAck為低
注意:接口2側(cè)都使用FIFO ,發(fā)出的數(shù)據(jù)都認(rèn)為已被接收。在第4步,HostClk變?yōu)楦?,da
ECP模式定義反向傳輸為從外設(shè)傳輸?shù)街鳈C(jī),反向傳輸時(shí),當(dāng)并口線上數(shù)據(jù)有效,外設(shè)設(shè)置PeriphClk 為低,主機(jī)在接收數(shù)據(jù)后設(shè)置HostAck 為低。下圖描述了反向通道的command周期緊隨da
上圖也顯示出ECP和EPP協(xié)議的不同。在EPP模式,軟件可以執(zhí)行混合的讀寫操作,而不需要額外的協(xié)議;而在ECP模式,改變數(shù)據(jù)傳輸方向必須協(xié)商。主機(jī)要求反向傳輸通道需設(shè)置nReverseRequest并等待外設(shè)的nAckReverse的響應(yīng), 然后才可以進(jìn)行反向數(shù)據(jù)傳輸。另外, 如果以前為DMA傳輸,軟件必須等待DMA完成或中斷DMA(要FIFO確定準(zhǔn)確的已傳輸?shù)臄?shù)據(jù)量),然后要求反向通道。
ECP模式的反向Da
1. 主機(jī)設(shè)置nReverseRequest 為低,要求反向傳輸通道
2. 外設(shè)設(shè)置nAckReverse 為低,響應(yīng)主機(jī)
3. 外設(shè)發(fā)送數(shù)據(jù)到數(shù)據(jù)線,并設(shè)置PeriphAck 為高指示da
4. 外設(shè)設(shè)置PeriphClk為低指示數(shù)據(jù)有效
5. 主機(jī)設(shè)置HostAck 為高確認(rèn)
6. 外設(shè)設(shè)置PeriphClk為高,這是邊沿觸發(fā)信號,用于使數(shù)據(jù)存入主機(jī)
7. 主機(jī)設(shè)置HostAck為低,指示準(zhǔn)備好接收下一個(gè)字節(jié)
8. 循環(huán)重復(fù),但這次是command周期,因?yàn)镻eriphAck為低
ECP FIFO的使用,無論DMA方式或可編程I/O方式,減弱了與ISA的關(guān)聯(lián),軟件不會(huì)精確知道數(shù)據(jù)傳輸?shù)臓顟B(tài),只關(guān)心傳輸是否完成。
在Microsoft 的規(guī)格書"The IEEE 1284 Extended Capabilities Port Protocol and ISA Interface Standard"中,定義了基于ISA的ECP模式的通用寄存器和適配器的工作模式。ECP寄存器利用了定義的6個(gè)寄存器,只需要3個(gè)I/O口操作,注意寄存器的定義與工作模式有關(guān)。
ECP寄存器描述:
ECP模式在3個(gè)SPP模式并口寄存器外又定義了6個(gè)寄存器, 用于把地址或數(shù)據(jù)自動(dòng)發(fā)到并口數(shù)據(jù)線上,然后自動(dòng)產(chǎn)生地址和數(shù)據(jù)的選通(strobe)信號。
ECP的Address和Da
ECP模式并口寄存器配置圖:
ECP模式的目的是實(shí)現(xiàn)并口的即插即用(plug-and-play)性能和在Windows環(huán)境下進(jìn)行高性能雙向傳輸。ECP模式允許任一方向的高速字節(jié)傳輸,也是半雙工方式,為打印機(jī)和掃描儀設(shè)計(jì),數(shù)據(jù)率從500KB/S到1MB/S,使用AB-cable 電纜可傳6米,而使用新的CC-cable 電纜可達(dá)10米。ECP主要使用DMA而不是直接的I/O操作,目的是傳輸大的數(shù)據(jù)塊。
2.6)工作模式選擇過程(Negotiation):
一個(gè)設(shè)備可能設(shè)計(jì)為有多種工作模式,但不能同時(shí)使用,每次只能選用一種。IEEE 1284發(fā)明了協(xié)商(negotiation)方式,主機(jī)必須要判斷所連接的外設(shè)的能力以及使用的模式,決定出使用哪種IEEE1284模式,這種協(xié)商方式不會(huì)影響過去的設(shè)備,一個(gè)舊式設(shè)備不會(huì)響應(yīng)協(xié)商的時(shí)序,但符合IEEE 1284標(biāo)準(zhǔn)的設(shè)備會(huì)響應(yīng)這一時(shí)序,使主機(jī)獲得設(shè)備的ID碼(Device ID co
主機(jī)用Device ID序列來識(shí)別并口設(shè)備。Device ID是定義了外設(shè)特性和性能的ASCII字符串。因?yàn)闆]有一個(gè)授權(quán)中心來分派設(shè)備和制造商編碼,在即插即用(Plug and Play)系統(tǒng)中,主機(jī)必須能夠測定和識(shí)別加入的設(shè)備,并自動(dòng)安裝需要的設(shè)備驅(qū)動(dòng)程序。
使用IEEE 1284的所有設(shè)備,上電時(shí)都為SPP模式。主機(jī)執(zhí)行IEEE 1284工作模式選擇的過程如下:
1. 把IEEE 1284的8-bit擴(kuò)展碼(extensibility co
2. 設(shè)置SelectIn信號線為高,并設(shè)置AUTOFD為低
3. 外設(shè)然后設(shè)PError為高、ACK為低、FAULT為高、Select為高表示為為IEEE1284標(biāo)準(zhǔn)設(shè)備(如果外設(shè)不設(shè)置這些信號,主機(jī)認(rèn)為外設(shè)不是IEEE1284設(shè)備),然后做以下操作。
4. 使STROBE為低
5.使STROBE為高、AUTOFD為低
6. 如果extensibility co
7. 外設(shè)使ACK為高,指示狀態(tài)線可用
IEEE1284 擴(kuò)展碼:Extensibility Request Bytes
ECR寄存器用來設(shè)置當(dāng)前工作模式,另外也用于軟件確定安裝于PC機(jī)的并口的性能。
ECR寄存器的模式:
如果要退出Nibble、Byte或ECP模式,設(shè)置SelectIn為低,而退出EPP模式主機(jī)要設(shè)置INIT信號有效,然后外設(shè)將恢復(fù)到SPP模式。
如果一個(gè)并口既支持SPP模式,也可實(shí)現(xiàn)其他雙向模式,那么其前3個(gè)寄存器與標(biāo)準(zhǔn)并行口的寄存器完全一致,以便兼容過去的標(biāo)準(zhǔn)。
2.7)不同模式下25PIN D-sub連接器信號的不同定義:
評論