奇偶校验就是在通信中多传一位作为奇偶校验位。如果我选择奇校验,那么数据位中为1的个数与校验位相加(不包括起始位或停止位),结果应该是奇数;偶校验则反之。 接收时看1的个数是 否符合设定的校验,可以判断是否有误码。 奇偶校验只能检错,不能纠错的。而且只能检测1位误码,检测出有错后只能要求重发,没法纠正的。 举个简单的例子:例如我用奇校验,数据0110 0101,则校验位是1;如果数据0110 0100,则校验位应该是0 异步串行通信: 异步通信的特点是一个字符一个字符的传输,而且传送一个字符总是以起始位开始,以停止位结束,字符之间没有固定的时间间隔要求。每一个字符的前面都有一个 起始位(低电平,逻辑0),字符本身由5~8位数据位组成,接着字符后面是一位校验位(设置奇偶校验前提下),最后是一位、一位半或者是二位的停止位,停 止位后面是不定长度的空闲位。停止位和空闲位都规定为高电平,这样就保证起始位开始处一定有一个下降沿。 起始位实际上是作为联络信号附加进来的,当它变为低电平时,通知接收方传送开始,它的到来,表示下面接着是数据位来了,要准备接收;而停止位标志一个字符 传送的结束。 传送开始前,收发双方把双方采用的通讯格式(包括字符的数据位长度、停止位位数、有无校验位、奇校验或是偶校验)和波特率作统一规定。传送开始后,接收设 备不断的检测传输线,当收到一系列的1(停止位或是空闲位)之后,检测到一个下降沿,说明起始位出现,起始位经确认后,就开始接收所规定的数据位、奇偶校 验位和停止位。经过处理将停止位去掉, 把数据位拼成一个并行字节,并且经校验,无奇偶错误后才算正确的接收一个字符。 异步串行通信是按字符传输的,每传送一个字符,就用起始位通知对方,以此来重新核对收发双方同步。即使收发双方设备的频率略有偏差,也不会因偏差的积累而 导致错位,加之字符之间的空闲位也为这种偏差提供一种缓冲,所以,异步通信的可靠性高。但由于要在每个字符的前后加上起始位和停止位这样一些附加位,使得传输效率变低了,只有约 80%,因此一般用在数据速率较慢的场合(小于19.2Kb/s),在高速传送时,一般要采用同步协议。

评论