最新免费av在线观看,亚洲综合一区成人在线,中文字幕精品无码一区二区三区,中文人妻av高清一区二区,中文字幕乱偷无码av先锋

EPP接口協(xié)議的原理及實現(xiàn)PC與單片機系統(tǒng)間高速傳輸?shù)碾娐吩O(shè)計

出處:單片機與嵌入式系統(tǒng)應(yīng)用 發(fā)布于:2020-04-08 13:45:37

  前言

  單片機系統(tǒng)中常常需要具備與PC機通信的功能,便于將單片機中的數(shù)據(jù)傳送到PC機中用于統(tǒng)計分析處理;有時又需要將PC機中的數(shù)據(jù)裝入單片機系統(tǒng)中,對單片機程序進(jìn)行驗證和調(diào)試。目前常用的通信方式是串行通信,但傳輸速率太低,以9600bps計算,傳輸1MB至少需要10min(分鐘)以上。并行通信克服了串行通信傳輸速率低的缺點。標(biāo)準(zhǔn)并行口SPP(Standard Parallel Port)方式實現(xiàn)了由PC機向外設(shè)的單向傳輸,但實現(xiàn)PC機接收外設(shè)發(fā)送的數(shù)據(jù)則非常麻煩;而增強型并行口EPP(Enhanced Parallel Port)協(xié)議卻很好地解決了這一問題,能夠?qū)崿F(xiàn)穩(wěn)定的高速數(shù)據(jù)通信。

  一、EPP接口協(xié)議介紹

  EPP協(xié)議初是由Intel、Xircom、Zenith三家公司聯(lián)合提出的,于1994年在IEEE1284標(biāo)準(zhǔn)中發(fā)布。EPP協(xié)議有兩個標(biāo)準(zhǔn):EPP1.7和EPP1.9。與傳統(tǒng)并行口Centronics標(biāo)準(zhǔn)利用軟件實現(xiàn)握手不同,EPP接口協(xié)議通過硬件自動握手,能達(dá)到500KB/s~2MB/s的通信速率。

  1.EPP引腳定義EPP引腳定義如表1所列。

 

  2.EPP接口時序

  EPP利用硬件自動握手實現(xiàn)主機與外設(shè)之間的高速雙向數(shù)據(jù)傳輸,軟件只須對相應(yīng)端口寄存器進(jìn)行讀/寫操作。

 ?。?)EPP寫操作時序如圖1所示。

  CPU實現(xiàn)向外設(shè)寫數(shù)據(jù)的操作步驟如下:

  ①程序?qū)PP數(shù)據(jù)寄存器執(zhí)行寫操作;

 ?、趎Write置低;

 ?、跜PU將有效數(shù)據(jù)送到數(shù)據(jù)總線上;

 ?、躰DStrb(nAStrb)變低(只要nWait為低);

 ?、葜鳈C等待nWait變高,確認(rèn)數(shù)據(jù)發(fā)送成功;

 ?、拗鳈C等待nWait變高,確認(rèn)數(shù)據(jù)發(fā)送成功;

 ?、逧PP寫周期結(jié)束。

 ?。?)EPP讀操作時序如圖2所示。

  CPU實現(xiàn)從外設(shè)讀數(shù)據(jù)的操作步驟如下:

 ?、俪绦?qū)ο鄳?yīng)EPP端口寄存器執(zhí)行讀操作;

 ?、趎DStrb(nAStrb)置低(如果nWait為低);

  ③主機等待nWait為高,確認(rèn)數(shù)據(jù)發(fā)送成功;

 ?、苤鳈C從并行口引腳讀取數(shù)據(jù);

 ?、輓DStrb(nAStrb)置高;

 ?、轊PP讀操作周期結(jié)束。

  3.EPP端口寄存器EPP接口除了保留SPP的3個端口寄存器以外,還新增了5個端口寄存器,如表2所列。

  WAIT:Wait狀態(tài)位(1有效);

  INTR:中斷請求狀態(tài)位(1有效);

  USER1~USER3:用戶自定義;

  TMOUT:保留(EPP1.7)超時標(biāo)志位(EPP1.9)。EPP控制端口寄存器。

  EPP接口有EPP1.7標(biāo)準(zhǔn)定義,由于硬件廠商的原因,EPP現(xiàn)有兩個標(biāo)準(zhǔn):EPP1.7和EPP1.9,可以在BIOS/外圍設(shè)備/并行口(BIOS/Peripheral Setup/Parallel Port Mode)方式中進(jìn)行設(shè)置。兩者有如下不同點:

 ?。?)EPP狀態(tài)端口寄存器的位bit0,在EPP1.9中定義為TMOUT。在EPP操作時序中,如果PC機數(shù)據(jù)(地址)選通信號變低后,且在10μs時間內(nèi),外設(shè)未能將nWait置為低,則TMOUT置為1,表示延時。

 ?。?)EPP1.9標(biāo)準(zhǔn)中,只有當(dāng)nWait為低時,才能開始一個操作周期;但在EPP1.7中,無論nWait狀態(tài)如何,nAstrb(nDstrb)都會被置低,從而開始一個新的數(shù)據(jù)(地址)操作周期。

  二、EPP接口傳輸數(shù)據(jù)的一個實例

  在某單片機系統(tǒng)中,須要將單片機系統(tǒng)中數(shù)據(jù)存儲器的大量數(shù)據(jù)傳輸?shù)絇C機中進(jìn)行分析處理。EPP接口(采用EPP1.7標(biāo)準(zhǔn))硬件電路及軟件流程圖如圖3~圖5所示。

  GAL譯碼電路方程式為/O1=/I1*/I2*/I3*I4*/I5,EPP接口選通地址為2000H。當(dāng)單片機執(zhí)行如下指令:

  MOV DPTR,#2000H

  MOVX @DPTR,A

  就將寄存器A中的數(shù)據(jù)鎖存到數(shù)據(jù)總線上,便于PC機利用EPP接口進(jìn)行讀操作。

  C語言例程:

  #define SPPDATA 0x0378 //定義各寄存器地址

  #define SPPSTAT 0x0379

  #define SPPCNTL 0x037A

  #define EPPADDR 0x037B

  #define EPPDATA 0x037C

  #include

  FILE *fp;

  Int data;

  Long i;

  int k;[page]

  fp=fopen(filename,“wb”); //打開要存儲數(shù)據(jù)的文件

  outportb(SPPCNTL,0x24);

  //向控制端口發(fā)00100100代碼,初始化為讀操作模式for(i=0;i《524288;i++)

  {

  while(!((inportb(SPPSTAT))&0x80))

  //查詢是否發(fā)送完畢

  {}

  data=inportb(EPPDATA); //讀數(shù)據(jù)

  fputc(data,fp); //將數(shù)據(jù)存入文件

  }

  fclose(fp); //關(guān)閉文件

  單片機匯編語言程序為:

  FLAG1 BIT P1.7 ;標(biāo)志位

  FLAG2 BIT P3.4

  STADD EQU 0000H ;要傳輸數(shù)據(jù)段的起始地址

  NUM EQU FFFFH ;要傳輸數(shù)據(jù)端的字節(jié)個數(shù)

  COMMUN:MOV DPTR,#STADD

  COMM1:MOVX A,@DPTR

  PUSH DPH

  PUSH DPL

  MOV DPTR,#EPP_CE

  MOVX @DPTR,A

  POP DPL

  POP DPH

  SETB FLAG1 ;將P1.7置高

  CLR FLAG2 ;將P3.4置低

  JB FLAG1,$;查詢P1.7為低,即nDStrb為低,表示PC讀操作已完成

  SETB FLAG2 ;將P3.4置高

  SETB FLAG1 ;將P1.7置高

  INC DPTR

  CJNE NUM,COMM1 ;循環(huán)NUM次

  RET

  實際應(yīng)用該接口電路,能實現(xiàn)1MB/s的傳輸速率,并且性能穩(wěn)定可靠。

  如果應(yīng)用EPP1.9標(biāo)準(zhǔn),硬件電路不用變動,軟件中可以省略對nWait進(jìn)行判斷的環(huán)節(jié),速率能接近2MB/s。

  結(jié)束語

  本文系統(tǒng)介紹了EPP接口的原理,并且給出了一個利用EPP接口實現(xiàn)PC與單片機系統(tǒng)間高速傳輸?shù)膶嵗?。EPP接口協(xié)議解決雙向高速數(shù)據(jù)傳輸?shù)碾y題,在智能測量、自動控制、數(shù)據(jù)傳輸?shù)阮I(lǐng)域必將得到廣泛的應(yīng)用。

關(guān)鍵詞:EPP接口協(xié)議的原理及實現(xiàn)PC與單片機系統(tǒng)間高速傳輸?shù)碾娐吩O(shè)計接口

版權(quán)與免責(zé)聲明

凡本網(wǎng)注明“出處:維庫電子市場網(wǎng)”的所有作品,版權(quán)均屬于維庫電子市場網(wǎng),轉(zhuǎn)載請必須注明維庫電子市場網(wǎng),http://udpf.com.cn,違反者本網(wǎng)將追究相關(guān)法律責(zé)任。

本網(wǎng)轉(zhuǎn)載并注明自其它出處的作品,目的在于傳遞更多信息,并不代表本網(wǎng)贊同其觀點或證實其內(nèi)容的真實性,不承擔(dān)此類作品侵權(quán)行為的直接責(zé)任及連帶責(zé)任。其他媒體、網(wǎng)站或個人從本網(wǎng)轉(zhuǎn)載時,必須保留本網(wǎng)注明的作品出處,并自負(fù)版權(quán)等法律責(zé)任。

如涉及作品內(nèi)容、版權(quán)等問題,請在作品發(fā)表之日起一周內(nèi)與本網(wǎng)聯(lián)系,否則視為放棄相關(guān)權(quán)利。

車聯(lián)網(wǎng)時代,汽車電子的接口類型有can總線,lin總線,rs485,rs232,或者以太網(wǎng)總線等等
廣告
OEM清單文件: OEM清單文件
*公司名:
*聯(lián)系人:
*手機號碼:
QQ:
有效期:

掃碼下載APP,
一鍵連接廣大的電子世界。

在線人工客服

買家服務(wù):
賣家服務(wù):
技術(shù)客服:

0571-85317607

網(wǎng)站技術(shù)支持

13606545031

客服在線時間周一至周五
9:00-17:30

關(guān)注官方微信號,
第一時間獲取資訊。

建議反饋

聯(lián)系人:

聯(lián)系方式:

按住滑塊,拖拽到最右邊
>>
感謝您向阿庫提出的寶貴意見,您的參與是維庫提升服務(wù)的動力!意見一經(jīng)采納,將有感恩紅包奉上哦!