精华内容
参与话题
问答
  • 串行通信

    2020-04-05 16:19:59
    串行接口是一种可以将接受来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接受的串行数据流转换为并行的数据字符供给...串行通信___异步传送方式 起止式异步通信的特点:传输不连续,以字符为单...

    一、通讯的基本概念:

    与外界的信息交换称为通讯。基本的通讯方式有并行通讯串行通讯两种。

    一条信息的各位数据被同时传送的通讯方式称为并行通讯。并行通讯的特点是:各数据位同时传送,传送速度快、效率高,但有多少数据位就需多少根数据线,因此传送成本高,且只适用于近距离(相距数米)的通讯。

    一条信息的各位数据被逐位按顺序传送的通讯方式称为串行通讯。串行通讯的特点是:数据位传送,传按位顺序进行,最少只需一根传输线即可完成,成本低但送速度慢。串行通讯的距离可以从几米到几千米。

     

    根据信息的传送方向,串行通讯可以进一步分为单工、半双工和全双工三种。信息只能单向传送为单工;信息能双向传送但不能同时双向传送称为半双工;信息能够同时双向传送则称为全双工。

    串行通讯又分为异步通讯同步通讯两种方式。一般主要使用异步通讯方式

    串行接口是一种可以将接受来自CPU的并行数据字符转换为连续的串行数据流发送出去,同时可将接受的串行数据流转换为并行的数据字符供给CPU的器件。一般完成这种功能的电路,我们称为串行接口电路。数据转换是指数据的串并行转换。具体说,在发送端,要把并行数据转换为串行数据;而在接收端,却要把接收到的串行数据转换为并行数据。

    串行通信___异步传送方式

        起止式异步通信的特点:传输不连续,以字符为单位进行传送。一个字符称为一帧信息,它由起始位、数据位、奇偶校验位和停止位4个部分组成。起始位为信号0,占一位;其后是数据位,可以是5,6,7,8位;传输时低位在先、高位在后;再后面的1位为奇偶校验位(可要可不要);最后是停止位,它用信号1来表示一帧信息的结束,可以是1位、1位半(位数的本质含义是信号出现的时间,故可有分数位,如1.5。这样剩下的半位的时间就不能传输数据,需等待下一个时间周期才能传输数据。这些都是由硬件控制,软件只需设定即可)或2位。空闲位为1。这种格式是靠起始位和停止位来实现字符的界定或同步的,故称为起止式协议

    异步通信可以采用正逻辑负逻辑,正逻辑是指逻辑上的1对应高电平,0对应低电平;负逻辑是指逻辑上的1对应低电平,1对应高电平。

    MCS_51单片机有一个全双工串行口。全双工的串行通讯只需要一根输出线和一根输入线。数据的输出又称发送数据(TXD),数据的输入又称接收数据(RXD)。串行通讯中主要有两个技术问题,一个是数据传送、另一个是数据转换。数据传送主要解决传送中的标准、格式及工作方式等问题。数据转换是指数据的串并行转换。具体说,在发送端,要把并行数据转换为串行数据;而在接收端,却要把接收到的串行数据转换为并行数据。

    (接收数据指示灯: 
       当MODEM接收数据时,该指示灯亮。TXD与RXD指示灯反映着调制解调器与计算机之间数据传输的状况。在调制解调器正常传输数据时,会看到TXD和RXD在不停地闪烁,有数据传输时灯亮,无数据传输时灯不亮,不同的数据传输方式时RXD和TXD闪烁的情况是不相同的,全双工数据传输时TXD和RXD同时各自闪烁。半双工数据传输时T XD和RXD交替闪亮;RXD亮时TXD灭,RXD灭时TXD亮。
       上面说的,是接收数据指示灯,不是RXD的原本解释。
       RXD、TXD是Receive Data ,Transmit Data 的意思
       RXD 为接收,TXD 为发送,X就是中间的eXchange中的X.)

     

    二、通讯—异步通信方式

    1.异步通信的特点及信息帧格式:

    以起止式异步协议为例,下图显示的是起止式一帧数据的格式:

     

    起止式异步通信的特点是:一个字符一个字符地传输,每个字符一位一位地传输,并且传输一个字符时,总是以“起始位”开始,以“停止位”结束,字符之间没有固定的时间间隔要求。每一个字符的前面都有一位起始位(低电平,逻辑值),字符本身由5-8位数据位组成,接着字符后面是一位校验位(也可以没有校验位),最后是一位或一位半或二位停止位,停止位后面是不定长的空闲位。停止位和空闲位都规定为高电平(逻辑值1),这样就保证起始位开始处一定有一个下跳沿。(一位半是啥意思??)
      从图中可看出,这种格式是靠起始位和停止位来实现字符的界定或同步的,故称为起止式协议

    异步通信的信息格式如下边的表所示:

    起始位

    逻辑0

    1位

    数据位

    逻辑0或1

    5位、6位、7位、8位

    校验位

    逻辑0或1

    1位或无

    停止位

    逻辑1

    1位,1.5位或2位

    空闲位

    逻辑1

    任意数量

     

    注:表中位数的本质含义是信号出现的时间,故可有分数位,如1.5。

    例:传送8位数据45H(0100,0101B),奇校验,1个停止位,则信号线上的象图2所示那样:异步通信的速率:若9600bps,每字符8位,1起始,1停止,无奇偶,则实际每字符传送10位,则960字符/秒。

    2.异步通信的接收过程

    接收端以“接收时钟”和“波特率因子”决定一位的时间长度。下面以波特率因子等于16(接收时钟每16个时钟周期,使接收移位寄存器移位一次)、正逻辑为例说明,如图3所示。

    (1)开始通信时,信号线为空闲(逻辑1),当检测到由1到0的跳变时,开始对“接收时钟”计数。

    (2)当计到8个时钟时,对输入信号进行检测,若仍为低电平,则确认这是“起始位”B,而不是干扰信号。

    (3)接收端检测到起始位后,隔16个接收时钟,对输入信号检测一次,把对应的值作为D0位数据。若为逻辑1, 作为数据位1;若为逻辑0,作为数据位0。

    (4)再隔16个接收时钟,对输入信号检测一次,把对应的值作为D1位数据。….,直到全部数据位都输入。

    (5)检测校验位P(如果有的话)。

    (6)接收到规定的数据位个数和校验位后,通信接口电路希望收到停止位S(逻辑1),若此时未收到逻辑1,说明出现了错误,在状态寄存器中置“帧错误”标志。若没有错误,对全部数据位进行奇偶校验,无校验错时,把数据位从移位寄存器中送数据输入寄存器。若校验错,在状态寄存器中置奇偶错标志。

    (7)本幀信息全部接收完,把线路上出现的高电平作为空闲位。

    (8)当信号再次变为低时,开始进入下一幀的检测。

     

    3.异步通信的发送过程

    发送端以“发送时钟”和“波特率因子”决定一位的时间长度。

    (1)当初始化后,或者没有信息需要发送时,发送端输出逻辑1,即空闲位,空闲位可以有任意数量。

    (2)当需要发送时,发送端首先输出逻辑0,作为起始位。

    (3)接着,发送端首先发送D0位,直到各数据位发送完。

    (4)如果需要的话,发送端输出校验位。

    (5)最后,发送端输出停止位(逻辑1)。

    (6)如果没有信息需要发送时,发送端输出逻辑1,即空闲位,空闲位可以有任意数量。如果还有信息需要发送,转入第(2)步。

     

    注意:对于以上发送、接收过程应注意以下几点:

    (1)接收端总是在每个字符的头部(即起始位)进行一次重新定位,因此发送端可以在字符之间插入不等长的空闲位,不影响接收端的接收。

    (2)发送端的发送时钟和接收端的接收时钟,其频率允许有一定差异,当频率差异在一定范围内,不会引起接收端检测错位,能够正确接收。并且这种频率差异不会因多个字符的连续接收而造成误差累计(因为每个字符的开始(起始位处)接收方均重新定位,只要保证在一个数据帧范围内采集数据不跨越到下一个或者上一个位区采集数据就能保证不出错)。只有当发送时钟和接收时钟频率差异太大,引起接收端采样错位,才造成接收错误。

    (3)起始位、校验位、停止位、空闲位的信号,由“发送移位寄存器”自动插入。在接收方,“接收移位寄存器”接收到一帧完整信息(起始、数据、校验、停止)后,仅把数据位的各位送至“数据输入寄存器”,即CPU从“数据输入寄存器”中读得的信息,只是有效数字,不包含起始位、校验位、停止位信息。

    展开全文
  • 计算机串行通信分类

    2020-11-15 06:42:21
    串行通信时数据是一位一位按顺序传送的,只用很少几根通信线,串行传送的速率低,但传送的距离可以很长,因此串行适用于长距离而速率要求不高的场合。在PLC网络中传送数据绝大多数采用串行方式。 从通信双方信息的...
  • 串行通信开发指n,基础知识介绍,适合做串行通信开发的人群,内容包括RS-232,RS-422,RS-485等
  •  常用的标准51单片机内部仅含有一个可编程的全双工串行通信接口,具有UART的全部功能。该接口电路不仅能同时进行数据的发送和接收,也可作为一个同步移位寄存器使用。当以此类型单片机构成分布式多级应用系统时,...
  • 异步串行通信的数据格式如图所示。  图 异步串行通信的数据格式  异步通信数据帧的第一位是开始位,在通信线上没有数据传送时处于逻辑“1”状态。当发送设备要发送一个字符数据时,首先发出一个逻辑“0”信号...
  • 摘要 对串行通信波特率自动识别的方法进行深入的研究和分析;创新性地提出在码元宽度捕捉的基础上,用求最大公约数的方法进行波特率的自动识别,实现了不对待测系统发送的数据进行特殊要求即实现其串行通信数据的...
  • 当控制计算机与各数控机床相距较远时,一般采用串行通信方式而不采用并行通信方式。这是因为并行通信系统的造价较高、众多的连线不仅容易引入干扰,也容易发生线路故障。控制系统中常用的串行通信一般采用RS-232C...
  • 串行通信是指数据一位一位地按顺序传送的通信方式,其突出优点是只需一根传输线,可大大降低硬件成本,适合远距离通信。其缺点是传输速度较低。与之前一样,首先我们来了解单片机串口相关的寄存器。SBUF 寄存器:它...
  • 一、串行通信介绍  1、串行通信概述  串行通信是将数据分成若干二进制位(bit),然后通过一条线路或一个通信信道,按照规定的规程逐位依次进行传输,实现计算机与计算机或计算机与外部设备之间的通信(数据交换...
  • 在电参数仪的设计中,数据采集由单片机AT89C52负责,上位PC机主要负责通信(包括与单片机之间的串行通信和数据的远程通信),以及数据处理等工作。在工作中,单片机需要定时向上位PC机传送大批量的采样数据。通常,...
  • 随着计算机应用的日益普及,与计算机进行信息交互的终端也越来越多,其中串行通信是终端与计算机之间的主要通信方式。通常情况下,接收方必须知道发送方的发送速率,帧结构,并采用相同的速率及帧结构进行接收,才能...
  • 摘要:为了适应全数字化自动控制更加广泛的应用,采用现场可编程门阵列(FPGA)对异步串行通信控制器(UART)进行多模块的系统设计的方法,使串口通信的集成度更高。  对UART系统结构进行了模块化分解,可分为三个...
  • 在DOS时代,编写串行通信程序是一件相当复杂的工作,程序员需要具备相当的硬件知识,对可编程串行通信接口芯片的内部寄存器定义、工作方式、指令字等相关内容有所了解,才有可能着手编写程序,大量的时间和精力都花...
  • 目前几乎所有的DSP都提供一个或多个串口,然而,多数DSP芯片提供的是同步串口,在实际的应用中,DSP要能够与外设进行异步串行通信,如与PC机进行串行数据传输就要求DSP系统具UART串行接口。...
  • 0 引 言 ...采用可编程逻辑器件CPLD/FPGA技术,对三线制同步串行通信接口电路进行结构设计与实现,可以大幅度减小系统体积,降低功耗,提高设计的灵活度。同时,还可以在其中增加其他逻辑功能模块,并
  • 该测温仪采用的是RS232C串行通信标准接口,该接口在很多通信设备中通用,目前与PC机的直接串行通信也是RS 232C接口。尽管RS232C性能指标并非很好,但还是有广泛的市场支持。就可以方便的在2个数字设备之间进行信息的...
  • 当控制计算机与各数控机床相距较远时,一般采用串行通信方式而不采用并行通信方式。这是因为并行通信系统的造价较高、众多的连线不仅容易引入干扰,也容易发生线路故障。控制系统中常用的串行通信一般采用RS-232C...
  • 在现代工控自动化领域中就大量采用了串行通信方式来实现计算机对远程串行设备的监控管理, 本文通过对串行通信方式及串行通信软件实现方法的分析, 提出了一种简单有效可行的串行通信软件设计方法, 供大家参考。...
  • 摘 要: 为了简化应用系统中的三线制同步串行通信扩展接口,减小系统体积,降低系统功耗,通过研究三线制同步串行通信的原理,利用FPGA,结合硬件描述语言VHDL,设计了三线制同步串行通信控制器功能框架结构,介绍...
  • 并行通信:是指数据的各位同时进行传送的通信方式...串行通信:是指数据一位一位顺序传送的通信方式。串行通信的两种基本形式:同步通信和异步通信。异步通信所传输的数据帧格式是由1个起始位、1~9个数据位、1~2个停
  • 串行通信——异步串行通信

    千次阅读 2019-03-23 16:06:08
    II、异步串行通信详解 一、数据格式 1. 起始位 2. 数据位 3. 奇偶校验位 4. 停止位 二、通信制式 1. 单工 2. 半双工 3. 全双工 三、通信速率 I、串口通信简介 一、定义 在一条传输线上,数据以“位”...

    目录

    I、串口通信简介

    一、定义

    二、意义

    三、分类

    II、异步串行通信详解

    一、数据格式

    1. 起始位

    2. 数据位

    3. 奇偶校验位

    4. 停止位

    二、通信制式

    1. 单工

    2. 半双工

    3. 全双工

    三、通信速率


    I、串口通信简介

    一、定义

    一条传输线上,数据以“位”为单位进行逐个传输,即为串行通信。

    二、意义

    并行通信控制简单、相对传输速度快,但由于传输线较多,长距离传输时成本高,因此仅适合短距离的数据传输;

    相对的,在满足“传输速度 ≥ 最大需求速度”的前提下,使用串行通信便是大势所趋了。

    三、分类

    串行通信分为两种方式,异步串行通信同步串行通信

    异步串行通信,是指发送方与接收方,使用各自的时钟控制数据发送和接收过程(为使双方收发协调,要求双方时钟尽可能一致);

    同步串行通信,则是发送方时钟直接控制接收方时钟,使双方完全同步(同步方法有“外同步和自同步”两种)。

     

    串行通信的最小传输单位是“位”,一次完整的“接收/发送”的最小单位是“字符”(单独收发一个位的数据,通常没有意义)。

    • 使用异步串行通信时,由于收发双方时钟不严格一致,所以每个字符都要用到起始位和停止位来作为字符开始和结束的标志,从而保证数据传输的准确性(由于每个字符都有开始和停止位,因此字符之间的时间间隔是任意的);
    • 使用同步串行通信时,由于收发双方时钟严格一致,所以仅在数据块(有效数据)传输的一开始和结束时,用到了开始符和结束符,在有效数据传输完毕后,发送空闲字符。

    对比两种串行通信方式,同一数据块,后者仅在头尾处添加了开始与结束标记,因此后者的传输效率较高,但实现的硬件设备也更复杂,所以各设备之间,通常采用的还是异步串行通信方式。

    接下来将详细介绍异步串行通信。

    II、异步串行通信详解

    一、数据格式

    一次完整的“接收/发送”的最小单位是“字符”,我们将其称为一个字符帧,字符帧由四部分组成:起始位、数据位、校验位、停止位。

    1. 起始位

    起始位为0。

    • 通讯线在空闲状态时保持高电平,因此出现下降沿即可判定为数据传输开始;
    • 另外,由于数据位定长,且起始位在一次接收中只判定一次,所以不用担心数据位中的0误识别成起始位。

    2. 数据位

    数据位可以是5/6/7/8位,传输时低位在前、高位在后

    3. 奇偶校验位

    校验位可以省略,当需要使用校验位时:

    • 奇偶校验位为1或0;
    • 奇校验时,数据位、校验位中1的个数,应该是奇数;
    • 偶校验时,数据位、校验位中1的个数,应该是偶数。

    4. 停止位

    停止位为1。

    • 停止位可以是1位的长度、1.5位的长度、2位的长度(位数的本质含义是信号出现的时间,故可有分数位);
    • 另外,由于数据位定长,所以停止位位置固定可知,接收时只需判定停止位是否为1即可。

    二、通信制式

    1. 单工

    数据仅能沿一个方向传输,不能实现反向传输(只能A→B,不能B→A)。

    2. 半双工

    数据可以沿两个方向传输,但同一时刻,只能接收或者发送。

    3. 全双工

    数据可以沿两个方向传输,且可以同时进行。

    三、通信速率

    • 串口通讯的速率用波特率表示,定义为每秒传输二进制码的位数,单位是bps(位/秒);
    • 以9600bps为例,假设一个字符帧共有10位(1起始位、8数据位、1结束位),那么每秒钟能传输的最大字符数为“9600/10 = 960”;
    • 最大传输距离,与波特率成反比关系(9600bps,最大传输距离约为76m)。
    展开全文
  • 摘要:介绍了AT89C52单片机与PC机串行通信的实现方法,串行存储器24C256的读写操作流程,并给出了具体通信接口电路、单片机串行通信程序流程以及利用VB6.0的通信控件MSComm实现PC机串行通信的程序。系统经过实际应用...
  • 摘要:由于TMS320C6416不带异步串行收发接口(UART),无法实现DSP系统常用的通串行通信。为此,本文基于TL16C550C设计了一种通过TMS32C6416实现UART数据通信的方法,同时给出了其硬件设计框图以及通过TMS320C6416初始...
  • 之前一直有点搞混串行通信和串口通信的概念 有挺多芯片的datasheet上会说“串行接口” 之前也傻乎乎地理解为就是串口 忘记了是谁还吐槽过“国产芯片手册上写着好好的是串口 可是通信协议根本不是串口” 可能也许...
    之前一直有点搞混串行通信和串口通信的概念  有挺多芯片的datasheet上会说“串行接口” 之前也傻乎乎地理解为就是串口
    忘记了是谁还吐槽过“国产芯片手册上写着好好的是串口 可是通信协议根本不是串口”
    可能也许说不定 国产芯片的datasheet默默背了下黑锅

    昨晚小泽老师甩给我一份datasheet说这是啥通信协议呀

    ←datasheet的残骸(x

    我仔细瞅了瞅感觉挺像SPI的 然后面向搜索引擎搜索一波 终于理清关系了

    串行通信是一种概念,大概意思就是1bit 1bit地收发数据,和n bit n bit地收发的并行通信是并列关系。常见的SPI,I2C,串口,USB都是串行通信的具体实现。而所谓的串行接口,其实也就是能实现串行通信的接口的意思,并不能简单缩写成串口来理解(x

    串口通信呢就是熟悉的串口通信啦,属于串行通信的一个子类

    顺便 SPI的全称是Serial Peripheral Interface,就是 串行外设接口,好像喊一喊串行接口也没毛病,=L=好像又不小心让国产新片datasheet背了个黑锅


    展开全文
  • 随着单片机和微机技术的不断发展,特别是网络技术在测控领域的广泛应用,由PC机和多... 硬件结构和单片机的通1S程序设计 单片机和PC机的串行通信一般采用RS-232、RS-422或B3-485总线标准接口,也有采用非标准的20nnJL电
  • 目前广泛使用的单片机产品(如Intel的8031、Armel的89C51、 GMS97C51等系列单片机)芯片中都集成了串行通信接口。使用这些串行通信接口和RS485接口驱动芯片就可以构成总线型通信网络,从而将多台单片机系统连接成一...
  • 因此,TMS320F240 不仅具有高速数据处理能力,还具有控制和事件管理能力,可完成人机界面、与上位机进行串行通信等功能。2 串行通讯接口(SCI)模块SCI接收器和发送器是双缓冲的,每一个都有他自己单独的使能和中断...

空空如也

1 2 3 4 5 ... 20
收藏数 10,371
精华内容 4,148
关键字:

串行通信