用户名: 密  码:
英达社区 / 加入收藏 / 联系我们
网站首页 | 学校简介 | 就业中心 | 产品开发与销售 | 单片机开发 | 嵌入式ARM开发 | PLC开发 | 软件测试 | 自动化软件测试 | 嵌入式软件测试 | 联系我们
学校简介
教学特色
师资力量
就业指导
就业先锋
应用软件测试
手机软件测试
企业培训
产品开发
网站制作
   高新:029-88259409,88278304   郭杜:029-68581658
您所在的位置:首页 >> 单片机、ARM、DSP >> 正文
串口转以太网TCP/IP关键技术
http://www.yd-itedu.com/  添加日期:11-07-14 11:47:21  来源:    进入论坛

1. 概述

  串口转以太网目前可以采用串口转以太网模块来实现,变得非常简单易用,但是在该技术中出现的一些新问题、使用误区需要引起注意。串口转以太网并不是简单传输媒介的变化,而是串口到 TCP/IP 的协议转化。其中关系到的关键技术包括: TCP/IP 的工作模式问题、串口分帧技术、 9 位技术。这里详细分析这些串口转网口的技术。

2. 串口转网口关键技术一: TCP/IP 的工作模式问题

  串口转以太网,并不是简单物理层和数据链路层的转化。由于串口协议本身不具有网络层和传输层,串口转以太网,实际是将串口的数据作为 TCP/IP 的应用层数据,用 TCP/IP 封装传输的方式。 TCP/IP 的应用层数据是 TCP/IP 所要传送的真正有效的数据。例如用户通过 socket recv() send() 函数接收和发送的实际是应用层数据。这样通过串口转 TCP IP 用户就可以用 recv() send() 函数收发串口数据了。

  但是 TCP/IP 并不只是 recv() send() 这么简单,根据工作模式的不同,它关系到连接、关闭、监听等,这是串口转网口后需要增加处理的部分。 TCP IP 的工作模式可以分为: TCP 服务端模式( TCP Server )、 TCP 客户端模式( TCP Client )、 UDP 模式。

   UDP 模式: UDP 模式是基于非连接的模式,只要有数据发送即可发送,不需要事先连接。所以这种模式更加地接近于串口的通信方式。但是 UDP 协议无法保证数据不丢失,容易产生误码。

   TCP 模式: TCP 模式采用数据可靠传输机制,所以可以保证数据基本不误码、不丢失。在 TCP 通信中,必然是由通信的两端构成,其中一方是 TCP 客户端,一方是 TCP 服务端。 TCP 客户端和 TCP 服务端的概念可以用电话来类比。 TCP 客户端是打电话的人,而 TCP 服务端是接电话的人。

  如何选择 TCP/IP 的工作模式?

1.         TCP UDP 的选择:尽量选择 TCP 模式,特别是经过 internet 的大数据量传输, udp 容易误码和丢失。

2.         选择 TCP 客户端还是 TCP 服务器端:请遵循以下原则:

3.         原则一:发起数据发送的一方应该选择为客户端。例如一个数据采集系统,采集终端应该为客户端。这是因为当 TCP 连接断开的情况下,客户端能够在需要发送数据的时候主动建立连接。而 TCP 服务端,只能够被动地接受连接,使得数据无法发送出去。

4.         原则二: IP 或者域名固定的一方为服务器端。例如在有多个数据采集终端,而只有一个中心服务器的情况下,中心服务器应该为服务端。这是因为,中心服务器的 IP 或域名一般是固定的,而采集终端的 IP 是不断增加和变化的。中心服务器难以记住所有的采集终端的 IP ,所以也难以发起连接;而采集终端寻找中央服务器就比较容易。

3. 串口转网口关键技术二:串口分帧技术

  串口数据是可以连续不断发送的,而以太网数据则是以数据包为单位发送的。这样就关系到将多长的串口数据打包后作为一个以太网数据包发送的问题。

  数据包长度:以太网数据包最长 1500 多字节,所以在串口转网口转发器收到 1500 字节后必须将其打包发送。用户可以设定这个数据包长度上限。

  数据包间隔:除了数据包长度作为串口分帧的规则外,一个更为符合逻辑的方法是通过数据包间隔。当串口转 TCP IP 转发器发现的串口数据流中出现了 T 毫秒的空闲时间时,则认为之前收到的串口数据可以作为一个以太网数据包发送了。这里的 T 就是用户设定的数据包间隔。

4. 串口转网口关键技术三: 9 位技术

  以太网数据是以字节 Byte 计算的每个字节都是 8 位,但是串口数据则有可能出现 9 位,第 9 位常常用于区分是地址帧还是数据帧, 1 表示地址帧 0 表示数据帧。那么在当串口转化为以太网之后,如何将第 9 位也传送出去就成了一个关键技术。

  在众多的串口转网口方案中都是将第 9 位直接舍弃的,目前据了解上海卓岚信息科技的方案具有快速地适应 9 位的功能,其实现方法中采用了称之为 RealCom 的协议。由于增加了第 9 位,所以串口数据不能够直接透明地转化为 TCP IP 应用层数据, realcom 协议将串口数据打包之后整个作为 TCP IP 的应用数据传输。这样可以在 realcom 协议的协议头部加入该数据包的 9 位是 1 还是 0 的信息,从而实现了 9 位传输技术。

上一篇:
下一篇:
 
 最新动态
企业培训
 技术文章
推荐论坛
英达概况 | 在线报名 | 在线咨询 | 联系我们
电话:029-88259409 88278304 传真:88259409 E_mail:tukx@21cn.com
高新校区:西安市太白南路263号新一代国际公寓C座1508室(太白南路与科技路什字东南角)
郭杜校区:西安市西沣路(长安产业园) 田园公寓5号楼1502室(五龙大厦车管所对面)