微波EDA网,见证研发工程师的成长!
首页 > 通信和网络 > 通信网络技术文库 > 以太网控制器的嵌入式设备网络互连

以太网控制器的嵌入式设备网络互连

时间:06-24 来源:互联网 点击:

图3 与DMA有关的寄存器


二、基于RTL8019AS的嵌入式设备网络互连设计方案

1.RTL8019AS的硬件电路设计

目前局域网常见的是采用双绞线为通信介质。图4为MOTOROLA的龙珠(Dragonball)处理器MC68VZ328(以下简称VZ328)和RTL8019AS的接口电路。RTL8019AS的工作电压为5V,而VZ328的工作电压为3.3V,所以RTL8019AS的输出需要电平的转换。在图4中,此电压的转换由U2 74F163245 完成。读数据时,D[0:15]数据经U2 送到VZ328;写数据时,D[0:15]送到RTL8019AS。 RTL8019AS在复位的上升沿锁定IOCS16脚的电平,其值决定数据总线的宽度:高电平时为16位总线方式,低电平时为8位总线方式。如挂接到8位主设备上,将以27kΩ的电阻下拉置地,D[8:15]空悬。为提高收发速度,图4采用16位数据总线方式。由于RTL8019AS没有外接初始化的EPROM,故其复位时命令寄存器(CR)的I/O地址的值为缺省值0X300,所以,为满足RTL8019AS的ISA时序,A5~A19的连接必须使其地址锁定在0X300,否则,就无法访问到RTL8019AS的寄存器。INT0中断脚经电平转换U4接到VZ328的IRQ6。VZ328以片选脚寻址RTL8019AS,接其端。在程序中,以I/O方式访问RTL8019AS,所以仅需要A[0:4]地址线,、接高电平关闭其MEMORY方式。


图4 RTL8019AS与68VZ328接口电路


2.RTL8019AS的软件编程

对RTL8019AS的软件操作,有查询和中断两种方式。在查询方式下,主程序通过CURR和Boundary两个寄存器的值来判断是否收到一帧数据。当Boundary与CURR不等时,说明接收缓冲区接收到了新的帧,主程序读取数据后,以读取帧的第二个字节(下一帧的页地址)更新Boundary,主程序循环跟踪CURR和Boundary达到数据的接收目的。主程序在发送一帧数据时,先要查TSR寄存器判断上一帧是否发送完毕。在实时多任务的环境,一般采用中断方式来处理RTL8019AS的收发。图5是一典型的中断处理程序(ISR)的流程。当主程序响应RTL8019AS的中断时,在ISR的入口,根据读取的中断状态寄存器(ISR)的值来确定程序的走向。

图 5 ISR流程图

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top