基于DS80C400的嵌入式智能网桥的设计-设计应用_第1页
基于DS80C400的嵌入式智能网桥的设计-设计应用_第2页
基于DS80C400的嵌入式智能网桥的设计-设计应用_第3页
基于DS80C400的嵌入式智能网桥的设计-设计应用_第4页
基于DS80C400的嵌入式智能网桥的设计-设计应用_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

精品文档-下载后可编辑基于DS80C400的嵌入式智能网桥的设计-设计应用

网桥将两个相似的网络连接起来,并对网络数据的流通进行管理。它工作于数据链路层,不但能扩展网络的距离或范围,而且可提高网络的性能、可靠性和安全性。网络1和网络2通过网桥连接后,网桥接收网络1发送的数据包,检查数据包中的地址,如果地址属于网络1,它就将其放弃,相反,如果是网络2的地址,它就继续发送给网络2.这样可利用网桥隔离信息,将同一个网络号划分成多个网段(属于同一个网络号),隔离出安全网段,防止其他网段内的用户非法访问。由于网络的分段,各网段相对独立(属于同一个网络号),一个网段的故障不会影响到另一个网段的运行。

目前,各类智能网桥设计方案基本都是CPU+MAC+PHY+RTOS+TCP/IPSTACK的方式,如:PCGateway+专用网、32位MCU+RTOS、8位或16位单片机+网络协议包,它们在实时性、可靠性、开发周期、实现难度、价格、开放性和通信效率等方面各有千秋。

PCGateway+专用网:该方案采用专用网络(如RS232、RS485、CANBUS等)可以连接多种单片机系统。网关(Gateway)又称网间连接器、协议转换器。网关在传输层上以实现网络互连,是复杂的网络互连设备,仅用于两个高层协议不同的网络互连。网关的结构也和路由器类似,不同的是互连层。网关既可以用于广域网互连,也可以用于局域网互连。网关是一种充当转换重任的计算机系统或设备。在使用不同的通信协议、数据格式或语言,甚至体系结构完全不同的两种系统之间,网关是一个翻译器。与网桥只是简单地传达信息不同,网关对收到的信息要重新打包,以适应目的系统的需求。同时,网关也可以提供过滤和安全功能。大多数网关运行在OSI7层协议的顶层--应用层。

32位MCU+RTOS:采用32位的高性能嵌入式处理器,在RTOS(实时多任务操作系统)平台上进行软件开发,该方案可以完成很多复杂的功能。但这种方案存在如下缺点:高性能嵌入式处理器价格较贵,开发周期长;需要购买昂贵的RTOS软件,对开发人员的开发能力要求较高。

8位或16位单片机+网络协议包:该方案有如下优点:不依赖PC机或高性能嵌入式处理器,真正实现8位或16位单片机系统直接接入网络,整个系统完全自给自足;使用外围器件少,系统成本低。但是这种方法在实现过程中也存在一些问题,如8位或16位单片机的资源相对较少,提供的功能有限。随着科技的发展,一些高速度的单片机(如DS80C400)己能基本满足通常的嵌入式产品对处理性能的要求,采用软件来实现各种协议处理,便于将来在不改变硬件的情况下,只需改变内置程序即可升级整个嵌入式系统的功能。本文提出以

DS80C400为处理器的CAN总线网络与以太网网互连的一种方案,实现了多路CAN总线网与以太网数据互联。

1总体设计

智能(CAN-ETHERNET)网桥作为以太网和现场总线网络数据传输交换的枢纽,完成从CAN到以太网或是从以太网到CAN网络数据的转发功能。同时,智能网桥还是一个Web服务器,WebServer将参数显示和监控等功能均通过网页的统一界面呈现给用户。客户机不需运行专用的监控软件,只需运行通用的浏览器来调用分散在各个受控设备中的嵌入式WebServer上的监控参数显示页面,就能达到监控设备的目的。

系统硬件结构框图如图1所示:

500)this.style.width=500;">

2DS80C400以太网控制模块

DS80C400网络微控制器是目前集成度的8051器件。集成外设包括10/100以太网MAC,三个串行端口,一个CAN2.0B控制器,1-Wire?主机和64个I/O引脚。为了便于访问网络,在ROM中提供了一个完整的、可被应用访问的TCPIPv4/6网络栈和OS.网栈支持多32个并发的TCP连接,并且能够通过以太网MAC提供高达5Mbps的吞吐率。达75MHz的系统时钟频率使短指令周期仅有54ns.24位寻址方式简化了对于大容量程序或数据存储器的访问,支持高达16MB的连续存储空间。

缓冲区控制单元(BCU):缓冲区控制单元(BCU)是DS80C400的以太网接口的中心控制单元。BCU通过一系列的SFR调节CPU,控制以太网模块的读/写活动。

CSR=ControlandStatusRegister常见的有"指令指针寄存器","标志寄存器","机器状态字","程序计数器"等等,各种处理器/微机上的叫法有点差别,而且控制的功能也不一定相同,但都是用于控制处理器的操作。大多数这类寄存器对用户是不可见的。

命令状态寄存器(CSR):CSR寄存器本质上是定义以太网控制器的操作特性。CSR寄存器包括下面几项:

MAC物理地址:发送,接受和流控制设置;地址检查模块使用的组播哈希表;地址检查模块需要的过滤模式和好/坏帧控制;VLAN标签标识符;唤醒帧过滤器;串行的MII物理设备管理总线的寄存器界面。

MediumAccessControl介质访问控制层,属于OSI模型中数据链路层下层子层--物理层。它定义了数据帧怎样在介质上进行传输。在共享同一个带宽的链路中,对连接介质的访问是"先来先服务"的。物理寻址在此处被定义,逻辑拓扑(信号通过物理拓扑的路径)也在此处被定义。线路控制、出错通知(不纠正)、帧的传递顺序和可选择的流量控制也在这一子层实现。

MII管理模块:MII管理模块允许主机从32个寄存器中的任意一个读取状态信息。MII管理模块通过2线的串行接口和外部物理设备进行通信。

MIII/O模块:MII1/0模块支持所有的在DS80C400的MAC和外部物理设备之间的数据发送和接收,同时监控由PHY提供的网络状态信号。

地址检查模块:以太网控制器的地址检查模块监控所有到来包的目的地址,然后决定是地址是否能够通过由CPU设置的过滤标准。决定帧是广播还是组播的地址过滤的结果和位由BCU通过包的接收状态给CPU.

接收/发送缓冲存储:DS80C400以太网控制器使用8KB的内部SRAM作为发送/接收包缓冲区。CPU可以使用MO指令对这个SRAM进行读/写访问。

500)this.style.width=500;">

电源管理模块:DS80C400以太网控制器包含了一个电源管理模块,它可以使以太网控制器通过CPU进入休眠模式,这样当没有以太网通信要处理时以便节约能源。

以太网是Xerox公司发明的基带LAN标准。它采用带冲突检测的载波监听多路访问协议(CSMA/CD),速率为10Mbps,传输介质为同轴电缆。以太网是在20世纪70年代为解决网络中零散的和偶然的堵塞而开发的,而IEEE802.3标准是在初的以太网技术基础上于1980年开发成功的。现在,以太网一词泛指所有采用CSMA/CD协议的局域网。以太网2.0版由数字设备公司、Intel公司和Xerox公司联合开发,它与IEEE802.3兼容。

3系统硬件设计

本系统以DS80C400为处理器,采用PCA82C250为CAN总线收发器,用SJA1000作总线控制器,以太网交换电路主要是采用五口交换芯片RTL8305SB来实现,用100BASE_FX光纤收发器完成以太网物理层数据传输。以下着重介绍DS80C400MII模块与外部物理设备之间的连接。

DS80C400MII管理模块通过2线串行接口与外部物理设备相连,MDC提供串行时钟信号,MDIO则作为I/O口与外设进行通信。MIII/O模块支持DS80C400MAC与外部物理设备之间的发送与接收数据传输,并且通过外设提供的信号监控网络的状态。发送接口由TXCLK,TX_EN,TXD[3:0]组成,其中,TXCLK是由外设提供的发送时钟,对于10MBPS操作,TXCLK应当运行在2.5MHZ,而100MBPS,TXCLK应至少运行在25MHZ.TXD[3:0]四位数据总线发送帻到外设。接收接口由RXCLK、RX_DV、RX_ER、RXD[3:0]组成,其中,RXCLK是由外设提供的接收时钟,其时钟要求与发送接口类同。RXD[3:0]四位数据总线接收从外设发送来的帧。RX_DV=1表示接收有效,RX_ER指出接收错误。MII也能通过外设提供的CRS、COL信号监控网络状态。

DS80C400MII与外部物理设备连接如图3所示:

500)this.style.width=500;">

4系统软件设计

系统软件设计是整个设计中为重要部分之一,利用DS80C400进行嵌入式系统开发并不像标准8051单片机开发那样简单,在除了KEILC软件环境外,它还需要特定的软件开发平台,DS80C400内部强大的ROM功能,使得系统软件的开发周期短,系统功能强大。

4.1DS80C400软件开发平台

DALLAS公司为DS80C400提供了两种串行加载工具,MTK和JAVAKIT.其中MTK简洁好用,但是目前MTK仅仅支持WINDOWS平台。JAVAKIT是一款基于JAVA的图形界面程序。JAVAKIT的运行需要以下几个附加软件同时运行:JAVADevelopmentEnvironment;JavaCommunicationsAPI;TINISoftwareDevelopmentKitAVAKIT可以应用于WINDOWS,LINUX以及MACOSX平台,但是JAVAKIT的配置虽然比较烦锁。

在PC机的命令行界面正确配置JAVAKIT需注意如下命令配置:

(1)setpath=%path%;X:jdkbin;

(2)setclasspath=X:jdklibcomm.jar;

(3)setclasspath=X:tinibintini.jar;%classpath%

4.2系统实现

DS80C400内部ROM嵌入的TINIOS使各个任务相互独立且具有不同的优先级来保证紧急任务及时响应,从而有效地实现任务调度。内部嵌入的工业标准SOCKET套接字方便了网络系统的开发。

系统软件框架如图4所示:

500)this.style.width=500;">

(1)任务划分

本系统根据各个任务的重要性,把整个模块分成以下几个不同优先级的应用任务,即系统监控、CAN数据发送、以太网数据发送、协议转换、LED显示、系统配置。

(2)任务实现

任务划分以后,各任务便具有独立的堆栈空间,彼此争夺CPU的使用权。一旦获得CPU使用权,就会独立运行。完成特定的功能。

(3)任务的同步与调度

DS80C400内嵌的任务调度程序有其独到之处,用户可以直接利用系统的接口函数编写应用程序,不需要另行开发。基于DS80C400的CAN-ETHERNET智能网桥在实验调试过程中,运行状况良好,工作稳定。

5结束语

利用DS80C400微控制器作嵌入式系统开发,可以方便地开发网络应用系统,大大提高开发效率,这是其它8051单片机所不能比拟的。将DS80C400用于嵌入式系统开发有十分广阔的前景,对推动嵌入式系统在国内的应用有十分重要的意义。

参考文献:

[1].RS232datasheet/datasheet/RS232_585128.html.[2].RS485datasheet/datasheet/RS485_585289.html.[3].DS80C400datasheet/datasheet/DS80C40

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论