基于uPSD323X的EPP增强并口的接口技术

发布者:幸福自在最新更新时间:2012-04-25 来源: dzsc关键字:uPSD323X  EPP增强并口  接口技术 手机看文章 扫描二维码
随时随地手机看文章

  引言

  在IBM公司推出PC机时,并行端口已经是PC机的一部分。并口设计之初,是为能代替速度较慢的串行端口驱动当时的高性能点阵式打印机。并口可以同时传输8位数据,而串口只能一位一位地传输,传输速度慢。随着技术的进步和对传输速度要求的提高,最初的标准并行端口即SPP模式的并行端口的速度已不能满足要求。1994年3月,IEEE 1284委员会颁布了IEEE 1284标准.IEEE 1284标准提供的在主机和外设之间的并口传输速度,相对于最初的并行端口快了50~100倍。IEEE 1284标准定义了5种数据传输模式,分别是兼容模式、半字节模式、字节模式、EPP模式和ECP模式。其中EPP模式、ECP模式为双向传输模式。EPP模式比ECP模式更简洁、灵活、可靠,在工业界得到了更多的实际应用。本文介绍的一种基于uPSD323X的EPP增强并口的设计核心是,使用uPSD323X内部的CPLD实现EPP接口。

  1 EPP接口协议介绍

  EPP(Enhanced Parallel Port,增强并行端口)协议最初是由Intel、Xirocm、Zenith三家公司联合提出的,于1994年在IEEE1284标准中发布。EPP协议有两个标准:EPP1.7和EPP1.9。EPP接口控制信号由硬件自动产品,整个数据传输可以在一个ISA I/O周期完成,通信速率能达到500KB/s~2MB/s。

  EPP引脚定义如表1所列。

  表1 EPP接口引脚定义

对应并口引脚 EPP信号 方 向 说   明
1 nWrit 输出 指示主机是向外设写(低电平)还是从外设读(高电平)
2~9 Data0~7 输入/输出 双向数据总线
10 Interrupt 输入 下降沿向主机申请中断
11 nWait 输入 低电平表示外设准备好传输数据,高电平表示数据传输完成
12 Spare 输入 空余线
13 Spare 输入 空余线
14 nDStrb 输出 数据选通信号,低电平有效
15 Spare 输入 空余线
16 Ninit 输出 初始化信号,低电平有效
17 nAStrb 输出 地址数据选通信号,低电平有效
18~25 Ground GND 地线

  1.1 EPP接口时序

  EPP协议定义了4种并口周期:数据写周期、数据读周期、地址写周期和地址读周期。数据周期用于计算机与外设间传送数据;地址周期用于传送地址、通道、命令、控制和状态等辅助信息。图1是EPP数据写的时序图。图1中,nIOW信号实际上在进行EPP数据写时并不会产生,只不过是表示所有的操作都发生在一个I/O周期内。在t1时刻,计算机检测nWait信号,如果nWait为低,表明外设已经准备好,可以启动一个EPP周期了。在t2时刻,计算机把nWrite信号置为低,表明是写周期,同时驱动数据线。在t3时刻,计算机把nDataStrobe信号置为低电平,表明是数据周期。当外设在检测到nDataStrobe为低后读取数据并做相应的数据处理,且在t4时刻把nWait置为高,表明已经读取数据,计算机可以结束该EPP周期。在t5和t6时刻,计算机把nDataStrobe和nWrite置为高。这样,一个完整的EPP数据写周期就完成了。如果就图1中的nDataStrobe信号换为nAddStrobe信号,就是EPP地址写周期。

  图2是EPP地址读周期。与EPP写周期类似,不同的是nWtrite信号置为高,表明是读周期,并且数据线由外设驱动。

  从EPP读、写周期可以看出,EPP模式的数据传输过程是一个信号互锁的过程。以EPP写周期为例子,当检测到nWait为低后,nDataStrobe控制信号就会变低,nWait状态信号会由于nDataStrobe控制信号的变低为而高。当计算机检测到

  nWait状态信号变高后,nDataStrobe控制信号就会变高,一个完整的EPP写周期结束。因此,EPP数据的传输以接口最慢的设备来进行,可以是主机,也可以是外设。

  1.2 EPP增强并口的定义

  EPP增强并口模式使用与标准并口(SPP,Standard Paralled Port)模式相同的基地址,定义了8个I/O地址。基地址+0是SPP数据口,基地址+1是SPP状态口,基地址+2是SPP控制口。这3个口实际上就是SPP模式下的数据、状态和控制口,保证了EPP模式和SPP模式的软硬件兼容性。[page]

  基地址+3是EPP地址口。这个I/O口中写数据将产生一个连锁的EPP地址写周期,从这个I/O口中读数据将产生一个连锁的EPP地址读周期。在不同的EPP应用系统中,EPP地址口可以根据实际需要设计为设备选择、通道选择、控制寄存器、状态信息等。给EPP应用系统提供了极大的灵活性。

  基地址+4是EPP数据口。向这个I/O口中写数据将产生一个连锁的EPP数据写周期,从这个I/O口读数据将产生一个连锁的EPP数据写周期。基地址+5~+7与基地址+4一起提供对EPP数据口的双字操作能力。EPP允许主机在此个时钟周期内写1个32位双字,EPP电路再把32位双字拆为个字节依次从EPP数据口中送出去。也可以用其所长6位字方式进行数据传送。

  由于EPP通过硬件自动握手,对EPP地址口和EPP数据口的读写操作都自动产生控制信号而无需软件生成。

  2 uPSD323X及其开发环境PSDsoft EXPRESS

  ST公司的uPSD323X是带8032内核的Flash可编程系统器件,将于8032 MCU、地址锁存器、Flash、SRAM、PLD等集成在一个芯片内。其主要特点如下:具有在线编程能力和超强的保密功能;2片Flash保存器,1片是128K或者256K的主Flash存储器,另一片是32K的从Flash存储器;片内8K的SDRAM;可编程的地址解码电路(DPLD),使存储器地址可以映射到8032寻址范围内的任何空间;带有16位宏单元的3000门可编程逻辑电路(CPLD),可以实现EPP接口等及一些不太复杂的接口和控制功能;2个异步串口、I2C接口、USB接口、5通道脉冲宽度调节器、50个I/O引脚等。由于uPSD323X采用的是8032内核,因此可以完全得到Keil C51编程器的PSDsoft EXPRESS是ST公司针对PSD系列产品(包括uPSD)开发的基于Windows平台的一套软件开发环境。经过不断升级,目前最新版是PSDsoft EXPRESS 7.9。它提供非常容易的点击设计窗口环境用户不需要自己编程,也不需要了解HDL语言,只有点击鼠标即可完成对地址锁存器、Flash、可编程逻辑电路等外设的所有配置和写入。它支持所有PSD器件的开发,使用PSDsoft EXPRESS工具对uPSD323X系列器件的可编程逻辑电路的操作简单、直观。PSDsoft EXPRESS工具可以在ST网站(www.st.com/psd)免费下载。

  3 用uPSD323X实现EPP接口设计

  3.1 硬件接口

  EPP增强并口的速度最高可达到500KB/s~2MB/s,这对外设的接口设计提供了一个很高的要求,如果外设响应太慢,系统的整体性能将大大下降。用户可编程逻辑器件,系统的整体性能将大大降低。用户可编程逻辑器件,如FPGA(Field Programmable Gates Array,现场可编程门阵列)和CPLD(Complex Programmable Logic Device,复杂可编程逻辑器件),可以实现EPP增强并口的接口设计,这种实现方案可以达到并口中的速度极限,并且保密性好。ST公司的uPSD323X内部集成了可编程逻辑电路(CPLD),因此使用uPSD323X可以很好地实现EPP增强并口的接口设计。

  EPP接口(EPP1.7)外设硬件接口原理如图3所示。在本设计中,uPSD323X通过中断的方式接收PC机并口的数据,并且当外设准备好数据上传到PC机时,PC机采用的也是中断方式接收外设的数据。

  在上述硬件电路的基于上实现EPP并口通信还需做两部分的工作:一部分工作是在PSDsoft EXPRESS工具中完成对CPLD 的数据的锁存;另一部分工作是在KEIL C51环境下编写中断服务程序,实现EPP数据的读取和发送。

  图3

  3.2 对CPLD的编程及其实现数据锁存的过程

  在PSDsoft EXPRESS工具中,将PA端口(EPPD0~EPPD7)配置成带有时钟上升沿触发的寄存器类型(PT clocked register)的输入宏,PB0(nWait)配置成上升沿触发的D类型寄存器(D-type register)的输出宏,PB3(nWrite)、PB4(nDstrb)、PB2(nAstrb)配置成CPLD逻辑输入(logic input)口。NDstrb信号和nAstrb信号各自取反再相与后的值作为输入宏单元和输出宏单元的时钟。上述对PA、PB端口的配置用方程式表示如下:

PORTA EQUATIONS:
=======================
!EPPD7_LD_0=nAstrb & nDstrb;
EPPD0.LD=EPPD3_LD_0.FB;
!EPPD3_LD_0=nAstrb & nDstrb;
EPPD1.LD=EPPD3_LD_0.FB;
!nWait_C_0=nAstrb & nDstrb;
EPPD2.LD=EPPD3_LD_0.FB;
EPPD3.LD=EPPD3_LD_0.FB;
EPPD4.LD=FPPD7_LD_0.FB;
EPPD5.LD=EPPD7_LD_0.FB;
EPPD6.LD=EPPD7_LD_0.FB;
EPPD7.LD=EPPD7_LD_0.FB;
PORTB EQUATIONS:
=======================
nWait.D:=1;
nWait.PR=0;
nWait.C=nWait_C_0.FB;
nWait.OE=1;
nDstrb.LE=1;
nAstrb.LE=1;

  EPP数据的锁存过程如下:以计算机向外设传输数据(即EPP数据写周期)为例子,计算机首先检测nWait信号,如果nWait为低计算机把nWrite信号置为低,表明是写周期,同时将数据放到数据总线上,然后置低nDstrb信号。此时,nDstrb信号会出现一个上升沿,此上升沿会将PA端口的数据锁存到输入宏;同时,此上升沿使nWait信号变高,表示外设正忙阻计算机发数年。当计算机检测到nWait信号为高后就会将数据握手信号nDstrb变高,EPP数据写周期结束。上述EPP数据的锁存和nWait握手信号的产生都由硬件产生,因此数据传输速度快。整个数据传输过程可以在一个I/O周期内完成,锁存到输入宏的数据的读取和nWait信号的清除则在外部中断0服务程序软件完成。

  3.3 中断服务程序的功能描述及流程

  由硬件原理图可以看出,EPP并口的nDstrb和nAstrb信号线分别连到uPSD323X的外部中断定和外部中断1引脚。当发生EPP数据读写时,nDstrb信号就会产生一个下降沿,引起外中断定中断。当发生EPP地址读写时,nAstrb信号就会产生一个下降沿,引起外中断1中断。外部中断0和外部中断1的中断服务程序的功能是相同的,只不过前者接收或发送的是数据而后者是地址、命令等。以外部中断0的中断服务程序为例,详细介绍数据正向传输(计算机向外设发送数据)和反向传输(外设向计算机传送数据)时中断服务程序的功能。外部中断0中断服务程序流程如图4所示。

  (1)数据正向传输

  当发生EPP数据写周期时,即数据正向传输时,计算机首先检测nWait信号。如果nWait为低,表示外设已准备好接收数据。计算机把nWrite信号置为低,表明是写周期,同时将数据放到数据总线上,然后置低nDstrb。NDstrb信号就会产生一个下降沿,此下降沿一方面将PA端口的数据锁存到输入宏并使nWait信号变高,表示外设正忙另一方面引起外部中断0中断,在外部中断0的中断服务程序中读取输入宏锁存的数据,然后将nWait信号清零通知计算机现在外设已经准备好可以再次接收数据了。

  (2)数据反向传输

  外设准备好数据需要上传到计算机时,uPSD323X就会将数据放到PA端口,同时置低Intr信号线,向计算机申请一个中断,计算机中由一个硬件驱动程序来处理并口的硬件中断。驱动程序在并口中断服务程序中,通过读取EPP数据口获得外设上传的数据。由于EPP接口的握手信号由硬件产生,当计算机读取EPP数据口时同样会检测nWait信号。如果nWait为低,计算机把nWrite信号置高,表明是读周期,然后置低nDstrb,nDstrb信号就会产生一个下降沿。此下降沿使nWait信号变高,同时引起uPSD323X外部中断定中断。在外部中断0的中断服务程序中,为确保计算机将PA端口的数据取走,需不断检测nDstrb是否为高。当nDstrb为高时,表示计算机已将PA端口听数据读走,然后中断服务程序将nWait置低,EPP数据读周期结束。

  结语

  本文系统地介绍了EPP增强并口协议,并给出使用ST公司的uPSD323X系列器件实现EPP增强并口的接口方法。此方案不需要外接门电路,保密性好,成本低。

关键字:uPSD323X  EPP增强并口  接口技术 引用地址:基于uPSD323X的EPP增强并口的接口技术

上一篇:PCI通用接口芯片CH361应用接口电路
下一篇:基于CH371的实用USB接口设计

推荐阅读最新更新时间:2024-05-02 22:02

硬盘驱动器接口技术与嵌入式应用整合方案
     目前,硬盘驱动器采用的主流接口是高技术配置接口标准(ATA),即IDE接口,而且绝大多数硬盘驱动器都采用了并行ATA接口。部分硬盘驱动器同时也支持CF (Compact Flash)规范、安全数字输入/输出(SDIO)标准和串行ATA规范。由于并行ATA和CF是便携手持市场的最普遍的两个标准,因此本文侧重讨论这两个规范。CF 3.0规范能够在与标准IDE完全相同的真IDE模式下操作。与CF2.1相比,CF3.0增加了极端直接内存访问(Ultra DMA)模式。   通常,硬盘驱动器并不需要支持所有的模式。目前,1.8英寸硬盘能够支持所有的模式,1英寸硬盘能支持到UDMA4模式。考虑到便携消费类市场对尺寸和功耗的要求,
[嵌入式]
嵌入式U盘读写器接口技术和系统设计
引言 随着USB技术和闪存技术的飞速发展,移动存储设备的速度和容量日新月异,但在工业控制的上位机和下位机之间,数据传输依然采用传统的串并口技术,特别对一些前端的便携式采集系统,需要采集后临时存储,再拿回来传给作为上位机的PC机进行数据处理,给人们带来很多不变,为此,本文提出了一种方法--利用U盘的便捷特性开发一种基于嵌入式的USB读写器,方便地将采集数据以文件方式写入U盘,PC机不需要任何特殊驱动便可以完成对数据的处理回放。利用本方法可以彻底解决下位机与PC机之间的数据传输难的问题。 1 硬件设计 系统采用TI公司的MSP430F149作为MCU,Cypress公司的SL811HS作为USB设备控制器,充分发挥各自优势
[应用]
解读:科幻电影《阿丽塔:战斗天使》中的脑-机接口技术
电影《阿丽塔:战斗天使》是继《流浪地球》热播后的又一科幻巨作。影片讲述:一个博士在废铁中捡到一个只有脑袋和上半身的少女,将其改造并授予其机械身体,随着少女的苏醒并开始寻找自己身世之谜的故事。 影片呈现了一个人机融合极为普遍的未来世界。各种各样的半机械人,都是基于在现阶段的一项脑-机接口技术下得以实现。毕竟,离开大脑的指挥,再强大的机械肢体也只能是一堆废铜烂铁。 事实上,机-接口技术早已不属于纯科幻,现实生活中已有了不少应用,只是和电影《阿丽塔:战斗天使》中描绘的还有一定的差距。 1、脑-机交互的新方式 现阶段,我们和计算机的交互的方式主要通过键盘。随着人工智能的快速发展,语音交互为大家带来了不少便利,而脑-机接口技术的
[机器人]
FPGA并行数字序列传输与接口技术应用
  1 引言   FPGA 技术在国内外经过历时十余载的以硬件、系统及应用设计为主要内容的迅速发展 之后,其现代信息处理与控制技术的发展已开始崛起。显然,一系列以乘法和加法为主的现 代信息处理算法能够发挥FPGA 全并行算法的优势,然而,算法中反复遇到的数字信息在节 点与模块之间的序贯传递和交接,则给多路并行处理过程带来了时差和异步的问题。例如, 系统辨识 的最小二乘参数估计算法中,信息压缩矩阵与模型参数估计向量在并行地进行着 递推计算,而无数次循环的中间结果则需要进行首尾交接;人工神经网络 的训练与执行中 同一层的所有节点的各路输入在进行着并行的加权求和与活化函数的代入计算,但层与层之 间则需要进行节点间的数据交错传递;同样
[嵌入式]
显示控制器S6B0724的接口技术
引言 S6B0724 是Samsung公司1999年推出的一款大规模的显示控制驱动芯片,用于控制和驱动点阵式液晶屏。这款显示控制芯片将控制电路、RAM和驱动电路集成在单一芯片中,使其在系统成本方面具有优势。SEP3203是由东南大学国家ASIC工程中心设计的一款基于ARM7TDMI内核的16/32位嵌入式微处理器。虽然SEP3203自带LCD控制器,但是其信号适用于不带RAM的灰度或彩色液晶屏,不支持在工控系统中常使用的带RAM的黑白液晶显示屏,所以工控系统应用中需要通过外接显示控制器来实现液晶显示。下面介绍S6B0724显示控制器在以SEP3203无核心的工控系统中的应用。 1 系统介绍 1.1 设计要求 系统要求通过总
[嵌入式]
用68HC908GP32单片机实现EPP增强并口接口技术
摘要:本文介绍了计算机并口的几种操作模式,给出了实现EPP接口设计的几种方案;着重介绍用Motorola公司的68HC908GP32单片机实现EPP接口设计,并给出了一个GP32单片机实现的数据采集系统的设计方案。 关键词:EPP 增强并口 单片机 68HC908GP32 一、计算机并口操作模式概述 1.SPP模式 SPP(Standard Parallel Port)模式即标准并口模式,是为打印输出而设计的。数据由计算机单向输出,不能用数据线进行数据输入,要做数据输入只能利用状态线。并口状态线只有5根,所以每个字节要分两次输入,再拼装为一个完整的字节。SPP模式速度较低,对硬件的要求不高,适用于低速的应用场合,如打印机、
[单片机]
关于嵌入式U盘读写器接口技术和系统设计
引言 随着USB技术和闪存技术的飞速发展,移动存储设备的速度和容量日新月异,但在工业控制的上位机和下位机之间,数据传输依然采用传统的串并口技术,特别对一些前端的便携式采集系统,需要采集后临时存储,再拿回来传给作为上位机的PC机进行数据处理,给人们带来很多不变,为此,本文提出了一种方法--利用U盘的便捷特性开发一种基于嵌入式的USB读写器,方便地将采集数据以文件方式写入U盘,PC机不需要任何特殊驱动便可以完成对数据的处理回放。利用本方法可以彻底解决下位机与PC机之间的数据传输难的问题。 1 硬件设计 系统采用TI公司的MSP430F149作为MCU,Cypress公司的SL811HS作为USB设备控制器,充分发挥各自
[应用]
ANSYS与PRO/E接口技术研究
ANSYS软件是一个功能强大的结构设计分析和结构优化软件包,具有多物理场耦合的功能,允许在同一模型上进行各种各样的耦合计算,如热结构耦合,磁结构耦合,流体热耦合等,可以用于进行结构的静力分析、动力分析、结构的高度非线性分析、电磁分析、计算流体动力学分析、设计优化、弹性接触分析等等。实体建模采用基于NURBS的三维实体描述法、几何体素以及布尔运算。ANSYS设计数据访问模块(DDA)能够使用户将由CAD建立的模型转换传送到ANSYS软件中,避免了不必要的重复建模工作。 1 ANSYS与Pro/E的接口技术 在应用ANSYS进行有限元分析中,有限元建模耗费了工程技术人员大量的时间与精力。虽然ANSYS带有自建模功能,但是这个建模功能
[嵌入式]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved