您现在的位置: 范文先生网 >> 理工论文 >> 电子通信论文 >> 正文

ECP协议及在SX52BD与PC机间通信的实现

时间:2007-1-20栏目:电子通信论文

SX52BD片内程序存储器容量为4096字节,数据存储器容量为262×8位。SX52BD具有5个8位I/O端口A、B、C、D、E,2个带8位预定标器的16位定时器,1个带预定标器通用8位定时器,1个模拟比较器,1个brownout检测器及看门狗定时器,1个内部RC振荡器。端口A、B、C为双向I/O口;端口B可作为唤配置、比较器、定时器1的输入;端口C可作为定时器2的输入;端口D、E仅做输入用。

SX52BD有3种不同的寻址方式:间接寻址、直接寻址、半直接寻址。对寄存器寻址模式的选取依赖于指令中5位“fr”的值。

*间接模式:fr=00h

*直接模式:(fr bit 4=0)fr=01h~0Fh

*半直接模式:(fr bit 4=1)fr=10h~1Fh

由于SX52BD运行速度可达50MHz,由指令运行产生时序完全可达到ECP协议的时序时间要求,并且它的I/O口驱动能力满足PC机要求。因此,不用使用任何额外的硬件电路产生时序,这就是虚拟外设的概念。

3 ECP通信在SX52BD与PC机间的实现

由于采用了虚拟外设,因此硬件电路结构极其简单:将SX52BD单片机的25个双向I/O口接入PC机即可。

ECP通信的实现由软件完成。主机设置好BIOS后,可通过操作寄存器直接产生硬件所需时序。寄存器定义如表1。

表1 寄存器定义(基址0x378)

名  称 地址偏移 读  写 大  小 功  能 ecpAFifo 0x000 W-R/W 大小 地址寄存器 dsr 0x001 R 字节 状态寄存器 dcr 0x002 R/W 字节 控制寄存器 ecpDFifo 0x400 R/W 双字节 数据寄存器 ecr 0x402 R/W 字节 扩展控制寄存器

其中状态寄存器dsr位定义如图1,控制寄存器dcr的位定义如图2。扩展控制寄存器ecr中定义了ECP对FIFO、DMA的使用,在速度要求较高时才对其操作。

下面列出了实现简单的ECP协议。图3为SX52BD端的程序流程图,图4为PC机端的程序流程图。

结语

总体来说,由于ECP协议功能完善而且实现简单,对时间要求也不是很严格,在许多传输速率要求不是特别高的场合中应用价值很高。另外,SX系列单片机的虚拟外设具有很广泛的应用。


上一页  [1] [2] 

下页更精彩:1 2 3 4 下一页