EPP 接口高速数据通信管理论文 摘要:如何实现 PC 与单片机系统间的高速数据通信,是测量控制系统中常常遇到的难题。本文系统地介绍利用 EPP 接口协议实现高速数据通信的原理,并从硬件、软件两方面给出一个应用EPP 接口协议的设计实例。 关键词:单片机系统高速数据通信 EPP 前言 单片机系统中常常需要具备与 PC 机通信的功能,便于将单片机中的数据传送到 PC 机中用于统计分析处理;有时又需要将 PC机中的数据装入单片机系统中,对单片机程序进行验证和调试。目前常用的通信方式是串行通信,但传输速率太低,以 9600bps 计算,传输 1MB 至少需要 10min(分钟)以上。并行通信克服了串行通信传输速率低的缺点。标准并行口 SPP(StandardParallelPort)方式实现了由 PC 机向外设的单向传输,但实现 PC 机接收外设发送的数据则非常麻烦;而增强型并行口 EPP(EnhancedParallelPort)协议却很好地解决了这一问题,能够实现稳定的高速数据通信。 一、EPP 接口协议介绍 EPP 协议最初是由 Intel、Xircom、Zenith 三家公司联合提出的,于 1994 年在 IEEE1284 标准中发布。EPP 协议有两个标准:EPP1.7 和 EPP1.9。与传统并行口 Centronics 标准利用软件实现握手不同,EPP 接口协议通过硬件自动握手,能达到 500KB/s~2MB/s的通信速率。 1.EPP 引脚定义 EPP 引脚定义如表 1 所列。 表 1EPP 接口引脚定义 引脚号 SPP 信号 EPP 信号方向说明 1StrobenWrite 输出指示主机是向外设写(低电平)还是从外设读(高电平) 2~9Data0~7Data07 输入/输出双向数据总线 10AckInterrupt 输入下降沿向主机申请中断 11BusynWait 输入低电平表示外设准备好传输数据,高电平表示数传输完成 12PaperOut/EndSpare 输入空余线 13SelectSpare 输入空余线 14AutofdnDStrb 输出数据选通信号,低电平有效 15Error/FaultnDStrb 输入空余线 16InitializeSpare 输出初始化信号,低电平有效 17SelectedPrinternAStrb 输出地址数据选通信号,低电平有效 18~25GroundGroundGND 地线 2.EPP 接口时序 EPP 利用硬件自动握手实现主机与外设之间的高速双向数据传输,软件只须对相应端口寄存器进行读/写操作。 (1)EPP 写操作时序如图 1 所示。 CPU 实现向外设写数据的操作步骤如下: ① 程序对 EPP 数据寄存器执行写操作; ②nWrite 置低; ③CPU 将有效数据送到数据总线上; ④nDStrb(n...