微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 模拟电路设计 > 基于SEP3203的嵌入式以太网口的设计

基于SEP3203的嵌入式以太网口的设计

时间:06-13 来源:微计算机信息 点击:

摘要 在自动化控制及其他民用设备、工业控制如电力设备系统等领域,众多设备的对外通讯接口仍然是低速串口。但低速串口有其固有的缺点:无法集中、全面、准确而实时地监控数据。本文介绍基于微处理器SEP3203串口以太网转换器的以太网接口的软硬件设计方法,它可以变传统的串口通讯为网络通讯,实现串口设备的快速联网。

关键词 串口;以太网口;SEP3203;Nucleus

1 引言

在自动化控制及其他民用设备、工业控制如电力设备系统等领域,众多设备的对外通讯接口仍然是低速串口。因此现有系统的缺点是:无法集中、全面、准确而实时地监控数据。随着以太网在工业、商业领域的大规模使用以及网络自动化强劲势头的到来,用户与供应商迫切需要在任何时间和任何地点都可以实时访问数据和进行控制,做到远程快速故障分析与处理、设备的远程维护,以便提高质量,提高工作效率并降低整体成本。完全换掉这些串口通讯的设备是既不经济也不可行的。针对一些实际需求,采用串口以太网转换器就是解决这些问题的最佳解决方案。本课题串口以太网转换器正是在这一要求下设计出来的产品, 本文就是本课题下的子课题部分。

2 基于ARM7TDMI的SEP3203微处理器简介

ARM7TDMI处理器是ARM7处理器系列成员之一,是目前应用较广的32位高性能嵌入式RISC处理器,SEP3203[1]是东南大学国家专用集成电路系统工程技术研究中心基于ARM7TDMI处理器内核设计的16/32位RISC微处理器芯片。它面向低成本手持设备和其它通用嵌入式设备,为用户提供了丰富的外设、低功耗管理和低成本的外存配置。

3 串口以太网转换器中与以太网接口相关的电路结构

为了实现该转换模块的研究,首先要选择一个硬件平台即嵌入式处理器。由于ARM是基于精简指令系统(RISC)的32位内核,代码效率高,运行速度快,综合性能强,在基于ARM体系结构的嵌入式CPU中,基于ARM7TDMI体系结构的SEP3203嵌入式微处理器拥有较好的技术支持,因此本转换器选择SEP3203作为硬件平台;转换系统必须要有电源,供整个系统用;系统工作时需要有工作时钟,因此本系统需要有时钟电路;由于用户需要的转换器要有串口、USB和以太网口下载等功能,由于本文只针对以太网口,其它两个接口本文不作介绍。以太网口与嵌入式芯片之间要有一个网络模块,现把与以太网口相关电路结构的部分设计显示如图1所示。

图1  以太网接口部分的相关电路结构

4 网络接口电路的硬件设计

SEP3203芯片内部没有集成网络模块,但SEP3203芯片设计的接口丰富,可以方便地扩展。考虑使用中可能对网速的要求比较高,因此本系统选用了10M的以太网接口。本系统的网络接口采用REALTEK公司的RTL8019芯片。RTL8019AS 是一种高度集成的以太网芯片,能简单的实现Plug and Play 并兼容NE2000。由于它拥有三种等级的掉电模式,所以它是绿色电脑的网络设备的理想选择。在全双工模式下,如果是连接到一个同样是全双工的交换机或集线器,就可实现同时接收和发送[2]。

RTL8019AS支持16KByte、32KByte、64KByte的BROM,另外还支持FLASH MENORY和页访问方式,最大支持4MByte(16K×256),此外还支持在运行完BROM 后释放内存以供系统其他程序的运行。网络接口模块的系统连接示意图如图2所示。



图2 以太网接口系统连接图              

图3  RJ45网络接口电路图 

由图2可知,以太网接口通过系统总线外扩而成。RTL8019AS的地址使用方式有5位、8位、11位三种。使用5位地址就可以访问RTL8019AS所有的寄存器,实现最简单的网络功能。本系统使用8位地址满足了操作系统对远程DMA端口的需求。

网络接口模块和SEP3203微处理器的连接线比较简单,在PCB板上布线比较规则。网络接口芯片RTL8019的实际电路连接图见参考文献[3]。网口选用了内置变压及指示灯的RJ45网络接口,实际电路图如图3[4]所示, 对比SEP3203微处理器的SRAM接口协议,由于总线没有等待信号,所以没有使用IOCHRDY信号。由于SEP3203微处理器总线的最低数据位宽是16位,所以IOCS16B固定置于16位方式。

5 软件平台Nucleus

综合考虑各个因素,我们选择了嵌入式实时操作系统Nucleus。Nucleus PLUS是美国著名RTOS厂商(ATI)(Accelerated  Technology Inc)公司为实时嵌入式应用而设计的一个抢先式多任务操作系统内核,其95%的代码是用ANSI C写成的,非常便于移植并支持大多数类型的处理器。Nucleus PLUS是一组C函数库,下载到目标板的RAM中或直接烧录到到目标板的ROM中执行。

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

网站地图

Top