精华内容
下载资源
问答
  • 数据传输常用的串行接口接口的RS432和RS485有什么特点和区别呢?RS485接口RS485总线标准是工业中使用非常广泛的双向、平衡传输标准接口,支持多点连接,很好的解决了智能仪表点对点通信以及联网通信问题。RS485分为...

    96a47657942596a3116fb193cd8288f2.png

    数据传输常用的串行接口接口的RS432和RS485有什么特点和区别呢?

    7611d7b7e495f1afb22f4e4e811a0f19.png

    RS485接口

    RS485总线标准是工业中使用非常广泛的双向、平衡传输标准接口,支持多点连接,很好的解决了智能仪表点对点通信以及联网通信问题。

    e2cb89f297e3cb46c4c74001dca369d9.png

    6b7c2f7877a8ff055afab93cd9025848.png

    RS485分为两线制和四线制,通信方式一般采取主从通信方式。RS485主要有以下特点:

    736837086c79d61760d8c06567e34563.png

    1、RS485的数据传输速率高达10Mbps。

    1bf315270ec3733162baa5d18a9d894b.png

    2、RS485接口采用的平衡驱动器和差分接收器组合,抗噪声干扰性能好。

    3、RS485接口的最大传输距离可达3000米。

    RS232和RS485接口区别:

    RS485接口信号电平比RS232低,不易损坏接口电路,方便与TTL电路连接。

    3a6a868eab4e1a84594351b12219791c.png

    传输速率不同,RS232最大传输速率为20kbps,RS485接口传输速率为10Mbps。

    传输距离不同,RS485接口传输距离高于RS232。

    9d009bc13d38f724c106e789dd3b64b3.png

    RS232接口是单站能力,在总线上只允许连接1个收发器。而RS485在总线上连接多达128个收发器。

    ecbb4dc9c8e982763293b9ecbb1bb0fe.png

    至暗必将过去 

    访问Talk工控网站查看

    2b2412f2d413c042102a549e393245c9.png

    9b9e6dad50f47726f361687bdf88fc8f.png

    点击这里看更多内

    展开全文
  • 本篇这里所指并行信号和串行信号,包括了传输(通信)方式,又...要了解并行信号和串行信号,我们还是来先了解下并行通信(传输)和串行通信(传输)的概念吧。并行信号就是以并行方式通信的信号,而串行信号就是...

    本篇这里所指并行信号和串行信号,包括了传输(通信)方式,又有接口类型,同时还有数据本身的协议特点,信号、协议、总线和接口。想了解信号、协议、总线和接口之间的区别的,可以看前一篇文章:高速串行简史(一):信号、接口、协议及总线

     

    什么是并行信号?串行信号?

    要了解并行信号和串行信号,我们还是来先了解下并行通信(传输)和串行通信(传输)的概念吧。并行信号就是以并行方式通信的信号,而串行信号就是以串行方式通信的信号。串行通信指数据在单条一位宽的传输线上,一比特接一比特地按顺序传送的方式,在早期的定义里也有说只有一根数据线,每个时钟脉冲下只能发送一位数据的方式;而在并行通信中一个字节(8位)数据是在8条并行传输线上同时由源端传到目的地,也可以说有多个数据线(几根就是几位),在每个时钟脉冲下可以发送多个数据位(几位的并行口就发送几位)。

    所以早期对串行通信与并行通信的理解为:同样的一个字节数据(8位),串行通信要分8次由低位到高位按顺序一位位地传送,而并行通信由于有8根线路,所以只要一次就可以传送过去,形象的说,把线路(通道)比作道路,能并排开几辆车的就可以说是“并行”,只能一辆一辆开的就属于“串行”了。

     

    并行通信与串行通信的区别对比及优缺点

    很明显,并行通信的速度要比串行通信的速度快得多,效率更高,费时更少。不过这些都是早期I/O速率都不高的情况下的理论理解,随着信息技术的飞速发展,之前的理解放在现在来看已经过时了,因为现在是高速串行信号时代了(我们的主题)。

    在高速状态下,并行口的几根数据线之间存在串扰,而并行口需要信号同时发送同时接收,任何一根数据线的延迟都会引起问题。而串行只有一根数据线,不存在信号线之间的串扰,而且串行还可以采用低压差分信号,可以大大提高它的抗干扰性,所以可以实现更高的传输速率,尽管并行可以一次传多个数据位,但是时钟远远低于串行,所以目前串行传输是高速传输的首选。

    在此套用铁杆粉丝“绝对零度”的回复:“打个比方,运送大型设备零件,并行信号就好比多辆货车,每辆车运送一些零件,大家按一定的时间要求送到目的地才能装配出完整的设备,一辆车出故障就会导致无法完成组装。而串行信号就好比火车,正常情况下一辆车就可以把所有零件运送完毕,而且不会出现问题。”个人觉得这个比喻还是比较恰当的,在这里火车本身也是比货车速度快的。

    从另外的角度来看,并行传输还有很多方式如系统同步(共同时钟)方式及源同步时钟方式等。先来看系统同步先天的内在问题,下图是并行传输中系统同步方式的示意图。

     

    首先,并行信号由于需要多位传输路径,这在早期是可以接受的。但是摩尔定律的现象使得与几十年前相比可生产的芯片中硅电路的数量大幅增加,而芯片封装技术的pin密度并没有像硅密度一样以相同的速度在增加,因此I/O pin的封装实际上比硅电路还贵,这就意味着对于大多数芯片来说pin管脚越来越多变得不可接受。就好像我们都知道车道越多我们的通行效率就会更快,但随着现在的城市空间越来越小以及地价越来越贵,更多的车道慢慢的只能变得越来越难以实现。况且并行本身的I/O速率不高,就像拖拉机或毛马路,速度上不去再多车道也是枉然。

    第二个内在问题就是时序的需求。由上图可知数据由芯片#1同步启动并被芯片#2使用相同的时钟同步捕获,芯片#2输入端的数据必须满足相对于芯片的时钟输入的建立和保持时间。详细的系统同步时序模型如下图所示。

     

    这些建立和保持时间必须用足够的余量来计算,以允许时钟分配路径延迟到两个芯片的差异,并通过芯片到启动和捕捉触发器。延迟可能会因芯片工艺,电压和温度(PVT)条件而异,并且必须增加余量以应对最坏的情况。对于较高的时钟频率,可能需要在芯片中使用锁相环(PLL)来调整时钟相位,以补偿芯片内的时钟分配延迟,并适应变化的工艺,电压和温度条件。 如果时钟频率足够高,则不可能建立一个可以通过这种共同时钟总线来可靠地传输数据的系统。

     

     

    转载于:https://www.cnblogs.com/edadoc/p/8945114.html

    展开全文
  • SPI,UART,I2C都有什么区别,及其各自的特点 区别: SPI:高速同步串行口。3~4线接口,收发独立、可同步进行  UART:通用异步串行口。按照标准波特率完成双向通讯,速度慢  I2C:一种串行传输方式,三线制,网上...

    SPI,UART,I2C都有什么区别,及其各自的特点

    区别:
    SPI:高速同步串行口。3~4线接口,收发独立、可同步进行 
    UART:通用异步串行口。按照标准波特率完成双向通讯,速度慢 
    I2C:一种串行传输方式,三线制,网上可找到其通信协议和用法的 

    3根线实现数据双向传输 
    串行外围接口 Serial peripheral interface 
    UART:通用异步收发器 
    UART是用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。作为接口的一部分,UART还提供以下功能: 
    将由计算机内部传送过来的并行数据转换为输出的串行数据流。将计算机外部来的串行数据转换为字节,供计算机内部使用并行数据的器件使用。在输出的串行数据流中加入奇偶校验位,并对从外部接收的数据流进行奇偶校验。在输出数据流中加入启停标记,并从接收数据流中删除启停标记。处理由键盘或鼠标发出的中断信号(键盘和鼠票也是串行设备)。可以处理计算机与外部串行设备的同步管理问题。有一些比较高档的UART还提供输入输出数据的缓冲区,现在比较新的UART是16550,它可以在计算机需要处理数据前在其缓冲区内存储16字节数据,而通常的UART是8250。现在如果您购买一个内置的调制解调器,此调制解调器内部通常就会有16550 UART。
    I2C:能用于替代标准的并行总线,能连接的各种集成电路和功能模块。I2C是多主控总线,所以任何一个设备都能像主控器一样工作,并控制总线。 总线上每一个设备都有一个独一无二的地址,根据设备它们自己的能力,它们可以作为发射器或接收器工作。多路微控制器能在同一个I2C总线上共存。

    更详细的区别:

    第一个区别当然是名字:
         SPI(Serial Peripheral Interface:串行外设接口);
         I2C(INTER IC BUS:意为IC之间总线)
         UART(Universal Asynchronous Receiver Transmitter:通用异步收发器)
    第二,区别在电气信号线上:
         SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现 多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或主设备(Master),其他设备为SPI从机或从设备(Slave)。主从设备间可以实现全双工通信,当有多个从设备时,还可以增加一条从设备选择线。
         如果用通用IO口模拟SPI总线,必须要有一个输出口(SDO),一个输入口(SDI),另一个口则视实现的设备类型而定,如果要实现主从设备,则需输入输出口,若只实现主设备,则需输出口即可,若只实现从设备,则只需输入口即可。

         I2C总线是双向、两线(SCL、SDA)、串行、多主控(multi-master)接口标准,具有总线仲裁机制,非常适合在器件之间进行近距离、非经常性的数据通信。在它的协议体系中,传输数据时都会带上目的设备的设备地址,因此可以实现设备组网。
         如果用通用IO口模拟I2C总线,并实现双向传输,则需一个输入输出口(SDA),另外还需一个输出口(SCL)。(注:I2C资料了解得比较少,这里的描述可能很不完备)

         UART总线是异步串口,因此一般比前两种同步串口的结构要复杂很多,一般由波特率产生器(产生的波特率等于传输波特率的16倍)、UART接收器、UART发送器组成,硬件上由两根线,一根用于发送,一根用于接收。
         显然,如果用通用IO口模拟UART总线,则需一个输入口,一个输出口。

    第三,从第二点明显可以看出,SPI和UART可以实现全双工,但I2C不行;

    第四,看看牛人们的意见吧!
         wudanyu:I2C线更少,我觉得比UART、SPI更为强大,但是技术上也更加麻烦些,因为I2C需要有双向IO的支持,而且使用上拉电阻,我觉得抗干扰能力较弱,一般用于同一板卡上芯片之间的通信,较少用于远距离通信。SPI实现要简单一些,UART需要固定的波特率,就是说两位数据的间隔要相等,而SPI则无所谓,因为它是有时钟的协议。
         quickmouse:I2C的速度比SPI慢一点,协议比SPI复杂一点,但是连线也比标准的SPI要少。

    SPII2CUART三种串行总线协议的区别

         SPI(Serial Peripheral Interface:串行外设接口)

         I2C(INTER IC BUS)

         UART(Universal Asynchronous Receiver Transmitter:通用异步收发器)

     

    SPI

     

    The SPI includes these distinctive features:

       Master mode and slave mode

       Bi-directional mode

       Slave select output

       Mode fault error flag with CPU interrupt capability

       Double-buffered data register

       Serial clock with programmable polarity and phase

        Control of SPI operation during wait mode

     

    SPI 有两种模式,Normal Mode and Bidirectional Mode,包括以下几根线:

     

     

    SS      Slave Select

    SCK    Serial Clock

    MOSI Master Output, Slave Input

    MISO Master Input, Slave Output

     

     

    MOMI Master Output, Master Input

    SISO   Slave Input, Slave Output

     

    其中前四根线用于Normal Mode ,常用的也是4根线的Normal Mode 

     

    MOSI

    This pin is used to transmit data out of the SPI module when it is configured as a Master and receive data

    when it is configured as Slave.

    MISO

    This pin is used to transmit data out of the SPI module when it is configured as a Slave and receive data

    when it is configured as Master.

    SS

    This pin is used to output the select signal from the SPI module to another peripheral with which a data

    transfer is to take place when its configured as a Masterand its used as an input to receive the slave select

    signal when the SPI is configured as Slave.

    SCK

    This pin is used to output the clock with respect to which the SPI transfers data or receive clock in case of

    Slave.

     

    SPI 是一种允许一个主设备启动一个与从设备的同步通讯的协议,从而完成数据的交换。也就是SPI是一种规定好的通讯方式。这种通信方式的优点是占用端口较少,一般4根就够基本通讯了。同时传输速度也很高。一般来说要求主设备要有SPI控制器(但可用模拟方式),就可以与基于SPI的芯片通讯了。

        SPI 的通信原理很简单,它需要至少4根线,事实上3根也可以。也是所有基于SPI的设备共有的,它们是SDI(数据输入),SDO(数据输出),SCK(时 钟),CS(片选)。其中CS是控制芯片是否被选中的,也就是说只有片选信号为预先规定的使能信号时(高电位或低电位),对此芯片的操作才有效。这就允许 在同一总线上连接多个SPI设备成为可能。

         接下来就负责通讯的3根线了。通讯是通过数据交换完成的,这里先要知道SPI是串行通讯协议,也就是说数据是一位一位的传输的。这就是SCK时钟线存在的原 因,由SCK提供时钟脉冲,SDISDO则基于此脉冲完成数据传输。数据输出通过SDO线,数据在时钟上沿或下沿时改变,在紧接着的下沿或上沿被读取。 完成一位数据传输,输入也使用同样原理。这样,在至少8次时钟信号的改变(上沿和下沿为一次),就可以完成8位数据的传输。

         要注意的是,SCK信号线只由主设备控制,从设备不能控制信号线。同样,在一个基于SPI的设备中,至少有一个主控设备。

         这样传输的特点:这样的传输方式有一个优点,与普通的串行通讯不同,普通的串行通讯一次连续传送至少8位数据,而SPI允许数据一位一位的传送,甚至允许暂停,因为SCK时钟线由主控设备控制,当没有时钟跳变时,从设备不采集或传送数据。也就是说,主设备通过对SCK时钟线的控制可以完成对通讯的控制。

         SPI还是一个数据交换协议:因为SPI的数据输入和输出线独立,所以允许同时完成数据的输入和输出。

         不同的SPI设备的实现方式不尽相同,主要是数据改变和采集的时间不同,在时钟信号上沿或下沿采集有不同定义,具体请参考相关器件的文档。

     

    I2C

     

        只要求两条总线线路:一条串行数据线SDA 一条串行时钟线SCL

        每个连接到总线的器件都可以通过唯一的地址和一直存在的简单的主机从机关系软件设定地址主机可以作为主机发送器或主机接收器

        它是一个真正的多主机总线如果两个或更多主机同时初始化数据传输可以通过冲突检测和仲裁,防止数据被破坏

        串行的位双向数据传输位速率在标准模式下可达100kbit/s 快速模式下可达400kbit/s 高速模式下可达3.4Mbit/s

        片上的滤波器可以滤去总线数据线上的毛刺波保证数据完整

        连接到相同总线的IC 数量只受到总线的最大电容400pF 限制

     

    UART

     

    UART总线是异步串口,因此一般比前两种同步串口的结构要复杂很多,一般由波特率产生器(产生的波特率等于传输波特率的16)UART接收器、UART发送器组成,硬件上由两根线,一根用于发送,一根用于接收。

         显然,如果用通用IO口模拟UART总线,则需一个输入口,一个输出口。

    UART常用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了。

    明显可以看出,SPIUART可以实现全双工,但I2C不行

    来源:http://www.cnblogs.com/lucky-apple/archive/2008/07/03/1234581.html

    展开全文
  • 按照标准波特率完成双向通讯,速度慢 SPI:一种串行传输方式,三线制,网上可找到其通信协议和用法的 3根线实现数据双向传输 串行外围接口 Serial peripheral interface UART:通用异步收发器 UART是用于控制计算机与...
    区别:SPI:高速同步串行口。3~4线接口,收发独立、可同步进行
    UART:通用异步串行口。按照标准波特率完成双向通讯,速度慢


    SPI:一种串行传输方式,三线制,网上可找到其通信协议和用法的
    3根线实现数据双向传输
    串行外围接口 Serial peripheral interface
    UART:通用异步收发器
    UART是用于控制计算机与串行设备的芯片。有一点要注意的是,它提供了RS-232C数据终
    端设备接口,这样计算机就可以和调制解调器或其它使用RS-232C接口的串行设备通信了
    。作为接口的一部分,UART还提供以下功能:
    将由计算机内部传送过来的并行数据转换为输出的串行数据流。将计算机外部来的串行
    数据转换为字节,供计算机内部使用并行数据的器件使用。在输出的串行数据流中加入
    奇偶校验位,并对从外部接收的数据流进行奇偶校验。在输出数据流中加入启停标记,
    并从接收数据流中删除启停标记。处理由键盘或鼠标发出的中断信号(键盘和鼠票也是
    串行设备)。可以处理计算机与外部串行设备的同步管理问题。有一些比较高档的UART
    还提供输入输出数据的缓冲区,现在比较新的UART是16550,它可以在计算机需要处理数
    据前在其缓冲区内存储16字节数据,而通常的UART是8250。现在如果您购买一个内置的
    调制解调器,此调制解调器内部通常就会有16550 UART。
    I2C:能用于替代标准的并行总线,能连接的各种集成电路和功能模块。I2C是多主控总线,所以任何一个设备都能像主控器一样工作,并控制总线。总线上每一个设备都有一个独一无二的地址,根据设备它们自己的能力,它们可以作为发射器或接收器工作。多路微控制器能在同一个I2C总线上共存。
    展开全文
  • I2C:一种串行传输方式,三线制,网上可找到其通信协议和用法的 3根线实现数据双向传输 串行外围接口 Serial peripheral interface UART:通用异步收发器 UART是用于控制计算机与串行设备的芯片。一点要注意的
  • 种同步串行接口技术,是一种高速的,全双工,同步的通信总线。 SPI优点 支持全双工通信 通信简单 数据传输速率块 缺点 没有指定的流控制,没有应答机制确认是否接收到数据,所以跟IIC总线协议比较在数据 可靠...
  • 浅谈总线通信机制---I2C总线接口

    千次阅读 2017-11-12 01:04:15
    上一篇文章,我们介绍了总线的基本概念以及通信相关的基础知识,还举了一个串口协议的例子作为文章的结尾。 因此,我们来回忆总结一下上篇博文...它们之间各有什么样的特点,我举了车辆过道的实例,通俗易懂的跟大家讲
  • 在我们编程的时候,经常会遇到一个概念——异步,诸如异步通信,异步线程,异步代码,异步调用,异步...串行通信有两种类型,一种是同步通信,另一种就是异步通信。同步通信的特点是要求发送时钟和接收时钟保持严格...
  • 现在只需要配置好 SPI 通信,即可畅快的开始玩串行 Flash 了; 可以用来制作 Flash 编程器/烧写器 2、SFUD 如何使用 2.1 已支持 Flash 下表为所有在 Demo 平台上进行过真机测试的 ...
  • 在我们编程的时候,经常会遇到一个概念——异步,诸如异步通信,异步线程,异步代码,异步调用,异步...串行通信有两种类型,一种是同步通信,另一种就是异步通信。同步通信的特点是要求发送时钟和接收时钟保持严格...
  • SPI通信协议

    2019-05-26 10:22:43
    1、什么是SPI? SPI是串行外设接口(Serial Peripheral Interface)的缩写。是 Motorola 公司推出的一 种同步串行接口技术,是一种高速的,全双工,同步的通信总线。 2、SPI优点 支持全双工通信 通信简单 数据传输速率...
  • SPI通信协议详解

    2019-05-07 09:49:18
    1、什么是SPI? SPI是串行外设接口(Serial Peripheral Interface)的缩写。是 Motorola 公司推出的一种同步串行接口技术,是一种高速的,全双工,同步的通信总线。 2、SPI优点 支持全双工通信通信简单、数据传输...
  • VS2013串口通信

    万次阅读 2015-03-29 22:05:47
    水平略低,若不对请直接指出。 以前接触51的时候就听过串口,但是一直没有机会...串行接口 (Serial Interface) 是指数据一位一位地顺序传送,其特点串行接口串行接口是通信线路简单,只要一对传输线就可以实现双向通
  • SPI协议通信时序详解

    2020-08-30 20:04:11
    1、什么是SPI? SPI是串行外设接口(Serial Peripheral Interface)的缩写。是 Motorola 公司推出的一 种同步串行接口技术,是一种高速的,全双工,同步的通信总线。 2、SPI优点 支持全双工通信 通信简单 数据传输...
  • PIC单片机之I2C通信(主模式)

    千次阅读 2016-06-16 11:34:10
    我们一般使用的串口 (半双工异步串行通信)与I2C 有什么区别呢。  串口(半双工异步串行通信):就是好像朋友在对话。我可以主动和你讲话,你也可以主动和我讲话。  I2C:就好像上下级对话。一个领导面对一个...
  • 第六章思考题1何谓并行传输它有什么优点和缺点2比较串行传输的两种方法讨论每种方法的特点3分别简述DTE和DCE的功能并给出实例4解释DTE-DCE通信接口用途5哪些标准化组织制定DTE-DCE接口标准
  • 通信(二) SPI

    2019-12-24 15:55:48
    1、什么是SPI? SPI是串行外设接口(Serial Peripheral Interface)的缩写。是 Motorola 公司推出的一 种同步串行接口技术,是一种高速的,全双工,同步的通信总线。 2、SPI优点 支持全双工通信 通信简单 数据传输...
  • 我们一般使用的串口 (半双工异步串行通信)与I2C 有什么区别呢。 串口(半双工异步串行通信):就是好像朋友在对话。我可以主动和你讲话,你也可以主动和我讲话。 I2C:就好像上下级对话。一个领导面对一个或者...

空空如也

空空如也

1 2 3 4 5
收藏数 88
精华内容 35
关键字:

串行通信有什么特点