机电之家资源网
单片机首页|单片机基础|单片机应用|单片机开发|单片机文案|软件资料下载|音响制作|电路图下载 |嵌入式开发
培训信息
赞助商
基于uPSD3254A单片机的EPP并口通信技术
基于uPSD3254A单片机的EPP并口通信技术
 更新时间:2008-8-19 13:37:32  点击数:96
【字体: 字体颜色
摘要:介绍了并口的EPP(Enhanced Parallel Port)接口协议及其高速数据通信的原理,并在ST公司uPSD3254A单片机及其开发环境PSDsoft EXPRESS基础上完成了一个应用EPP接口协议的实现方案。

关键词:EPP协议 uPSD3254A PSDsoft EXPRESS

引言:

  在IBM公司推出PC机开始,并口已经是PC机的一部分。最初并口就是为代替串口来驱动高性能点阵式打印机[1],并口通信有SPP、EPP、ECP三种传输模式,SPP模式是半双工单向传输的,传输速率仅为15KB/S;EPP增强型模式采用双向半双工数据传输,传输速度高达2MB/S;ECP扩充型模式采用双向全双工数据传输,传输速率比EPP高。在设计和实现方面,EPP模式比ECP模式更灵活、简洁、可靠,在工业界得到了更多的实际应用[2]。本文介绍的是一种基于uPSD3254A的EPP增强并口的设计,其核心是使用uPSD323X内部的CPLD实现EPP接口与PC机上并口之间的高速硬件通信,实际测试中速度达到了900KB/S。

1 EPP协议介绍

  EPP协议是由Intel、Xircom、Zenith三家公司联合提出的,于1994年在IEEE1284标准中发布。EPP协议有EPP1.7和EPP1.9两个标准,可以在PC机的 BIOS/外围设备/并行口(BIOS/Peripheral Setup/Parallel Port Mode)方式中进行设置[3]。与传统并行口标准利用软件实现握手不同,EPP接口协议通过硬件自动握手,能达到500KB/s~2MB/s的通信速率。

1.1 EPP工作模式的寄存器和引脚定义

  PC并口采用25针的DB型阴极接口,EPP工作模式的25个引脚的定义如表1所示。

  在寄存器方面,EPP定义了8个寄存器,继承了SPP的3个寄存器,其中EPP与SPP共用状态寄存器和控制寄存器,保证了EPP模式和SPP模式软硬件兼容型,其寄存器定义如表2所示。将并口设置为EPP方式时,需要在PC机的BIOS中设置并口工作于EPP方式,寄存器组的基地址(BASE)通常设为0x378。

1.2 EPP读写周期

  为了能进行有效的EPP数据通信,必须遵循EPP的握手时序。与SPP的软件握手相比,EPP采用硬件完成的握手实现了高速的数据通信速度。EPP协议共分为四种周期:数据写周期、数据读周期、地址写周期和地址读周期,数据周期用于计算机和外设间传送数据;地址周期用于传送地址、通道、命令、控制和状态等辅助信息。

1.2.1 EPP数据/地址读周期如图1所示

  EPP数据/地址读周期CPU读操作步骤如下:

  1)程序对EPP数据寄存器(Base+4)/地址寄存器(Base+3)执行读操作

  2)nDstrb/nAstrb被置低如果nWaite信号为低,否则等待

  3)主机等待nWaite为高表示数据发送成功

  4)从并口中读取8位数据/地址

  5)nDstrb/nAstrb被置高

  6)EPP数据/地址读周期完成

1.2.2 EPP数据/地址写周期如图2所示

  EPP数据/地址写周期CPU写操作步骤如下:

  1)程序对EPP数据寄存器(Base+4)/地址寄存器(Base+3)执行写操作

  2)将nWrite信号置低(低表示写操作)

  3)将要写的数据/地址数据送到数据总线上

  4)nDstrb/nAstrb被置低如果nWaite信号为低,否则等待

  5)主机等待nWait握手信号为高表示发送成功

  6)nDstrb/nAstrb被置高

  7)EPP数据/地址写周期完成 

  其中,使用EPP1.7 (Pre IEEE 1284) 握手标准时,则nDstrb/nAstrb信号不考虑nWait是否为低,直接被置低开始一个新的读/写周期;如果使用EPP1.9握手标准,则只有在nWait信号为低时,nDstrb/nAstrb信号才会被置低开始一个新的读/写周期。但是EPP1.7和EPP1.9都要求nWait信号为高时一个读/写周期才结束[3]。

  由于nWait、nWrite、nDstrb、nAstrb等信号传输后反向(见表1),因此图1和图2 中的时序是从PC端考虑的,nWait信号表示单片机发出的原始信号,在PC端实际采用的是与单片机发出的原始信号取反后的信号。

2 uPSD323X及其开发环境介绍

  ST公司的uPSD3254A是带8032内核的Flash可编程系统器件,具有在线编程能力和超强的保密功能;256+32Kbytes的Flash存储器;片内8K的SDRAM;带有16位宏单元的3000门可编程逻辑电路(CPLD),可以实现EPP接口等一些不太复杂的接口和控制功能,50个I/O引脚等。

  由于uPSD3254A采用8032内核,因此可以完全得到Keil C51编程器的支持,PSDsoft EXPRESS是ST公司开发的基于Windows平台的一套软件开发环境。只要点击鼠标即可完成对地址锁存器、Flash、可编程逻辑电路等外设的所有配置和写入。使用PSDsoft EXPRESS工具对uPSD3200系列器件的可编程逻辑电路的操作简单、直观。

3.基于uPSD3254A的EPP接口实现

3.1 硬件接口

  EPP增强并口的速度最高可达到500KB/s~2MB/s,这对外设的接口有很高的要求,如果外设响应太慢,系统的整体性能将大大下降。但如果采用可编程逻辑器件,使接口的响应完全由硬件来完成,系统的整体性能将大大提高。这种实现方案可以达到并口中的速度极限,而且保密性好,EPP接口(EPP1.9)外设硬件接口原理如图3所示。

[1] [2] [3]  下一页
  • 上一篇: 基于单片机的等精度数字测频
  • 下一篇: SH69P42单片机在电磁炉控制中的应用
  • 发表评论   告诉好友   打印此文  收藏此页  关闭窗口  返回顶部
    热点文章
     
    推荐文章
     
    相关文章
    网友评论:(只显示最新5条。)
    关于我们 | 联系我们 | 广告合作 | 付款方式 | 使用帮助 | 机电之家 | 会员助手 | 免费链接

    点击这里给我发消息66821730(技术支持)点击这里给我发消息66821730(广告投放) 点击这里给我发消息41031197(编辑) 点击这里给我发消息58733127(审核)
    本站提供的机电设备,机电供求等信息由机电企业自行提供,该企业负责信息内容的真实性、准确性和合法性。
    机电之家对此不承担任何保证责任,有侵犯您利益的地方请联系机电之家,机电之家将及时作出处理。
    Copyright 2007 机电之家 Inc All Rights Reserved.机电之家-由机电一体化网更名-声明
    电话:0571-87774297 传真:0571-87774298
    杭州滨兴科技有限公司提供技术支持

    主办:杭州市高新区(滨江)机电一体化学会
    中国行业电子商务100强网站

    网站经营许可证:浙B2-20080178-1