基于S3C44B0X的仪表以太网接口设计

  摘 要:本文简要介绍了智能仪器仪表的网络化以及工业以太网的特点,并详细介绍了基于s3c44b0x仪表的一种以太网接口硬件和软件的设计实现。

  关键词:s3c44b0x;以太网;嵌入式系统

引 言

  以internet为代表的网络技术的出现以及它与其他高新科技的相互结合,不仅己开始将智能互联网产品带入现代生活,而且也为测量与仪器技术带来了前所未有的发展空间和机遇,网络化测量技术与具备网络功能的新型仪器应运而生。

  以太网既是一种计算机接入局域网络的连接标准,又是一种网络互联设备数据共享的通信协议。它采用具有冲突检测的载波监听多点接入csma/cd技术。由于其传送速率的大幅度提高,物理层标准的工业化以及以太网集线器技术的形成,千兆以太网技术和无碰撞全双工光纤技术的出现,使得这一先进的网络技术被推进到工业控制网络中,形成了工业以太网技术。与目前的基于现场总线的控制网络相比,基于工业以太网技术的控制网络是一种低成本(许多商用以太网的芯片组与技术可以借用)、高性能的控制网络解决方案。

  本方案采用的是s3c44b0x和rtl8019as组成仪表以太网接口方案。

硬件部分

  s3c44box是三星公司生产的arm7内核的soc。s3c44b0x通过在arm7tdmi内容基础上扩展一系列完整的通用外围器件,适合手持式设备和普通嵌入式的应用。

  集成片上资源有:8kb缓存的2.5v静态arm7tcmi cpu核;扩展内存控制器;带有1个专用dma通道的lcd控制器;2个dma通道,1个带外部请求引脚的dma通道;1个i2c总线控制器;5个pwm定时器及1个内部定时器;看门狗定时器;71个通用i/o口,8个外部中断源;8个10位adc;带pll的片上时钟发生器。

  s3c44b0x上的存储系统地址空间分为8个存储体,每个存储体可达32mb,总共达256m。每个bank的数据总线位数可设置(8/16/32位);7个存储体的初始位置确定,空间大小可设置;1个bank的初始位置和空间大小就都可行设置。bank0分配给自举rom,bank6,bank7通常分给sdrm。rtl8019as可在剩下的bank中任选一个,本设计选择bank5。s3c44b0x接16/32位存储器时地址线需要错位。

  rtl8019as是realted公司生产的以太网控制器。支持ieee802.3;支持8位或16位数据总线;内置16kb的sram,用于收发缓冲;全双工,收发同时达到10mbps;支持10base5、10base2、10baset,并能自动检测所连接的介质。在isa总线网卡中占有相当比例。rtl8019as与主机有3种接口模式,即跳线模式、pnp模式和rt模式。

  rtl8019as在网卡中通常有eeprom作为配置存储器,同时它的使用isa总线。在嵌入式系统中不使用eeprom,也不使用isa总线,所以这些引脚一般按下面的方式连接:

  jp接高电平,选择跳线模式,部分设置由引脚决定;

图1 s3c44bo以太网接口电路示意图

  bs[4..0]接地,禁止使用brom;

  ios[3..0]接地,rtl8019as内部寄存器总线地址从300h

  开始;

  irqs[2..0]接地,使用irq2/9做中断请求引脚;

  aui接低电平,接口采用bnc方式,使用双绞线或同轴

  电缆;

  pl1,pl0接低电平,自动检测以太网接口类型;

  smemrb,smemwb接高电平。

软件部分

  与以太网接口相关通信程序分为:rtl8019as初始化,发送控制,接收控制三部分:

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

  rtl8019as初始化程序工作步骤如下:

  1)复位rtl8019as;

  2)选中页0寄存器,rtl8019as停止运行,;

  3)设置数据配置寄存器为16位;

  4)清除远程dma计数器;

  5)设置接收缓冲区区间;

  6)设置接收配置寄存器 (仅接收自己的地址的数据包);

  7)设置发送配置寄存器(启用crc自动生成和自动校验);

  8)中断寄存器清零

  9)屏蔽rtl8019as内所有中断;

  10)设置指向最后一个已经读取的页的寄存器(bnry)

  11)选择页1寄存器;

  12) 初始化物理地址;

  13)初始化组播地址;

  14)设置当前的接收结束页寄存器(curr);

  15)选择页0寄存器,启动rtl8019as执行命令;

  16)开启主机里rtl8019as对应中断;

图2 接收程序流程图(略)

发送部分只要把数据写入缓冲区,启动执行指令,rtl8019as自动发送。一般在ram内开辟两个以太网数据包长空间作为发送缓冲区。发送数据时,两个缓冲区轮流发送。数据的发送校验,总线数据包的碰撞检测与避免是由rtl8019as自己完成的。

接收部分完成数据接收任务。rtl8019as接收到以太网

  • 基于S3C44B0X的仪表以太网接口设计已关闭评论
    A+
发布日期:2019年07月02日  所属分类:参考设计