用51单片机控制rtl8019as实现以太网通讯

用51单片机控制rtl8019as实现以太网通讯

ID:6704602

大小:201.00 KB

页数:7页

时间:2018-01-23

用51单片机控制rtl8019as实现以太网通讯_第1页
用51单片机控制rtl8019as实现以太网通讯_第2页
用51单片机控制rtl8019as实现以太网通讯_第3页
用51单片机控制rtl8019as实现以太网通讯_第4页
用51单片机控制rtl8019as实现以太网通讯_第5页
资源描述:

《用51单片机控制rtl8019as实现以太网通讯》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、基于ARM和DM9000的网卡接口设计与实现摘要:针对ARMCPUS3C2410的特点,设计开发了外围网卡接口平台,通过驱动程序对以太网控制芯片DM9000的控制,实现了网络数据传输功能。硬件方面主要涉及以太网网络接口的设计,软件方面主要是设计以太网控制芯片驱动程序。该嵌入式系统网络接入方案具有硬件接口简单、外围器件少、价格低廉、开发周期短等特点。  关键词:ARM;DM9000;网卡,YL18-2050S  引言  要实现小型嵌入式设备的Internet接入,TCP/IP首先要解决的是底层硬件问题,即协议的物理层。Ethernet

2、具有成熟的技术、低廉的网络产品、丰富的开发工具和技术支持,当现场总线的发展遇到阻碍时,以太网控制网络技术以其明显的优势得到了迅猛的发展,并逐渐形成了现场总线的新标准——Ethernet。考虑到国内局域网大部分是以太网,随着交换式网络、宽带网络的发展,基于以太网的嵌入式设备Internet接入应用有着现实意义。  在现有嵌入式系统中,大多数选用的是10Mb/s的以太网卡,其传输速率慢,已不能再适应现在人们的要求。而其它10/100Mb/s网卡芯片或工艺复杂或成本较高,不适应工业制造。而DM9000是完全综合的、成本较低的单一快速以太网

3、控制器芯片,具有通用的处理器接口。它被设计为低功耗、高处理性能,而其设计又非常简单,所以可以容易的完成不同系统的软件驱动开发。  DM9000——DAVICOM公司的10/100Mb/s自适应以太网芯片。其特点是:支持8位、16位、32位数据总线宽度;寄存器操作简单有效,有成熟的Linux驱动程序支持;3.3V接口电平;成本相当低廉;还可以使用MII接口和PHY芯片连接。  1DM9000与S3C2410的连接  1.1硬件整体电路设计  硬件上要完成DM9000与ARM芯片S3C2410三大总线连接,以及DM9000与网络变压器Y

4、L18-2050S(或YL37-1107S)+以太网水晶接头RJ45的连接。基于ARM嵌入式系统和以太网的接口如图1。    图1ARM嵌入式系统与以太网的接口电路示意图  1.2DM9000与S3C2410连接  实现DM9000与S3C2410连接,必须对两者间的数据、地址、控制三大总线进行连接和转换。S3C2410是32位微处理器,有32根地址线,支持4GB存储空间。其中0—的1G空间被分为8块128M空间,分别由NGCS0—NGCS7片选。DM9000为16位以太网控制芯片。图2给出了S3C2410与DM9000的连接方法。

5、    图2S3C2410与DM9000的逻辑连接  对DM9000读写操作,首先对DM9000正确寻址。AEN(地址允许)是输入引脚片选信号。SA4~SA9是地址总线4~9位,当AEN低且SA9和SA8高,而SA7、SA6、SA5、SA4为低时,则DM9000被选中。    图3S3C2410与DM9000的连接电路  DM9000默认I/0基地址为300H。CMD引脚用于设置COMMAND模式,CMD为高时,选择数据端口。CMD为低时,选地址端口。数据端口和地址端口的地址码由下式决定:  DM9000地址端口=高位片选地址+30

6、0H+0H  DM9000数据端口=高位片选地址+300H+4H  其中,高位片选地址由S3C2410的NGCS3提供,即为:0XH。  实际设计电路如图3所示,其中nWAIT为读写等待信号。由于在S3C2410中以太网卡的中断为9号中断,所以EINT9_ETHERNET为中断信号。RESET为网卡芯片重启信号。25MHzOSCILLATOR为芯片提供25MHz的工作频率。(在本图中省去了S3C2410芯片)SD0~SD15数据总线与S3C2410的数据总线连接。  2DM9000驱动程序描述  2.1驱动程序整体设计  Linux

7、网络驱动程序的体系结构可划分为从上到下依次为网络协议接口、网络设备接口层、提供实际功能的设备驱动功能层以及网络设备媒介层。Linux内核中提供了网络设备接口级别以上层次的代码,所以移植(或编写)特定网络硬件的驱动程序最主要的工作就是完成设备驱动功能层,主要包括数据的接收、发送等控制。在Linux中所有网络都抽象为一个接口,由结构体net_device来表示网络设备在内核中的运行情况,即网络设备接口。它既包括了网络设备接口,如回环(loopback)设备,也包括了硬件网络设备接口,如以太网卡。  驱动程序运行时,操作系统先调用检测例程

8、以发现安装的网卡,如网卡支持即插即用,检测例程自动发现网卡参数。否则,驱动程序运行前,设置好网卡参数供驱动程序使用。核心发送数据时,调用驱动程序的发送例程。将数据写入空间,再激活物理发送过程。面向物理层接口程序中断处理例程。当网卡接收

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。