一、SPI
SPI串行外围设备接口(serial peripheral interface)总线技术是Motorola公司推出的一种同步串行接口。Motorola公司生产的绝大多数MCU(微控制器)都配有SPI硬件接口,如68系列MCU。SPI总线是一种三线同步总线,因其硬件功能很强,所以与SPI有关的软件就相当简单,使CPU有更多的时间处理其他事务。
SPI性能特点
AT91RM9200的SPI接口主要由4个引脚构成:SPICLK、MOSI、MISO及 NSS,其中SPICLK是整个SPI总线的公用时钟,MOSI、MISO作为主机,从机的输入输出的标志,MOSI是主机的输出,从机的输入,MISO 是主机的输入,从机的输出。NSS是从机的标志管脚,在互相通信的两个SPI总线的器件,NSS管脚的电平低的是从机,相反NSS管脚的电平高的是主机。在一个SPI通信系统中,必须有主机。SPI总线可以配置成单主单从,单主多从,互为主从。
SPI的片选可以扩充选择16个外设,这时PCS输出=NPCS,说NPCS0~3接4-16译码器,这个译码器是需要外接4-16译码器,译码器的输入为NPCS0~3,输出用于16个外设的选择。
SPI接口的一个缺点:没有指定的流控制,没有应答机制确认是否接收到数据。
二、SCI
SCI串行通信接口(serial communication interface)也是由Motorola公司推出的。司推出的。它是一种通用异步通信接口UART,与MCS‐51的异步通信功能基,本相同。下面我们一起来简述spi与sci区别。
三、SPI和SCI的区别
1)SPI采用同步通信方式,除了发送和接受两根线外,还需要一根同步时钟线,SCI采用异步通信方式,只需要发送和接受两根线,通信双方微处理器使用各自的时钟。
2)SPI适用于板上短距离高速率通信;SCI适用于对另外的设备长距离的低速率通信,在默认状态下,其最高通信速率只相当于SPI通信速率的1/4.
3)SPI的时钟可反映到外在的同步时钟线上,SCI的时钟是隐含的。
4)SCI模块用于串行通讯,如RS422、RS485、RS232; SPI模块用于扩展外设,如AD、DA、FRAM、DSP等。
5)SPI总线由三条信号线组成:串行时钟(SCLK)、串行数据输出(SDO)、串行数据输入(SDI)。SPI总线可以实现多个SPI设备互相连接。