利用epp接口协议实现高速数据通信ca8m5drx.doc

利用epp接口协议实现高速数据通信ca8m5drx.doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
利用EPP接口协议实现高速数据通信 摘要:如何实现PC与单片机系统间的高速数据通信,是测量控制系统中经常遇到的难题。本文系统地介绍利用EPP接口协议实现高速数据通信的原理,并从硬件、软件两方面给出一个应用EPP接口协议的设计实例。 ??? 关键词:单片机系统 高速数据通信 EPP 前言 单片机系统中常常需要具备与PC机通信的功能,便于将单片机中的数据传送到PC机中用于统计分析处理;有时又需要将PC机中的数据装入单片机系统中,对单片机程序进行验证和调试。目前常用的通信方式是串行通信,但传输速率太低,以9600bps计算,传输1MB至少需要10min(分钟)以上。并行通信克服了串行通信传输速率低的缺点。标准并行口SPP(Standard Parallel Port)方式实现了由PC机向外设的单向传输,但实现PC机接收外设发送的数据则非常麻烦;而增强型并行口EPP(Enhanced Parallel Port)协议却很好地解决了这一问题,能够实现稳定的高速数据通信。 一、EPP接口协议介绍 EPP协议最初是由Intel、Xircom、Zenith三家公司联合提出的,于1994年在IEEE1284标准中发布。EPP协议有两个标准:EPP1.7和EPP1.9。与传统并行口Centronics标准利用软件实现握手不同,EPP接口协议通过硬件自动握手,能达到500KB/s~2MB/s的通信速率。 1.EPP引脚定义 EPP引脚定义如表1所列。 表1 EPP接口引脚定义 引脚号 SPP信号 EPP信号 方? 向 说?????? 明 1 Strobe nWrite 输出 指示主机是向外设写(低电平)还是从外设读(高电平) 2~9 Data0~7 Data07 输入/输出 双向数据总线 10 Ack Interrupt 输入 下降沿向主机申请中断 11 Busy nWait 输入 低电平表示外设准备好传输数据,高电平表示数传输完成 12 PaperOut/End Spare 输入 空余线 13 Select Spare 输入 空余线 14 Autofd nDStrb 输出 数据选通信号,低电平有效 15 Error/Fault nDStrb 输入 空余线 16 Initialize Spare 输出 初始化信号,低电平有效 17 Selected Printer nAStrb 输出 地址数据选通信号,低电平有效 18~25 Ground Ground GND 地线 2.EPP接口时序 EPP利用硬件自动握手实现主机与外设之间的高速双向数据传输,软件只须对相应端口寄存器进行读/写操作。 (1)EPP写操作时序如图1所示。 CPU实现向外设写数据的操作步骤如下: ①程序对EPP数据寄存器执行写操作; ②nWrite置低; ③CPU将有效数据送到数据总线上; ④nDStrb(nAStrb)变低(只要nWait为低); ⑤主机等待nWait变高,确认数据发送成功; ⑥主机等待nWait变高,确认数据发送成功; ⑦EPP写周期结束。 (2)EPP读操作时序如图2所示。 CPU实现从外设读数据的操作步骤如下: ①程序对相应EPP端口寄存器执行读操作; ②nDStrb(nAStrb)置低(如果nWait为低); ③主机等待nWait为高,确认数据发送成功; ④主机从并行口引脚读取数据; ⑤nDStrb(nAStrb)置高; ⑥EPP读操作周期结束。 3.EPP端口寄存器 EPP接口除了保留SPP的3个端口寄存器以外,还新增了5个端口寄存器,如表2所列。 表2? 地?? 址 端口名称 方??? 向 基地址+0 SPP数据端口 写 基地址+1 EPP状态端口 读 基地址+2 EPP控制端口 写 基地址+3 EPP地址端口 读/写 基地址+4 EPP地址端口 读/写 基地址+5 EPP数据端口 读/写 基地口+6 未定义(32位传输) 读/写 基地址+7 未定义(32位传输) 读/写 EPP状态端口寄存器 WAIT INTR USER1 USER2 USER3 × × TMOUT WAIT:Wait状态位(1有效); INTR:中断请求状态位(1有效); USER1~USER3:用户自定义; TMOUT:保留(EPP1.7)超时标志位(EPP1.9)。 EPP控制端口寄存器。 × × DIR IRQEN ASTRB INIT DSTRB WRITE DIR:方向位(1输入,0输出); IRQEN:中断使能位(1有效); ASTRB:地址选通位(0有效); INIT:初始化(1有效); DSTRB:数据选通位(0有效); WRITE:读/写状态位(0:写,1:读)。 读取接口状态和控制接口都只须对相应的端口寄存器进行操作。以初始化为例: 读操作初始化:outp

文档评论(0)

beoes + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档