XPORT以太网接口实现上电自动配置的应用

发布者:BlissfulJourney最新更新时间:2010-10-23 来源: 微计算机信息关键字:XPORT  串口  以太网  RABBIT 手机看文章 扫描二维码
随时随地手机看文章

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提供了一种以太网连接方法,使用者应按照个人的需求决定是否选用。

关键字:XPORT  串口  以太网  RABBIT 引用地址:XPORT以太网接口实现上电自动配置的应用

上一篇:TSC系列工业交换机在供电局配网项目中应用
下一篇:GE Fanuc PLC 在船舶货控系统中的应用

推荐阅读最新更新时间:2024-03-30 21:32

STM32单片机串口空闲中断+DMA接收不定长数据
在上一篇文章STM32单片机串口空闲中断接收不定长数据中介绍了利用串口空闲中断接收不定长数据,这种方式有一个问题就是串口每接收到一个字节就会进入一次中断,如果发送的数据比较频繁,那么串口中断就会不停打断主程序运行,影响系统运行。那么能不能在串口接收数据过程中不要每接收一个数据中断一次,只有在一帧数据接收结束完成后只中断一次? 用串口的空闲中断加上DMA功能,就可以实现每帧数据接收完成后只中断一次,而在数据接收过程中,由DMA存储串口接收到的每个字节。 关于串口的空闲检测和DMA在STM32参考手册中有详细介绍。 下面看如何初始化串口空闲中断和 DMA。 void uart2_init( u16 baud )
[单片机]
STM32单片机<font color='red'>串口</font>空闲中断+DMA接收不定长数据
以太网口的中西文VFD字符显示器
摘要:介绍一种带以太网口的中西文VFD字符显示器,根据以太网口的实现方法、VFD的控制要点以及中西文字库的植入和程序的流程。该字符显示器为单位内部、公共场所的监控系统发布信息提供了完整的方案。 关键词:字库 Rabbit2000微处理器 以太网 VFD显示器 在一些单位内部、医院和公共场所的监控系统中,常要发布流动的信息。现采用Rabbit半导体公司Rabbit2000微处理器为主控制器,植入二级汉字字库和ASCII码字符字库,驱动Noritake公司(伊势电子工业株式会社)生产的真空荧光显示器(VFD)模块,只要通过10M以及网口或串行口输入要显示的信息内容,要发布的信息就可以显示在VFD上。 1 10M以太网口的实现
[电源管理]
基于AMBE-2000的多速率语音通信终端模块
摘要:介绍一种基于AMBE-2000和DSP芯片的语音通信终端模块的原理与实现方案。该终端模块具有设计简便、语音编码速率可变、音质优、性价比高、功耗小等诸多优点,可广泛应用于卫星通信、短波、微波通信和军用保密通信等场合。 关键词:声码器 AMBE 前向纠错编码(FEC) AMBE-2000是DVSI(Digital Voice System Inc.)公司推出的单片声码器芯片。该芯片采用改进的多带激励(MBE)算法,能实现可变速率低比特率、高语音音质的语音压缩编码。本文基于AMBE-2000,设计并实现了一种语音通信终端模块。该模块具有设计简便、语音编码速率可变、音质优、接口灵活、工作电压低、功耗小等诸多优点,可广泛应用于卫星
[网络通信]
Keil C51 中使用Printf()进行串口输出
如何使用printf在串口显示信息,有两种办法,因为在keil C51中 printf函数是调用putchar进行数据传送的,而putchar应该是先判断TI是否为1,不为1则等待为1。 如果为1则清0,然后送出一个字符。因此如果你直接使用printf函数,你的程序就会在putchar函数中等待TI为1。这时你的程序就相当于直接死掉了。你可以通过改写putchar函数实现自己的目的。TI相当于是初始化不给赋初值就不干活。 所以第一种办法就是在初始化的时候,给TI赋值为1,比如 void uart_init() { PCON &= 0x7F; //波特率不倍速 SCON = 0x50; //8位数据,可变波特率
[单片机]
STM32F1系列HAL库配置串口通信(2)——串口重定向以及log信息格式输出
之前我们提到了HAL库配置串口,但是由于我们还没有进行到中断,所以对于一些HAL库里有关串口的函数还是很难全部应用的,尽管如此,我们依然可以借助这两个函数胡作非为 加以利用。 1.串口发送数据: HAL_UART_Transmit(UART_HandleTypeDef *huart, uint8_t *pData, uint16_t Size, uint32_t Timeout) 功能:串口发送指定长度的数据。如果超时没发送完成,则不再发送,返回超时标志(HAL_TIMEOUT)。 参数: *UART_HandleTypeDef huart UATR的别名 如 : UART_HandleTypeDef huart1; 别名就是
[单片机]
STM32F1系列HAL库配置<font color='red'>串口</font>通信(2)——<font color='red'>串口</font>重定向以及log信息格式输出
linux串口终端ttySAC,Linux串口终端驱动——S3C6410平台
1、serial文件夹下Kconfig分析 config SERIAL_SAMSUNG tristate Samsung SoC serial support depends on ARM && PLAT_S3C select SERIAL_CORE help Support for the on-chip UARTs on the Samsung S3C24XX series CPUs,为支持三星的片上UARTs控制器 providing /dev/ttySAC0, 1 and 2 (note, some machines may not provide all of these ports, depending on how
[单片机]
cortex m0 lpc1114 串口uart查询收发数据
LPC1114有一个串口,具备标准9针串口的所有功能引脚: RXD、TXD、RTS、CTS、DTR、DSR、DCD、IR 一般情况下,我们只用到RXD和TXD。在这一章,只对RXD和TXD的使用做介绍。 可以用于程序下载。 可以设置奇校验、偶校验、无校验。 可以设置数据位为5~8,可以设置停止位为1、1.5、2。 具有自动波特率检测功能。 查询方式串口收发数据 新建一个工程,结构如下图所示: 在uart.h文件中,输入以下代码: #ifndef __NXPLPC11XX_UART_H__ #define __NXPLPC11XX_UART_H__ extern uint8_t Recived_data; exte
[单片机]
cortex m0 lpc1114 <font color='red'>串口</font>uart查询收发数据
51单片机串口通信使用类似printf函数的两种办法
span style= font-family: Arial; ; line-height: 26px; background-color: rgb(255, 255, 255); /span pre name= code class= cpp p style= margin-top: 0px; margin-bottom: 0px; padding-top: 0px; padding-bottom: 0px; font-family: Arial; ; line-height: 26px; /p p style= margin-top: 0px; margin-bottom: 0px; padding-top: 0px;
[单片机]
51单片机<font color='red'>串口</font>通信使用类似printf函数的两种办法
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
最新工业控制文章
换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved