|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
摘要: 以单片机实验系统中网络串口的使用为例,介绍了单片机网络串口实现网络数据传输的: u% U& }" [5 \8 L! O6 O% U
方法.2 W( e7 c; [6 }
5 ^$ E) Q( N/ `( b
关键词:网络串口;单片机;实验系统;透明传送
5 U" Q3 U- z& \( C V- T- M9 Y& ], j: u2 r/ P9 U
单片机实验系统中的设备接口一般采用传统的2 E6 Y6 ]0 C- P. L& q% i
串口进行通信.串口通信具有性能稳定、使用简单的* Z$ h( O: A. l# |* i. u7 h2 D+ r
特点.但是,这种接口的通信距离通常只能在一个较) P" K8 d3 j4 z
小的范围内.如果把系统内外的设备连成一个网络 ?( J' q& u F a* R
或更大的系统,从事更复杂的实验工作,需要重新开! p; A( N" w$ S
发一整套的软、硬件支撑环境,而新的支撑环境对于7 [- c5 w' |. q
异构网络的支持将会更加困难.: O( V% H4 [' i; u4 W& F
目前,Internet已经广泛普及.如果要将单片机% T+ V/ f- A9 A, J! V: k
实验系统与现有的Intermet/Intranet较好地整合,不.
, v! {9 D. H4 y2 i/ c) H改变设备的对外接口就很难实现.解决的方法是:让/ c$ `# p% n/ N
系统内每一个需要上网的设备拥有一个网络串口,
# Z& M5 V! r+ ~+ k" v/ g通过网络串口把主要设备接人TCP/IP网络.: Q' K: d. n6 h! N5 w, X# s
1网络串口的工作原理: N! ]* @. _0 w! r# f
网络串口实现基于TCP/IP的串口数据流传
4 d1 S0 E7 a0 G0 {( r输,可以将-个或多个串口设备连接并将串口数据+ N- R. h7 j4 G, v c
流进行选择和处理,把现有串行接口的数据转化为
4 H& A: R( j6 [' i2 }, i9 c7 @IP端口的数据,然后进行IP化的管理与数据存取,( b; N+ ~( G1 y% O: A3 N8 y
从而将传统的串行数据传送到IP通道,提高现有设.
( u* e C* K- P) T1 {: v+ G ~7 k备的利用率,既节约投资,又可在原有的网络基础上
. w% z( J; i& k* L; @4 M简化布线复杂度.
, y3 |2 X6 E4 b网络串口完成的是一个面向连接的串行数据传
! }" k& y b' y/ E E& N输链路和面向无连接的以太网之间的通信数据的透$ G$ @7 x' p* p7 X" H8 g/ k
明转换.它对各种数据进行处理,处理来自串口设备 _, s, w, l. o7 K9 f7 M {3 R: ~
的串口数据流,并进行格式转换,使之成为可以在以& k) H( c( R. D' K; u$ `/ ~
太网中传播的数据帧;对来自以太网的数据帧进行8 c, v0 O9 G; N" @% j% {) ] X
* d. w$ o" N& O
判断,并转换为串行数据送达目标IP地址的串口
, L& U; w, f3 I+ a% R" w! w8 D+ N设备.0 g7 X9 ^# z& f8 a8 W
为了将TCP/IP网络中的数据流与串行接口中
j. b2 b# s$ ] I& G$ I* [7 m的数据进行转换,要求有相应的硬件和软件模块.其
) O3 C) V3 j( D中,与TCP/IP网络的四个层次结构模型对应,系统
& Z+ I8 D- w% R$ Q9 `8 _- w, x设计时也要根据需求和相应的协议实现模型中的全" ?7 F5 i' o& A6 T E4 E: @( K9 q) K5 T
部或部分相关协议.例如ARP、RARP、ICMP、TCP、% O/ X5 |- G j- p6 }6 I3 @/ Z
DHCP等等[.. g! X9 z5 }! V
硬件系统是实现整个系统功能的基础,也是整2 f, F7 H- ]9 I6 M0 E* X/ p7 ]5 S
个设计实现的关键.整个网络串口的关键,在于串口5 g, v+ C x; X4 z h- R0 w
数据包与TCP/IP数据报之间的转换以及双方数据9 O2 ]) w8 E; ^% U# y8 e0 @$ r
由于速率不同而存在的速率匹配问题.在网络串口
6 m" t% |9 {2 a6 L的实现过程中,也必须考虑所做的设计和选择的器
# W, k+ y2 k7 x% y2 B7 ]5 l* C- t件能否完成这些功能.制定设计方案和选定器件时6 N ]% b. n( l& m8 X) l
遇到的技术难点是:如何利用处理器对串口数据信5 O" v! I# n8 z& p# c/ m0 q/ \0 N
息进行TCP/IP协议处理,使其变成可以在互联网7 z, L: B$ Y$ V# }4 P. z7 G
上传输的IP数据包“21.+ k2 x9 Q: s9 @! x5 y: e- g8 r
为了实现上述功能,网络串口通常采用的硬件4 I8 E+ d( k4 e c* L& k
系统组成如图1所示,由主处理模块、串口数据处理
0 q/ \, t- L9 b" F/ H模块、以太网接口及控制模块等部分共同完成串口/ {+ a" x* T: C: E
服务器的功能.
# S7 n& ~8 |1 @9 }2 I {: w( k) R2 `5 z
附件下载:$ n; R2 [# y+ p4 T8 K
: l( V2 _0 g1 R) G+ i4 M4 z
( n, C9 v; y4 K) `) @5 @/ J$ a0 t |
|