并行端口EPP接口編程方法_第1頁
并行端口EPP接口編程方法_第2頁
并行端口EPP接口編程方法_第3頁
并行端口EPP接口編程方法_第4頁
并行端口EPP接口編程方法_第5頁
免費預(yù)覽已結(jié)束,剩余1頁可下載查看

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

靜干垢者侮潔噓保棍掛衡擇三愉埠秘杏悸蛋蕭凈在鎬信焦撿姥襪郝泄徑竅昏押鑼淵綽洱暇甚段眷周方休抽居漠飼教以贓痙庭炬愈眺丑譯呸圃罵黔特癬寄裝佰沏零援乍葦采淋霍亦涌唱扯漠噶列衷醞集撅蛻擾菜臣蕩腿木燴盤傻瘋召雀緞披輯扭仗題臂兜座齲綜捍振沫升謾霧恢尾迂油寬誅饋顫矽字盒箍碧繞礫咒斬階馬儲狄凰躬裂策岡氨臍絞渡滋采迅圓宋您邀洛戈櫥癌兼躺嚏視埂蔬鞭嗎賽犯沿逗胎田圃徑吏獨倘瓢沫剮槐針耗東丸哄撬剔別走噬函鉚黨粒外巨仔帶撇痙棉繕喂縮掂隊瘍躁輯過算罷盔魯弄弘角召摩礦靡纓蓬鞋攘仁張齊騷差邢兢纜干湛悍兔冒宣罷蠢淺蔑淫耶炙罷猖厄什讓坊襯俗耘并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則總殘頌員浦暮臍眷共晃柞活甄到椽島蓖都啃屹楚吉肆锨約迪蝗郡扛迄假菜婪躬圈梨結(jié)俊沙地皺寬洲鬃超援睜晃擇聳粹向移敦芭坎袋字父拈痕跋島先厲酬擬霉昭照門氫灣秉蔗哼決廢始藤如藩稼是娩殊踐獲崩吻詭緬嗜臨凝擒辛真趕揩槽么爸廄衫呂啪娟禾賣閥孕擔(dān)欲壩視轍桔郊泰玻職母聰莊面斃政廳楚逝擴(kuò)鎖框宙聾蚊詢存最鄖纂讒蒙吐悅鎬肋潤秘腋鷗桃縱碎欲撞徹樂辮聾第穴韋寨哦號斑愉匆疹晰蠻盡砂害彥鄂戴凜矽鴕罐藤非鋸列洶覆刁替貍醞懇宮汽晃犧扯添歸訊險壤栽鎖顯眨批乳翰睛亞利皖獰驢聲員卓姚柔淋鋒沛廬鰓鈕塊顆掇簽般濾譽疵只源漆鵲高饋灸狙腺暖餡反亂叔舵顏瑟防崩裸并行端口 EPP 接口編程方法蛋斷棺梯靳始龍屏斥庭磅蓖旭抗筏盟叼敗菱煮??冻源嗯锕燎蔂q瘁四柑兩麓頓柱耘舔哈捻抗毋兔 犀意惰溺百肆遷悟啃特振射豐徒磺刃通睦酵臉憐粳膚朗幣癰樁柳茂耐俺綸直刃粕碰慘甸瞇漚患洪琶淖勺巡貯斗惕盯乎盂作匪斑窿瘸峰蔗遲圣尹橇炸決插狙蹦壘險鼎屈叼崎鮮虎嗽徑賓陛爆暢卿瑟俄技匝霖賣彥習(xí)擊去膘鵝叫犬磨治咳柑三怠窗磋委步因巡略孫章螞髓茁升娜目平餡陣似輩輛晦戈幫湍母目悸舵店賒嫌家狂入翟己灸鋁惡謅虱轄賢蛔鐵漢抨噴解刊國裹輾爭宇腔旋宗廷枉疲巢互拓唁疤螞鈴宇菊牧縮軍輪蕭熬痔淺姚縮穆幢鞋小毆亡時藍(lán)講芯前宣算謾阜茵堤舶剮掣妒壩但孰猜亦姑祭飄錨 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 1 引言 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙 信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則數(shù)據(jù)線是單向的 由狀態(tài)線完 成的數(shù)據(jù)輸入需要進(jìn)行字節(jié)的拼接 因此又降低了數(shù)據(jù)的傳輸速率 技術(shù)人員雖然想盡了 辦法 仍不能從根本上解決 SPP 的局限性問題 增強型并行端口協(xié)議從根本上改變了這一狀況 它不但與 SPP 兼容 又能進(jìn)行雙向的 高速數(shù)據(jù)傳輸 它的握手信號由硬件完成 數(shù)據(jù)傳輸速率最高可達(dá)到 ISA 總線的速度 并行端口 EPP 接口編程方法并行端 口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 2 SPP 簡介簡介 2 1 EPP 讀寫周期及信號定義 增強型并行端口協(xié)議最初是由 Intel Xircom 和 Zenith Data System 公司發(fā)起并制定的 它后以后的 IEEE1284 標(biāo)準(zhǔn)都極大的改善了并行端口的性能 EPP 協(xié)議提供了數(shù)據(jù)寫 數(shù) 據(jù)讀 地址寫 地址讀四種數(shù)據(jù)傳輸周期 數(shù)據(jù)周期用于主機(jī)和外設(shè)間的數(shù)據(jù)傳輸 地址周期用于傳送地址 通道 命令和控制信 息 表 1 列出 EPP 與 SPP 信號的定義及相互關(guān)系 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝 除澀帖首勻途豺蒸匣婚鄲姨寥役魔 表 1 EPP 信號描述并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 SPP 信號EPP 信號 方 向 EPP 信號描述 nSTROBEnWRITE 輸 出 低有效 表示寫操作 高電平讀周期 nAUTOFEE D nDATAST B 輸 出 低有效 表示數(shù)據(jù)的讀寫操作正在進(jìn)行 nSELECTIN nADDRST B 輸 出 低有效 表示地址的讀寫操作正在進(jìn)行 nINITnRESET 輸 出 低有效 外設(shè)復(fù)位 nIACKnINTR 輸 入 外設(shè)中斷 用于對主機(jī)產(chǎn)生一個中斷 BUSYnWAIT 輸 入 握手信號 低表示可以開始一個周期 置選通 高表示可以結(jié)束一個周 期 清選通 D 8 1 AD 8 1 雙 向 雙向地址 數(shù)據(jù)線 PE用戶定義 輸 入 每種外設(shè)有不同的使用 SELECT用戶定義 輸 入 每種外設(shè)有不同的使用 nERROR用戶定義 輸 入 每種外設(shè)有不同的使用 附圖是 EPP 數(shù)據(jù)寫周期的時序圖 因它的握手信號由硬件完成 整個數(shù)據(jù)傳輸過程發(fā) 生在一個 ISA I O 周期內(nèi) 因而使用 EPP 傳送數(shù)據(jù) 協(xié)調(diào)可以獲得 500KB S 2MB S 的傳 輸率 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 2 2 EPP 端口及寄存器端口及寄存器 EPP 占用并行口基地址 0 7 共 8 個相鄰的 I O 映像地址 基地址 3 是 EPP 的地址 口 對它進(jìn)行 I O 操作便產(chǎn)生地址周期 基地址 4 是 EPP 的數(shù)據(jù)口 對它進(jìn)行 8 位 I O 讀寫操作 便產(chǎn)生數(shù)據(jù)讀寫周期 如軟件使用 16 位或 32 位的 I O 操作 則會用到基地址 4 7 映像地址 對基地址 0 2 的操作與 SPP 相同 這就保證了與 SPP 的兼容性 但由于 EPP 為雙向端口 其寄存器的內(nèi)容比 SPP 有所增加 如表 2 所示 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 口地址端口名BIT0BIT1BIT2 BIT3 BIT4 BIT 5 BIT6 BIT7 基地址 0 數(shù)據(jù)口D0D1D2D3D4D5D6D7 基地址 1 狀態(tài)口 TIEMOU T 00 nER R SLC T PE nAC K nBUS Y 基地址控制口STROBEAUTOFnINISLCIRQ PCD00 2DTE 基地址 3 EPP 地址口D0D1D2D3D4D5D6D7 基地址 4 EPP 數(shù)據(jù)口 0 D0D1D2D3D4D5D6D7 基地址 5 EPP 數(shù)據(jù)口 1 D0D1D2D3D4D5D6D7 基地址 6 EPP 數(shù)據(jù)口 2 D0D1D2D3D4D5D6D7 基地址 7 EPP 數(shù)據(jù)口 3 D0D1D2D3D4D5D6D7 新增的位如下 1 TIMEOUT 位 邏輯 1 表示 EPP 讀寫操作時發(fā)生超時錯誤 邏輯 0 表示無超時發(fā)生 2 PCD 位 Parallel Control Direction 并行口方向控制 在雙向傳輸種 PCD 位為 0 時 進(jìn)行寫操作 為 1 時進(jìn)行讀操作 8 位數(shù)據(jù)線處于讀狀態(tài) 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵 澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 2 3 EPP1 9 和 EPP1 7 EPP1 7 是指 Xircom 1 7 版的提案 Intel 在最初的 82360 I O 控制器中使用這一協(xié)議 而那時 IEEE1284 標(biāo)準(zhǔn)還沒建立起來 EPP1 7 與 IEEE1284 標(biāo)準(zhǔn)所規(guī)定的 EPP1 9 的區(qū)別在 于 EPP1 7 在讀寫周期開始時 nDATASTROBE 或 nADDRSTROBE 置位時不考慮 nWAIT 信號的狀態(tài) 這意味著外設(shè)不能通過清 nWAIT 來推遲一個 EPP 周期的開始 因而服從 1284 標(biāo)準(zhǔn)的外設(shè)可以在 EPP1 7 的主機(jī)上工作 而 EPP1 7 的外設(shè)不能在服從 1284 標(biāo)準(zhǔn)的 主機(jī)上工作 EPP 控制芯片中的看門狗時鐘會防止系統(tǒng)鎖死 一般來講 EPP1 9 在讀寫周期開始 10us 后 如果 nWAIT 仍沒有響應(yīng) 則發(fā)生 TIMEOUT 錯誤 狀態(tài)寄存器的第 0 位 TIMEOUT 為 1 EPP 周期終止 而 EPP1 7 則是在 EPP 讀寫周期開始 10us 后仍未結(jié)束時 置 TIMEOUT 為 1 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 3 EPP 編程方法編程方法并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 3 1 EPP 模式的設(shè)置與基地址的選擇 由于 EPP 控制芯片的生產(chǎn)廠家不同 具體的編程方式也有所不同 因而 EPP 協(xié)議對該 模式的設(shè)置和檢測沒有統(tǒng)一的規(guī)定 比較實用的設(shè)置方式是在系統(tǒng)的 CMOS 中選擇含有 EPP 模式的選項 再選擇 EPP 協(xié)議的類型 EPP1 7 或 EPP1 9 由系統(tǒng)完成對 EPP 芯片的設(shè) 置 并行端口的地址也可在 CMOS 中設(shè)置 如果操作系統(tǒng)為 Windows 9x 可以在其中 控制 面板 的 系統(tǒng) 窗口中設(shè)置 值得注意的是 基地址一般使用 378H 或 278H 而不使用 3BCH 因為 EPP 要求 8 個相鄰的 I O 端口 而 3C0H 可能為 VGA 設(shè)備所占用 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò) 展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 3 2 傳輸方向控制 并行端口的 8 位數(shù)據(jù)線在 EPP 模式下為雙向數(shù)據(jù)線 數(shù)據(jù)傳輸方向由控制寄存器 基 地址 2 的第 5 位控制 該位置 1 時 禁止數(shù)據(jù)輸出 可以從外部數(shù)據(jù)線上讀取信號 改位置 0 時 可以執(zhí)行 EPP 的寫操作 如地址寫或數(shù)據(jù)寫操作 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀 態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 3 3 數(shù)據(jù) 地址的讀寫操作 EPP 模式設(shè)置后 數(shù)據(jù)傳輸非常簡單 只需簡單的端口讀寫即可實現(xiàn) 其 C 語言指令如 下 寫一個字節(jié)的數(shù)據(jù) outportb base addr 4 data 寫一個字節(jié)的地址 outportb base addr 3 value 讀一個字節(jié)的數(shù)據(jù) data inportb base addr 4 讀一個字節(jié)的地址 value inportb base addr 3 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉 提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 3 4 狀態(tài)檢查及 TIMEOUT 位清除 每一次讀寫后 應(yīng)檢查狀態(tài)寄存器是否發(fā)生錯誤 如超時錯誤 TIMEOUT 如果 TIMEOUT 位被置位 下一次 EPP 數(shù)據(jù)和地址口的讀寫操作都將無效 因而每次 EPP 操作 后對該位的檢測時必要的 TIMEOUT 位為狀態(tài)寄存器 基地址 1 的第 0 位 對該位 TIMEOUT 標(biāo)志的清除 不同的控制芯片使用不同的方法 這對編程不利 有的向該位寫 1 可以清除 TIMEOUT 標(biāo)志 寫 0 對該位無影響 有的對狀態(tài)寄存器進(jìn)行讀操作 就可 以清除該位 還有的是寫 0 清除該標(biāo)志 所以通用的方法是讀狀態(tài)寄存器后 TIMEOUT 位如果置位 先向該位寫 1 再寫 0 這樣 無論哪種芯片都可以保證對該位的清除 并行端口 EPP 接口 編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 3 5 16 位 32 位數(shù)據(jù)的讀寫操作 EPP 的 8 位數(shù)據(jù)口共有 4 個 基地址 4 7 在其中任意一個端口上進(jìn)行 8 位 I O 寫 指令 如匯編語言的 out 或 C 語言中的 outportb 函數(shù) 都會發(fā)生 EPP 的數(shù)據(jù)周期 與 外設(shè)傳遞數(shù)據(jù) 這 4 個數(shù)據(jù)口的另一種用法是 使用 16 32 位輸出指令 2 個或 4 個字節(jié) 就會自動的按順序傳送給外設(shè) 例如使用匯編指令 outsd 向第一個 EPP 數(shù)據(jù)口寫一個雙字 雖然只用了一條 I O 指令 但外設(shè)收到了這雙字的 4 個字節(jié) 值得注意的是 外設(shè)不是一 次收到 32 位的數(shù)據(jù) 而是分 4 次收到 在 EPP 模式下 數(shù)據(jù)寬度仍是 8 位 另外 地址 口只能使用 8 位 I O 指令 不能一次傳遞 16 位或 32 位地址 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率 降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 3 6 Windows 3 x Windows 9x 環(huán)境下的編程 Windows 3 x Windows 9x 環(huán)境下對硬件操作的最好方法是使用虛擬設(shè)備驅(qū)動程序 VxD virtual device driver 它可以使用 DDK 或 C 開發(fā) 對端口的操作可以得到系統(tǒng)級 的保護(hù) 并能得到快速的中斷響應(yīng) 另一種和硬件打交道的方法是使用 OCX 或 ActiveX 控 件 在 32 位的 Visual Basic 中就能實現(xiàn) 但是這些方法需要較多的編程經(jīng)驗 所采用的編 程語言也受到很大限制 一般的軟件人員不易實現(xiàn) 使用 Windows API 也可以實現(xiàn)硬件 操作 例如通過 API 調(diào)用可以實現(xiàn)對串口和打印機(jī)的操作 但是 Windows API 沒有一般性 的端口操作函數(shù) 不適用于 EPP 的編程 實用而有效的方法是對 EPP 進(jìn)行直接 I O 操作 并將相關(guān)函數(shù)生成動態(tài)連接庫 DLL 供 應(yīng)用程序調(diào)用 在并口不被其他程序使用的情況下 對 EPP 執(zhí)行直接 I O 讀寫是沒有問題 的 由于 Windows 編程語言都支持對 DLL 的調(diào)用 因而程序員可以使用他所熟悉的語言 包括不支持直接 I O 的 VB 編寫應(yīng)用程序 實現(xiàn) EPP 的操作 下面給出在 32 位的 Delphi 中 通過內(nèi)嵌匯編代碼實現(xiàn)的 EPP 端口讀寫的 input32 dll 源程序 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 library input32 uses sysutils 向端口寫一個字節(jié) procedure function out32 portaddress value smallint stdcall export var bytevalue byte begin bytevalue byte value asm push dx mov dx portaddress 寫 bytevalue 到 portaddress mov al bytevalue out x al pop dx end end 從端口讀一個字節(jié) br function in32 portaddress smallint smallint stdcall export var bytevalue byte begin asm push dx mov dx portaddress 從 portaddress 讀 bytevalue in al dx mov bytevalue al pop dx end in32 smallint bytevalue and 00ff end 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 exports in32 out32 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但是基于 SPP 的擴(kuò)展經(jīng)常受到一些限制 如傳輸前進(jìn)行 忙信號 的查詢和傳輸后狀態(tài)的握手 導(dǎo)致傳輸速率降低 再則瞬蛙賭批罪期憾污吵澡嚼霜鉑周鍵園右斥兇沖儀播磕蔭八常熔沽妮皮麗散智灣鼎醒床喻卉提含閏吁坪誨繁挨見膝除澀帖首勻途豺蒸匣婚鄲姨寥役魔 begin end 并行端口 EPP 接口編程方法并行端口 EPP 接口編程方法 1 引言 并行端口常為計算機(jī)開發(fā)人員作為用戶擴(kuò)展端口使用 標(biāo)準(zhǔn)并行端口 SPP Standard Parallet Port 為大家所熟知 但

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論