SCI,SPI,UART三种串行总线协议的区别

前前后后分别接触到了这几种串行通信。刚开始自己的理解有多么的狭隘。。。做过才知道呵呵~

 

SCI (串行通讯接口)模块对其进行控制。(注:“SCI”首先由Motorola微串口微控制器而得名,SCI另一种说法是“UART控制器”)常用的许多芯片中都包含了SCI ,例如ARM的S3C2410X芯片内嵌了3个串行接口控制器,而Nios等软核芯片则可以用选用UART(RS232) 的IP对UART进行控制。PC机则常用 16650 UART,16750 UART等控制串口。--这样说来SCI只不过属于UART里面比较特殊的一种串行通讯方式了。确实也只是在飞思卡尔芯片上遇见过。

 

第一个区别当然是名字:

SCI(Serial Communicate Interface:串行通信接口)
    SPI(Serial Peripheral Interface:串行外设接口)另外曾在一官方datasheet里面看见这种说法:Serial Parallel Interface:串并行接口
    UART(Universal Asynchronous Receiver Transmitter:通用异步收发器)

第二,区别在电气信号线上:
    SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现多个SPI设备互相连接。提供SPI串行时钟的SPI设备为SPI主机或主设备(Master),其他设备为SPI从机或从设备(Slave)。主从设备间可以实现全双工通信,当有多个从设备时,还可以增加一条从设备选择线。
    如果用通用IO口模拟SPI总线,必须要有一个输出口(SDO),一个输入口(SDI),另一个口则视实现的设备类型而定,如果要实现主从设备,则需输入输出口,若只实现主设备,则需输出口即可,若只实现从设备,则只需输入口即可。

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

第三,显然都是全双工的。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值