0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于DSTni系列网络芯片实现实现以太网的通讯功能

电子设计 来源:微计算机信息 作者:张建伟,蒋健 2021-03-28 10:23 次阅读

1. 引言

随着世界范围内网络信息技术的日趋成熟,工业自动控制系统日益采用以太网和TCP/IP协议作为最主要的通信接口和手段。以太网作为目前应用最广泛、成长最快的局域网技术,在工业自动化领域得到了超乎寻常的发展。现在的设计挑战是在不改变原有设计且投资较少的情况下,方便快捷地实现工业现场使用的串口设备与以太网之间的连接。在我们的课题研究中,即采用了XPORT服务器策略。

XPORT由美国Lantronix公司于2002年研发成功,它是目前最小、最完整的串行口到以太网的转换方案。XPORT使用了Lantronix公司的DSTni系列网络芯片,10/100M的PHY,以及256KB的RAM和512KB的闪存。XPORT工作电压为3.3V,支持TCP/IP等网络通信协议,有一个支持RS-232串行标准、速度高达230Kbps的串行端口,完全可以满足工业现场通信速度的要求。它还提供一个RJ-45网络端口,可以方便快捷地实现串行设备与以态网的连接,从而实现工业现场的远距离实时通信。本文主要讨论XPORT在目标板上电自动配置参数的实现方法,本文中的目标板主要由RABBIT2000 CPU芯片、XPORT元件、液晶屏及按键等资源组成,实现以太网的通讯和字符的输出显示等功能。

2. 设计思路

2.1. XPORT参数配置方法比较

XPORT可以使用多种方式进行参数的配置,其中主要提供了从以太网和串口设置的两种途径:通过以太网口可以使用XPORT Installer、网页、Telnet等手段进行设置;通过串口可以使用串口登陆的方法。

在网口进行设置的几种方法中,XPORT Installer是Lantronix公司为XPORT专门提供的操作软件,最适合第一次对XPORT进行配置或是在不明XPORT的IP地址时使用,它可以自动搜索在线上的XPORT地址列表。网页和Telnet设置的方法适用于需要对其参数进行修改时使用,前提条件是必须已经知道XPORT的IP地址。这几种方法的共有特性是必须在主机上对XPORT进行参数设置,不能脱离主机自行配置。

从串口进行配置的做法是通过串口登陆到XPORT的监视模式下,通过设置信息进行配置。这样既可以在主机通过串口登陆时配置,又能够通过目标板CPU编程实现,达到脱离主机上电自动配置完毕的目标。以下我们就采用这种方法在RABBIT 2000平台上实现以太网通讯。

2.2. 监视模式中设置参数的原理

从串口进入监视模式的方法是将XPORT元件进行复位或是重启电源,用一秒的时间键入三个小写x字符就可以进入监视模式。但需要注意的是输入3个x时应该控制好输入的时间,最简单的方法是一直输入x直到进入监视模式。进入监视模式之后,从串口会传回一些字符标志以进入监视模式,并且出现提示符,0>提示符表明成功进入监视模式,其中提示符的含义见图1。

图1

进入监视模式得到0>提示符后,可以键入VS、GC等命令得到版本号和设置信息,具体的命令请参考技术手册。如要在监视模式中进行设置,必须有设置信息的120位数据,键入SC按回车键后,将设置信息输入即可,但新的设置需要重启后才能够起作用。最简单的方法是将使用者希望设置的信息通过GC命令得到,将数据拷贝保存,并且修改其中需要更改的信息,在键入SC及回车后直接将希望设置的新信息复制过来。这种方法在串口设置中常用,提供的初始化设置程序也是基于这种方法的。

设置信息包括了XPORT的主要参数,因此我们需要分析设置信息的含义,以便使用者能够根据个人的定义去实现。其中第一条设置信息中包括了本地IP地址、远程IP地址、子网掩码、波特率、本地端口、远程端口及UDP/TCPIP模式等几个重要参数。我们进行相应配置就可以实现正常的通信。

3. Xport设置程序

3.1. 程序流程

应用程序对XPORT进行设置时,采用的原理是通过串口方式进入监视模式,由于监视模式许多命令可以应用,并且所有操作都是基于二进制的数字操作,所以编程相对简单。为了方便使用者操作,我们已经将这些操作封装成几个函数。

3.2. 程序说明

我们在程序中提供一个结构体typedef struct XPORT,主要存储希望设定的参数值,其中包括本地IP、远程IP、子网掩码、波特率、本地端口、远程端口及UDP/TCPIP类型等参数。另外还定义了一个数组unsigned char setupbuf[0x12F],用来存储设置信息的数据。

我们封装了几个配置函数的原型如下:

int init_XPORT(struct XPORT *ptr1,unsigned char *buf1) //接口函数

void monitor (struct XPORT *ptr4,unsigned char *buf4) //进入监视模式得到设置信息

void setconfig(struct XPORT *ptr2,unsigned char *buf2) //设置参数函数

int getconfig(struct XPORT *oldptr3,struct XPORT *newptr3,unsigned char *buf3) //得到设置后的数据和欲设值进行比较

主程序和进入监视模式的函数流程在上面已经给出,设置参数函数只不过是把需要设置的参数转换为十六进制替换到相应的位置即可。但需要注意校验和计算,即将第一行数据以两位字符方式转换为十六进制数,将转换后的十六进制数逐个相加,再用100H减去相加后的和,即为它的校验核,如果校验核错误,设置将不能成功。将程序烧入FLASH,上电后自动将XPORT参数设置完毕,在液晶屏上显示出成功的信息,能够进行正常的UDP数据包的收发。

4. 结论

与通过以太网对XPORT元件设置相比,通过串口程序对XPORT元件进行设置有很多优点。通过以太网方式需要使用者进行手动设置。而我们在这里提供给使用者的是一个通用的XPORT元件自动设置的程序,上电时设置程序自动启动进入监视模式,并且自动完成本地IP地址、远程IP地址、子网掩码、本地端口号、远程端口号及波特率等的设置,不需要使用者手动设置。当多块目标板需要同时连接到以太网时,通过串口程序对XPORT进行设置可以节省大量时间和人力。

现在XPORT已经被应用于工业系统中,主要适用于需要以太网通讯但对其要求不高的情况。其主要特点为简单易用,连接方便,并且可以依据使用者的要求定制所需的功能。但它也有一定的局限性,比如传输数据量大时将导致速度很慢,操作编程不太灵活等。总而言之,XPORT提供了一种以太网连接方法,使用者应按照个人的需求决定是否选用。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    446

    文章

    47732

    浏览量

    409028
  • 以太网
    +关注

    关注

    40

    文章

    5071

    浏览量

    166203
收藏 人收藏

    评论

    相关推荐

    三菱Q系列PLC转以太网通过CHNet-Q实现以太网通信及ModbusTCP配置方法

    三菱Q系列PLC连接CHNet-Q实现以太网通信配置方法 CHNet-Q是兴达易控研制的一款经济型的以太网通讯处理器,是为满足日益增多的工厂设备信息化需求(设备网络监控和生产管理)而设
    发表于 10-14 18:29 6216次阅读

    三菱FX系列PLC转以太网通过CHNet-FX实现以太网通信及ModbusTCP配置方法

    三菱FX系列PLC连接CHNet-FX实现以太网通信配置方法 产品简介 CHNetS7-FX是一款经济型的以太网通讯处理器,是为满足日益增多的工厂设备信息化需求(设备网络监控和生产管理
    发表于 10-14 18:14 3673次阅读
    三菱FX<b class='flag-5'>系列</b>PLC转<b class='flag-5'>以太网</b>通过CHNet-FX<b class='flag-5'>实现以太网</b>通信及ModbusTCP配置方法

    基于FPGA的万兆以太网接口的设计与实现

    基于FPGA的万兆以太网接口的设计与实现标准中万兆以太网物理层及媒质接入控制子层的相关协议以 应用物理环境为例,阐述了万兆以太网接口各个单元模块的
    发表于 08-11 15:48

    NIOS实现以太网

    基于NIOS2的嵌入式实现以太网通信
    发表于 09-08 12:39

    怎样实现以太网通讯

    用LabVIEW实现以太网通讯需要设置哪些参数?怎样实现通讯
    发表于 12-14 19:31

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

    用51单片机控制RTL8019AS实现以太网通讯
    发表于 10-22 11:13

    以太网在MPSoC中的数据通讯实现

    总线通讯方式形成簇结构,簇、以太网模块和DDR模块通过资源接口与网络进行通讯。图中运算簇集成了两个处理器,完成数据运算,转置簇集成一个ARM控制器承担数据的行与列交换,DDR模块为片外
    发表于 06-03 05:00

    请问ATK-RM04_WIFI模块能实现以太网转WIFI功能吗?

    ATK-RM04_WIFI模块能不能实现以太网转WIFI功能???
    发表于 11-06 01:15

    请教大神怎样去实现以太网MAC子层协议?

    什么是以太网MAC子层协议?怎样去实现以太网MAC子层协议?
    发表于 05-06 10:33

    如何用51单片机控制RTL8019AS实现以太网通讯

    如何用51单片机控制RTL8019AS实现以太网通讯
    发表于 05-27 07:14

    怎么实现以太网的光无线通信系统的设计?

    怎么实现以太网的光无线通信系统的设计?
    发表于 05-28 07:08

    单片机实现以太网通讯硬件设计

    介绍以太网的帧协议和以太网控制芯片RTL8019AS的结构特性;介绍单片机控制RTL8019AS实现以太网通讯的硬件设计方案;采用c51语言实现
    发表于 08-29 16:32 126次下载
    单片机<b class='flag-5'>实现以太网通讯</b>硬件设计

    基于51单片机控制的以太网通讯实现

     摘要:介绍以太网的帧协议和以太网控制芯片RTL8019AS的结构特性;介绍51单片机控制RTL8019AS实现以太网通讯的硬件设计方案;采用C51语言
    发表于 11-13 10:55 2w次阅读
    基于51单片机控制的<b class='flag-5'>以太网通讯实现</b>

    如何使用51单片机控制RTL8019AS实现以太网通讯

    介绍以太网的帧协议和以太网控制芯片RTL8019AS的结构特性;介绍51单片机控制RTL8019AS实现以太网通讯的硬件设计方案;采用C51语言实现
    发表于 07-19 17:37 12次下载
    如何使用51单片机控制RTL8019AS<b class='flag-5'>实现以太网通讯</b>

    PLC如何实现以太网口无线通讯

    PLC若想实现以太网口无线通讯,首先我们需要确定好PLC型号,然后选择一个合适的通讯设备。比如如果是西门子S7-200PLC,就需要使用欧美PLC无线通讯终端,并且这个设备需要支持
    发表于 03-08 09:17 4768次阅读