|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
一、串行通信基础知识9 e' S; i5 p% E
1、异步通信和同步通信# X* F- X! |; j H
计算机的数据传输共有两种方式:并行数据传输和串行数据传输。
/ C I: S' y8 K1 Z8 @并行数据传输的特点:是各数据位同时传输,传输速度快,效率高。但并行数据传输时有多少数据位就需要有多少根数据线,因此,传送成本高。: X2 Z/ }: X( D. Z
串行数据传输的特点:是数据传输按位顺序进行,只需一根传输线即可完成,成本低但速度慢,适用于远距离数据传输。常用的Internet网采用的就是串行数据传输。
, I$ b* r* b( y( e5 N2 h/ f; N串行通信又分为异步传输(Asynchronous Transmission)和同步传输(Synchronous Transmission)两种方式,一般称为异步串行通信和同步串行通信。, Y5 m2 E0 w4 K
(1)异步串行通信7 H# u2 M! o5 C+ V
异步串行通信是以字符为单位的间歇传输形式。传送时按字符进行包装,为此,在数据位之外要增添起始位、奇偶校验位和停止位,构成一个通信帧。下图为异步通信的帧格式。
' t$ y" d) b; N" ~" Q1 |( r. A
, w4 `; }# E- [% R7 P: l
几点说明:" L7 y6 @% Q' O8 q- \
① 在串行通信中,信息的两种状态分别以mark和space标志。其中mark译为标号,对应逻辑状态1,在发送器空闲时,数据线应保持在mark状态;space译为空格,对应逻辑状态0。
7 V8 f. D0 s5 @( l② 起始位。发送器通过发送起始位而开始一个字符的传输。起始位使数据线处于space状态。8 u) @2 ~3 L9 g) I' m# i, G
③ 数据位。起始位之后传送数据位。在数据位中,低位在前(左),高位在后(右)。由于字符编码方式的不同,数据位可以是5、6、7或8位等多种形式。
. @: b) m9 @( T④ 奇偶校验位。用于对字符传送作正确性检查,因此,奇偶校验位是可选择的,共有3种可能,即奇校验、偶校验和无校验,由用户根据需要选定。
7 T& L$ x0 x" _ a$ ? p$ L所谓偶校验,即数据位和奇偶校验位中逻辑1的个数加起来必须是偶数(全0也视为偶数个1)。
`% T* T# ?- {5 ~! l所谓奇校验,即数据位和奇偶校验位中逻辑1的个数加起来必须是奇数。* d, k' l6 s. l+ Y
⑤ 停止位。停止位在最后,用于标志一个字符传输的结束,对应于mark状态。停止位可能是1、1.5或2位,在实际应用中根据需要确定。
( L5 q9 Y& J. B- n1 T⑥ 位时间。一个格式位的时间宽度。
s1 s( A0 S9 E# z0 U: W# u⑦ 帧(Frame)。从起始位开始到停止位结束的全部内容称为一帧。1 T+ I, J9 o. p0 f. u; @& T2 q
异步串行通信是一帧接一帧进行的,传输可以是连续的,也可以是断续(间歇)的。" w0 @. R! ?& i. c
(2)同步串行通信) f8 c- e! C* t( `$ a4 @3 N, o; ]
为提高传送速度,把数据传输按相等的时间间隔分块进行,在数据块的开始加一些特殊字符,作为发送和接收双方的同步标志。由于数据块的位数较多,为防止错位,在发送数据时一般同时给出时钟信号,以保持接收与发送的同步,这就是同步串行通信。同步串行通信的数据传送格式如下图所示:/ l, _' E2 B2 ?5 P: ~, C
+ b8 q- S- g7 @/ t
同步串行通信的数据格式有如下特点和要求: k7 K. x6 b) O4 r( N
① 只在数据块传输的开始使用同步字符串,作为发送和接收双方同步的标志,而在结束时不需要同步标志。# j& X4 N0 K. A4 f# Y, d& {
② 数据字符之间不允许有间隔,当线路空闲或没有数据可发时,可发送同步字符串。4 f: M1 T" z, J4 p s; ]: Y
③ 数据块内各字符的格式必须相同。: j. K. |: U, O* k1 n$ l( X
同步串行通信比异步串行通信的传送速度快,但同步串行通信要求收发双方在整个数据传输过程中始终保持同步,这将对硬件提出更高的要求,实现起来难度大一些;而异步串行通信只要求在每帧的短时间内保持同步即可,实现起来容易得多。所以同步串行通信适用于数据量大、对速度要求比较高的串行通信场合。
$ s+ X3 d: O! K; I' T' c+ n5 X2 、串行通信线路形式2 r, j9 ?+ |& L' ^6 C4 a
(1)单工形式
/ \8 p. g4 N" d) G* ~ L单工(SIMplex)形式的数据传输是单向的。通信双方中一方固定为发送端,另一方则固定为接收端。单工形式的串行通信只需要一条数据线,如下图所示。
' Y: Z3 H' N$ T% V& K' D% v例如,计算机与打印机之间的串行通信。8 j7 d' w/ }+ w* s
(2)全双工形式
" f8 ?' _ \+ Z) Q( e, u) O全双工(Fullduplex)形式的数据传输是双向的,可以同时发送和接收数据,因此,全双工形式的串行通信需要两条数据线。
. ]5 z" h6 z. x. ^4 e# l2 J; m(3)半双工形式
! }. x& O t$ _% Z9 |) |6 _半双工(Halfduplex)形式的数据传输也是双向的。但任何时刻只能由其中的一方发送数据,另一方接收数据。因此半双工形式既可以使用一条数据线,也可以使用两条数据线。$ L. `* w+ j, N' r0 x
) k$ q9 O+ D6 d# E. W* |" U: `4 ]* K9 g- P/ O; M4 S: v
|
|