SPI總線工作方式簡(jiǎn)介
SPI模式可以允許同時(shí)同步發(fā)送和接收8位數(shù)據(jù),并支持4種工作方式:
1.串行數(shù)據(jù)輸出,對(duì)應(yīng)RC5/SDO引腳;
2.串行數(shù)據(jù)輸入,對(duì)應(yīng)RC4/SDI/SDA引腳;
3.串行時(shí)鐘,對(duì)應(yīng)RC3/SCK/SCL引腳;
4.從動(dòng)方式選擇,對(duì)應(yīng)RA5/SS/AN4引腳。
SPI模式下與之相關(guān)的寄存器有10個(gè),其中4個(gè)是與I2C模式共用的。
圖1所示是由一個(gè)主機(jī)對(duì)接一個(gè)從機(jī)進(jìn)行全雙工通信的系統(tǒng)構(gòu)成的方式。在該系統(tǒng)中,由于主機(jī)和從機(jī)的角色是固定不變的,并且只有一個(gè)從機(jī),因此,可以將主機(jī)的麗端接高電平,將從機(jī)的SS端固定接地。
圖1 全雙工主機(jī)/從機(jī)連接方法
若干個(gè)具備SPI接口的單片機(jī)和若干片兼容SPI接口的外圍芯片,可以在軟件的控制下,構(gòu)成多種簡(jiǎn)單或者復(fù)雜的應(yīng)用系統(tǒng),例如以下3種。
(1)一個(gè)主機(jī)和多個(gè)從器件的通信系統(tǒng)。
如圖2所示,各個(gè)從器件是單片機(jī)的外圍擴(kuò)展芯片,它們的片選端SS分別獨(dú)占單片機(jī)的一條通用I/O引腳,由單片機(jī)分時(shí)選通它們建立通信。這樣省去了單片機(jī)在通信線路上發(fā)送地址碼的麻煩,但是占用了單片機(jī)的引腳資源。當(dāng)外設(shè)器件只有一個(gè)時(shí),可以不必選通而直接將SS端接地即可。
圖2 一個(gè)主機(jī)擴(kuò)展多個(gè)外圍器件
(2)幾個(gè)單片機(jī)互相連接構(gòu)成多主機(jī)通信系統(tǒng)。
圖3所示為3個(gè)既可以當(dāng)做主機(jī)也可以當(dāng)做從機(jī)的單片機(jī)組成的系統(tǒng)。
圖3 多主機(jī)通信系統(tǒng)連接方法
(3)主機(jī)、從機(jī)和從器件共同組成的應(yīng)用系統(tǒng)。
圖4所示為一個(gè)主機(jī)、一個(gè)從機(jī)和多片外設(shè)芯片組成的應(yīng)用系統(tǒng)。這些外設(shè)芯片有的只接收來自單片機(jī)信息,有的只向單片機(jī)提供信息,還有的既接收也發(fā)送信息。
圖4主機(jī)、從機(jī)和從器件互連
評(píng)論