485、CAN、单总线、SPI、I2C:1、是什么 2、特点3、协议 4、使用方法 5、区别 6、通信方式

1.是什么:

485:通信接口的远程称重数据采集方法。

CAN:CAN,全称为“Controller Area Network”,即控制器局域网,是一种多主方式的串行通讯总线,是国际上 应用最广泛的现场总线之一。

单总线:美国DALLAS公司推出的外围串行扩展总线技术。

SPI:串行外设接口(Serial Peripheral Interface),可以理解为一种通信协议,也就是用来传输数据的。

I2C:I2C总线是由Philips公司开发的一种简单、双向二线制同步串行总线。它只需要两根线即可在连接于总线上的 设备之间传送信息。

2.特点:

485:1.485系统运行稳定,利用专用通信总线把集中器和主站安全、可靠的连接起来。除非设备接口硬件损 坏,或者总线线路断开,总线抄表系统会一直保持很好的通信效果和抄收成功率。

2.RS485通信速率高。由于是专用的有线通信线路连接,线路上除了通信信号外,再无其他信号。外来的干扰信号耦合到线路衰减很大,所以集中器可以以较高的速率与主站通信。

CAN:1.采用两线串行通讯方式,具有较强的错误检测能力,可以在高噪声干扰环境下工作

2.具有实时性强,传输距离长,电磁干扰强,成本低的优点。

3.可靠的错误处理和错误检测机制

4.节点具有严重错误时自动终止总线的功能

5.具有通过CAN控制器将多个控制模块连接到CAN总线以形成多主机本地网络的优先级和仲裁功能。

6.消息的身份可以决定接收还是屏蔽消息

7.如果传输的信息已损坏,则可以自动重新传输

8.该消息不包含源地址和目标地址,仅使用标志来指示功能信息和优先级信息。

单总线:通过一根信号线传送地址信息、控制信息和数据信息;可采用寄生电源模式通过信号线为器件供电;每个单 总线器件有全球惟一的一个序列号,系统主机通过此序列号来区分器件,总线上挂接多个器件组成小规模通 信网络;单总线器件引脚极少,系统接口构建简单。

SPI:全双工通信方式;可以当作主机或从机工作;提供频率可编程时钟;发送结束中断标志;写冲突保护;总线竞争 保护等。

I2C: 只需要一根数据线和一根时钟线两根线,总线接口已经集成在芯片内部,优化主板空间和成本; I2C总线具 有低功耗、抗干扰强的优点,传输距离长的特点。

3.协议:

485:RS485 仅仅规定了接受端和发送端的电气特性,它没有规定或推荐任何数据协议

CAN:CAN总线协议有CAN1.0、CAN2.0(CAN2.0A、CAN2.0B)

单总线:单总线通信协议定义了如下几种类型,即复位脉冲、应答脉冲、写0、写1、读0和读1。

SPI:SPI总线协议是一种全双工的串行通信协议,数据传输时高位在前,低位在后。

I2C:I2C是一种同步半双工的通信协议,同一时刻只能向一个方向传送数据。

4.使用方法:

485:

RS485 推荐使用在点对点网络中,线型,总线型,不能是星型,环型网络。

理想情况下 RS485需要 2 个匹配电阻,其阻值要求等于传输电缆的特性阻抗(一般 120Ω)

没有特性阻抗的话,当所有的设备都静止或者没有能量的时候就会产生噪声,而且线移需要双端的电压差

没有终接电阻的话,会使得较快速的发送端产生多个数据信号的边缘,导致数据传输出错

CAN:

通过两条通信线(双绞线)产生的电压差传输数据,一个CAN网络里的所有节点都挂在这两条通信线上,使 用差分信号半双工通信。

单总线:

(1)第一步:初始化

1)初始化包括主机发送复位脉冲和从机发送应答脉冲两部分组成;

2)主机 发送复位脉冲时拉低总线至少480us;

3)从机响应应答脉冲时,检测到总线被释放,并由5k上拉电阻拉高,从机检测到上升沿15-60us,拉低60-240us产生响应脉冲;

(2)第二步:ROM命令(跟随需要交换的数据)

(3)第三步:功能命令(跟随需要交换的数据)

SPI:

1. 先了解SPI有那些接口信号,各个信号的作用是什么

2. 再简单了解一下SPI通讯协议

3. 看一看单片机的SPI功能相关寄存器,看如何初始化配置以及收、发数据

I2C:I2C通信基本原理及其实现

5.区别

485与CAN:

1. RS485标准只规定了物理层而没有规定链路层,CAN是规定了物理层和链路层,换句话说,CAN用硬件实现了硬件标准化和协议标准化,当然485也有自己的通用协议MODBUS。

2. CAN硬件支持总线仲裁,每个从机节点带ID可定义优先级,485硬件上只能实现轮询的方式。所以总线利用率来说,CAN更加高效

3. 错误检测机制上,CAN做了错误提醒和控制器自闭锁的功能,而485由于只规定了物理层,单纯物理层的传输,如果有一个节点程序跑飞了,则全总线瘫痪。

4. 成本上对比,CAN的成本要高于485.

SPI与I2C:

1、定义不同:

SPI:SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线,并且在芯片的管脚上只占用四根线,节约了芯片的管脚,同时为PCB的布局上节省空间,提供方便,正是出于这种简单易用的特性,越来越多的芯片集成了这种通信协议,比如AT91RM9200。

I2C :I2C 总线支持任何IC 生产过程(NMOS CMOS、双极性)。两线――串行数据(SDA)和串行时钟 (SCL)线在连接到总线的器件间传递信息。每个器件都有一个唯一的地址识别(无论是微控制器——MCU、LCD 驱动器、存储器或键盘接口),而且都可以作为一个发送器或接收器(由器件的功能决定)。很明显,LCD 驱动器只是一个接收器,而存储器则既可以接收又可以发送数据。除了发送器和接收器外器件在执行数 据传输时也可以被看作是主机或从机(见表1)。主机是初始化总线的数据传输并产生允许传输的时钟信号 的器件。此时,任何被寻址的器件都被认为是从机。.

2、I2C总线是半双工,2根线SCL SDA;SPI总线实现全双工,4根线SCK CS MOSI MISO。

3、I2C是多主机总线,通过SDA上的地址信息来锁定从设备;SPI只有一个主设备,主设备通过CS片选来确定从设备。

4、I2C总线传输速度100Kbps----4Mbps;SPI可达30Mbps以上。

5、I2C高电平时SDA下降沿标志传输开始,上升沿标志传输结束;SPI总线CS拉低标志传输开始,CS拉高标志传输结束。

6、I2C总线读写时序比较固定统一,设备驱动编写方便。SPI总线不同从设备datasheet来实现读写,相对复杂一些。

6.通信方式

485:RS-485可以采用二线与四线方式,半双工通信。

CAN:CAN是半双工的。收发数据要分时进行。不管CAN网络上挂多少设备,在同一时刻只能有1个发送数据。 如果有多个需要同时发送则只有优先级别高的先发送,其它等待。

单总线:它采用单根信号线,既传输时钟又传输数据,而且数据传输是双向的

SPI:是 一 种同步串行接口技术,是一种高速的,全双工,同步的通信总线。

I2C:I2C总线是一种简单、双向二线制同步串行总线。是半双工通信方式。

(本文摘自各大网站,侵权必删!!!)

                                                                                                            ---创作不易,转载请标明出处

  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值