SPI是一種采用串行同步方式的3線或4線通信接口,使用信號有使能信號,同步時鐘,同步數(shù)據(jù)輸入和數(shù)據(jù)輸出。其常用于微控制器和外圍芯片的直接連接和擴展。
一個典型的SPI總線系統(tǒng)包括一個主機和一個從機,雙方之間通過主機輸出/從機輸入(MOSI),主機輸入/從機輸出(MISO) ,同步時鐘信號(SCLK),從機選擇(SS|),4跟信號線相連。SPI的通信過程本質上就是在同步時鐘作用下的串行移位??梢园阎鳈C和從機看成是兩個串行移位寄存器,通過MOSI和MISO首尾相連。主機發(fā)起傳輸時,先拉低從機選擇信號,然后在內部時鐘的作用下將SPI數(shù)據(jù)寄存器中的內容逐步移出,通過MOSI傳送到從機。雙方數(shù)據(jù)交換完畢后,拉高從機選擇信號,停止SCLK,結束SPI.
SPI根據(jù)同步時鐘的極性和同步時鐘的相位兩個參數(shù),可以配置為4種不同的工作模式。同步時鐘(CPOL)的極性指SPI總線處于傳輸空閑時,SCLK信號的狀態(tài)。同步時鐘的相位(CPHA)指進行SPI傳輸時對數(shù)據(jù)進行采樣/鎖存點相對于SCLK上時鐘信號的位置。
AVR的SPI是采用硬件方式實現(xiàn)的全雙工3線同步通信接口,支持主機,從機模式和4種不同傳輸模式的SPI時序。主機方式的最高速率為系統(tǒng)時鐘頻率的1/2,從機方式為1/4。 ATMega 16的SPI接口的硬件部分由數(shù)據(jù)寄存器,時鐘邏輯,引腳邏輯和控制邏輯4部分組成。與SPI相關的寄存器有SPI控制寄存器SPCR,SPI狀態(tài)寄存器SPSR,SPI數(shù)據(jù)寄存器SPDR。
上海意泓電子科技有限責任公司 版權所有 未經授權禁止復制或鏡像
CopyRight 2020-2025 www.pendragonrpg.com All rights reserved 滬ICP備2021005866號