各种串行通信总线

RS-232/485、IIC、SPI、CAN、USB等都属于串行通信。

TTL电平是以高低电平来表示逻辑1和逻辑0,+5V为高电平,表示逻辑1;0V为低电平,表示逻辑0。单片机的串行口通常是TTL电平,故与PC机通过串口通信时,需要TTL转232的电平转换芯片。

RS-232通常是指RS-232C,它有TXD和RXD,所以是一种全双工串行通信标准/协议,它对信号线的功能、电气特性、物理接口等都做了明确规定,RS-232C采用的是EIA电平,是以正负电压表示逻辑状态,其中-3~-15表示逻辑1,+3~+15表示逻辑0。

RS-485采用差分传输,提高了抗干扰能力。总线上只有两根线,通过这两根线的电平差值来判定逻辑状态,所以485只能实现半双工通信。RS-485的通讯线只有2条,且这两条通讯线在一次传输中都需要用到,因此485只可实现半双工通讯。485实现半双工通讯,会遇到一个问题,MCU1向MCU2发数据时,并不知道线上是否正传来MCU2数据,因为没有其他线可用来判断对方的收发状态,那么可能也会导致数据冲突。因此,RS-485要实现半双工通讯,就需要上层的软件协议加以规约,也就是做到”不能你想发数据就发数据”。可以理解,软件层协议就好像交通规则,它能让数据有序传输。

SPI总线中只能有一个主设备,可以有多个从设备,主机通过片选线来选择从机。有4根线:SCK、MISO、MOSI、SS。

I2C总线只有两根线:SDL、SCL,这两根线都需要接上拉电阻,主机通过发送从机地址,以选择要通信的从机,I2C属于多主从结构总线。

CAN总线请参考链接:https://www.cnblogs.com/jacklu/p/4729638.html

USB属于主从结构,通信总是由主机发起。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值