关于UART、IIC、SPI的一些总结

目录

什么是串行?

什么是并行?

什么是同步?

什么是异步?

UART通信协议

IIC总线

SPI总线


什么是串行?

串行就是用一根数据线,依次传输多位数据

什么是并行?

并行就是,如果要传输8位数据,那么就用8根数据线,每个数据线传输一位数据

什么是同步?

有一根SCL时钟线,保证收发数据双方时钟的同步 
比如IIC、SPI就是同步通信

什么是异步?

没有用于同步收发双方的时钟线 
比如UART就没有时钟线,它就是异步通信

UART通信协议

是一种通用的串行、异步通信总线,该总线有两条数据线,可以实现全双工的发送和接收数据 
规定:空闲位必须置1,起始位为0 
发送数据时先发低位,后发高位 
UART属于异步通信(接收方和发送方用的时钟不一样) IIC、SPI就属于同步通信

IIC总线

是一种串行、半双工、同步、低速的通信总线 
有两根双向的信号线,一根数据线SDA用于收发数据,一根时钟线SCL用于通信双方时钟的同步 
发送数据时先发高位,后发地位 和UART不同的是,IIC必须为8位,UART数据位可以是5、6、7或8位 
空闲状态:SCL和SDA都为高电平 
起始信号:SCL为高时,SDA由高变为低 发送第一个字节的内容:其中7位是从机的地址,最后一位是0还是1决定了主机在通信时是发数据还是收数据 接收器应答信号:发送器发送完一位数据后,接收器必须发送1位应答位来回应发送器 
注:应答信号为低电平 
SCL为低电平时,是让发送器发数据的,在次期间,数据线上的电平可以改变;SCL为高电平时,是让接收器读数据的,数据线上的电平不允许变化,必须保持稳定 
终止信号:SCL为高时,SDA由低变为高

SPI总线

是一种串行、全双工、同步、高速的通信总线 
SPI采用主从方式工作,一般有一个主设备和一个或多个从设备 
SPI需要至少4根线:

  • MISO:主设备输入,从设备输出
  • MOSI:主设备输出,从设备输入
  • SCLK:时钟线
  • CS:片选(一般如果芯片上写CS,那么就是高电平有效;如果芯片上写‘非CS’,那么就是低电平有效)

发送数据时和IIC一样,也是先传高位,在传低位 
一个字节传送完成后无应答即可开始下一位字节的传送 
虽然SPI和IIC都是同步通信,但是不同的是,IIC的同步是电平触发,而SPI的同步是边沿触发 
时钟线在上升沿或下降沿时发送器向数据线上发送数据,在紧接着的下降沿或上升沿时接收器从数据线上读取数据,循环八个时钟周期即可完成一个字节数据的传输

  • 0
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值