中国·芯片交易在线
首页 | 供应信息 | 求购信息 | 库存查询 | 新闻中心 | 展会资讯 | IC厂商 | 技术资料 | 自由区域
   新闻首页 |  行业动态 | 新品发布 | 政策法规 | 科技成果 | 模拟技术 | 嵌入系统 | 传感控制 | 存储设计  
当前位置:IC72首页>> IC新闻中心>> 嵌入系统 >>电子行业新闻正文

基于ARM微处理器的嵌入式以太网接口设计

时间:2008/12/1 9:54:00  作者:  来源:IC72  浏览人数:1432
 
 

      电子设备日趋网络化的背景下,作为目前广泛使用的以太网以及TCP/IP协议已经成为事实上最常用的网络标准之一,它以高速、可靠、分层以及可扩充性使得它在各个领域的应用越来越灵活,很多情况下运用以太网和TCP/IP,能够简化结构和降低成本。但是,目前关于嵌入式以太网的设计方案不是很多,在这不多的方案中,大多是基于单片机或DSP的。两者都存在要外扩很多外设的问题,并且前者速度太慢,后者成本又太高,这在一些对设备尺寸要求很小的场合是不行的。

ic72新闻中心

      本设计中,采用了基于ARM内核的微处理器S3C44BOX为基础的嵌入式系统与10MB以太网控制芯片RTL8019AS的接口电路和实现方法。

      S3C44BOX芯片的介绍S3C44BOX是基于ARM7TDMI内核的16/32位RISC处理器。功能强大,目前已广泛应用于手持设备、因特网设备、网络、调制解调设备等领域。其主要特点如下。

      1)拓展存储控制器(带FP/EDO/SDRAM控制器,片选逻辑)。

      2)8KBCache/SRAM。

      3)LCD控制器(可直接控制DSTN/STN的各种灰度/256彩色LCD屏,最大支持分辨率为16001600)。

      4)2通道UART,波特率可高达115200B/s,并内置16字节FIFO,同时兼容Irdal.0规范。

      5)I2C和I2S接口(音频数据接口)。

      6)71个通用I/O端口和8个外部中断。

      7)5路PWM定时器和1路内部定时器。

      8)8通道10位ADC(采样速率为100Kbit/s)。

      9)2路GDMA/2路外围DMA。

      10)电源控制器。

      11)看门狗。

      12)实时时钟。

      硬件电路组成

      本方案硬件电路使用的芯片主要有微处理器S3C44BOX、RTL8019AS、74LV138和FB2022(网卡变压器),其硬件框图如附图所示。处理器S3C44BOX与RTL8019AS的接口采用UTPRJ-45接口。RTL8019AS与主机有三种接口工作模式:

      *跳线方式,网卡的I/O和中断由跳线决定。

      *即插即用方式,由软件进行自动配置plugandplay。

      *免跳线方式,网卡的I/O和中断由外界的93C46里的内容决定。

      在嵌入式应用场合,如果不使用93C46的话,可以降低成本,同时又减少连线,因此,本文采用第1种方式即跳线方式,即通过设置RTL8019AS的65脚jp为高电平(接到Vcc或通过一个10kΩ的上拉电阻)来实现。

      RTL8019AS是性价比高且带有即插即用功能的全双工以太网控制器,它的主要特点包括:符合EthernetⅡ与IEEE802.3标准;全双工,收发可同时达到10Mbit/s的速率;内置16KB的SRAM,用于收发缓冲,减低对主处理器的要求;支持UTP、AUI、BNC自动检测,还支持对10BaseT拓扑结构的自动极性修正;允许4个诊断LED引脚编程输出。RTL8019AS内部有2个RAM区:1块16KB,地址为0x4000~0x7fff;1块32B,地址为0x0000~0x001f。RAM按页存储,每256B为一页。

      本方案中将RTL8019AS的RAM的前12页(0x4000~0x4Bff)作为发送缓冲区,后52页(0x4c00~0x7fff)作为接收缓冲区,第0页只有32B,用来存储以太网的物理地址。

      RTL8019AS具有32个输出/输出地址,地址偏移量为00H~1FH。其中00H~0FH具有16个地址为寄存器的地址,寄存器分为page0~page3,由RTL8019AS中的命令寄存器CR中的PS1和PS0位来决定要访问的页。复位端口包括18H~1FH共8个地址,用于RTL8019AS的复位。

      软件设计

      编写控制以太网接口程序的步骤。

      (1)μC/OSⅡ实时操作系统的移植

      μc/osⅡ是一种开放源码的实时嵌入式操作系统,是一个可移植,可裁减,可固化的占先式多任务操作系统,已被应用到多种微处理器上,其大部分源码是ANSIC语言编写的。

      移植工作包括以下几个内容:a.设置:OS_CPU.H中与处理器和编译器相关的代码。b.用C语言改写OS_CPU_C.C中6个与操作系统相关的简单函数。c.用汇编语言改写OS_CPU_A..ASM中的4个与处理器相关的函数。

      1)OS_CPU.H文件包括#define、typedef定义与CPU相关信息。因不同的处理器有不同的字长,所以μC/OSⅡ的移植包括一系列的类型定义,以确保可移植性。如INT16U数据类型总是代表16位无符号整数,将μC/OSⅡ移植到32位处理器上,也就意味着INT16U实际上为无符号短整型数而不是无符号整型数。

      2)OS_CPU_C.C文件OSTaskCreatHook()、OSTaskDelHook()、OSTaskSwhook()、OSTaskStatHook()、OSTaskCreakHook(),这些函数为用户定义,实际需要修改的只有OSTaskStkIinit()函数。OSTaskStkIinint()用来初始化任务堆栈,初始状态的堆栈模拟发生一次中断后的堆栈结构。由于在ARM中堆栈是按32位数据类型来进行操作,所以堆栈数据类型OS_STK声明为32位无符号整数。

      3)OS_CPU_A.ASM文件这里要实现4个汇编函数改写:多任务启动函数中调用OSSTartHightRdy()、任务切换函数OSCtxSw()、中断任务切换OSIntCtxSw()和时钟节拍服务函数OSTickISR()。任务切换函数OSCtxSw(),由任务切换函数OS_TASK_SW()进入。如果任务执行了某个函数,其结果改变了当前任务的状态[如OSTaskSuspend()、OSTimeDly()],或者是改变了别的任务的状态[OSTaskResum()、OSTimeDlyResume()]都要引起新的任务调度函数[OSSched()]执行OS_TASK_SW()。OSIntCtxSw()是在ISR中被调用的,其代码与OSCtxSw()类似。OSStartHightRdy()由OSStart()函数调用,功能是运行优先级最高的任务。OSTickISR()是时钟节拍中断,用户应该在OSStart()运行后,μC/OSⅡ启动运行的第一个任务中初始化节拍中断。

      (2)初始化RTL8019AS

      初始化部分完成RTL8019AS在使用之前的初始化工作,设置相关工作模式的寄存器,分配和初始化接收和发送缓冲区,初始化网卡接收地址。

      (3)传输数据包

      发送部分只要把数据写入缓冲区,启动执行命令,RTL8019AS自动发送。一般在RAM内开辟2个以太网数据包的空间作为发送缓冲区。作为一个集成的以太网芯片,数据的发送校验,总线数据包的碰撞检测与避免是由芯片自己完成的。只需要配置发送数据的物理层地址、源地址、目的地址、数据包类型以及发送的数据就可以了。

      (4)接收数据包

      它是完成数据接收任务,RTL8019AS接收到以太网数据包后自动将其存在接收缓冲区并发出中断信号,S3C44BOX在中断程序里通过DMA就可接收到数据,即通过远端DMA把数据从RTL8019AS的RAM空间,读回ARM中处理。这里主要是对一些相关的寄存器进行操作。RTL8019AS芯片具有性价比高,连接方便等特点,是进行嵌入式以太网设计时的首选的控制芯片。本文介绍了以S3C44BOX处理器为核心,用RTL8019AS作为网络接口芯片的嵌入式以太网接口的具体软硬件方法。产品的性能高,价格适中,不仅可用于工业现场实现现场节点的自动上网功能,而且可以用于信息家电的以太网接口,可以实现远程控制,在网上就可以控制家中的电器,具有很好的发展前景。

 
【相关文章】
·基于ARM微处理器的嵌入式以太网接口设计
 
 
IC新闻搜索
 
热点新闻
基于红外超声光电编码器的室内移动小车定位系
基于闪烁存储器的TMS320VC5409DSP并行引导装载方法
非移动市场需求飙升,ARM预计2010年出货量超50亿片
一种快速响应的电容式湿度传感器感湿薄膜设计
利用特殊应用模拟开关改进便携式设计
无线传感器网络跨层通信协议的设计
基于ARM9内核Processor对外部NAND FLASH的控制实现
基于GSM技术的汽车防盗系统的设计
热电阻在烟叶初烤炕房温度控制中的应用
高速数据转换系统对时钟和数据传输的性能要求
友情连接
 关于我们  IC论坛  意见反馈  设置首页  广告服务  用户帮助  联系我们
copyright:(1998-2005) IC72 中国·芯片交易在线
(北京)联系电话:(010)82614113、82614123 传真:(010)82614123 客户服务:service@IC72.com 库存上载:IC72@IC72.com
在线MSN咨询:ic72sale8@hotmail.com 通信地址:北京市西城区西直门内大街2号大厦15层 邮政编码:100013
(深圳)联系方式: 在线MSN咨询:ic72sale6@hotmail.com 在线QQ咨询:191232636 通信地址:深圳市福田区振华路
注 册 号: 1101081318959(1-1)

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z 0 1 2 3 4 5 6 7 8 9