一、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設備互相連接。