关于串口通信

作者: 流年排队 | 来源:发表于2019-04-16 23:55 被阅读0次

在我们的日常生活中,经常会听到串口线一词。而对于网络工程师来说,串口线更是工作时不可或缺的工具。

常见串口线

那什么是串口?和串口有关的串口通信又是什么?

在了解串口通信之前,先了解一下几个基本概念,主要是同步通信异步通信串行通信并行通信

在通信的线路上,有两种状态,分别是逻辑1高电平)和逻辑0低电平),传输的数据格式为起始位(start bit)数据位(data bit)奇偶校验位(parity bit)停止位(stop bit)

串口数据帧

同步通信,比特同步通信技术,要求发送方和接收方具有同频同相同步时钟信号。同步通信需要在传送报文的最前端附加特定的同步字符,使收发双方建立同步,后续便在同步时钟的控制下逐位发送、逐位接收。

同步通信最大的特点便是高速度大容量的数据传送,但同步通信要求时钟严格同步,硬件复杂,成本高。

同步通信应用最广泛的是在变电站,变电站的时钟同步通信技术,就是基于IEEE1588标准的PTP精确时钟同步协议来进行的。(PTP,Precision Time Protocol,精确时钟同步协议)。

异步通信,指通信中两个字符(8位字符)之间的时间间隔可以是不固定的,而在一个字符内各位的时间间隔是固定的。

简单来说,同步就是指发送方发出数据后,等接收方发回响应之后再发出下一个数据包;异步是指发送方发出数据后,不等接收方发回响应,紧接着发送下一个数据包。

同步通信和异步通信的区别

串行通信,使用一条数据线,将数据一位一位地依次传输,每一位数据占据一个固定的时间长度。

串行通信

并行通信,多比特数据同时通过并行线进行传送。

串行通信和并行通信的区别

了解完相关的基本通信概念,就是本篇文章的重点—串口串口通信

串口,即串行接口,是一种可以将接受来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可以将接受的串行数据流转换为并行的数据字符提供给CPU的器件。

串口可以在使用一根线发送数据的同时用另一根线接收数据,用来实现远距离通信。

串口通信Serial Communication),指串口按bit)发送和接收字节,发送和接收到的每一个字符,都是按一次一位传递的,每一位为1或者0。

串口通信有四个最重要的参数,波特率数据位停止位奇偶校验

常用的超级终端工具SecureCRT中就会经常出现相关选项。

SecureCRT软件串口的界面选项

①波特率,在信息传输通道中,携带数据信息的信号单元叫码元,每秒钟通过信道传输的码元数被称为码元传输速率,也就是波特率

波特率,也是衡量符号传输速率的参数和传输通道频宽的指标,用单位时间内载波调制状态改变的次数来表示。

举个例子,如果数据传送速率为240b/s,也就是每秒传送240个字符,其中每个字符的格式为10位,包含1个起始位、1个停止位、8个有效数据位,则波特率为240baud(波特),有效数据位的传送速率比特率为240*10=2400bps(比特每秒)。

1比特每秒是指每秒传输1比特(bit),baud(波特)代表每秒的调制数。

②数据位,通信中真正有效的信息。数据位的位数由通信双方共同约定,一般是6位、7位或8位。

比如,标准的ASCII码是7位(0~127),扩展的ASCII码是8位(0~255)。

③停止位,在一个数据包的最后,用以标志一个字符传输的结束。停止位有1位、1.5位、2位。

同时,数据是在传输线路上定时的,并且每一个设备有自己的时钟,停止位可以提供计算机校正时钟同步的机会。

④奇偶校验位,串口通信中一种简单的检错方式。串口会设置校验位,用一个值确保传输的数据有偶数个或奇数个逻辑高位。

奇校验,需要确保传输的数据总共有奇数个逻辑高位;偶校验,需要确保传输的数据总共有偶数个逻辑高位。

举个例子,若传输的数据是011,有两个逻辑高位1,则奇校验位就是1,确保数据一共有3个(奇数)逻辑高位1;偶数校验位是0,数据一共有2个(偶数)逻辑高位1。

相关文章

  • 串口通讯

    Android应用串口通信的实现 Android SDK并没有在Framework层实现封装关于串口通信的类库。但...

  • 关于串口通信

    在我们的日常生活中,经常会听到串口线一词。而对于网络工程师来说,串口线更是工作时不可或缺的工具。 那什么是串口?和...

  • PySerial和PyVisa timeout 设置

    最近在做串口和NI仪表控制的程序,记录一下关于串口通信和仪表通信中timeout的设置。 PySerial 官方说...

  • Android平台的串口通信技术

    概念 串口通信 概念;串口通信(Serial Communications)按位(bit)发送和接收字节。串口可以...

  • 干货小知识:一文教你Java程序与串口通信的实现及通信!

    串口通信的原理 串口通信指串口按位(bit)发送和接收字节。尽管比按字节(byte)的并行通信慢,但是串口可以在使...

  • 串口通信

    关于android单片机串口通信 网上有很多关于android串口读写的结果,但是搜出来的都不太让我满意 ,下面贴...

  • Python串口通信

    前言 从需求说起 串口通信控制二维码阅读器 串口通信控制门闸机 pyserial python 串口通信第三方包 ...

  • 9月21日

    今天讲的全新内容 串口通信 什么是串口和并口 主要讲解是串口通信寄存器的配置 并且初步实现了通信功能 下午复习上午...

  • 2018-01-08课后总结

    今天学习了串口通信。串口通信分为串行通信和并行通信,综合串行和并行的优缺点,在工业分布中串行通信的应用更为广泛。了...

  • java实现上位机与下位机串口通信

    串口通信是在工程应用中很常见。在上位机与下位机通讯过程中常通过有线的串口进行通信,在低速传输模式下串口通信得到广泛...

网友评论

    本文标题:关于串口通信

    本文链接:https://www.haomeiwen.com/subject/ibywwqtx.html