單片機(jī)是一個(gè)可編程的微控制器,和spi通信其實(shí)是兩個(gè)獨(dú)立的東西。
只不過我們用單片機(jī)可以去實(shí)現(xiàn)spi通信而已,但是實(shí)現(xiàn)spi通信不一定非要單片機(jī)。
我們?nèi)撕腿酥g溝通,要靠說話,并且兩個(gè)人語言要一樣,比如說都用普通話。
那芯片和芯片溝通,它們又不會(huì)說話,怎么傳遞信息呢?
就是通過通信總線,通信總線有很多種,比如IIC、SPI、USART、CAN,它們的區(qū)別就像普通話、英語、韓語、俄語,都是用來傳遞信息用的,只是傳遞方式不同。
但傳遞信息,有一個(gè)前提,就是語言要相同,也就是通信方式要相同。
所以說,spi是一種通信方式,是用來傳遞信息的。
不同的通信方式,傳遞信息的方式不同。
Spi是一種全雙工、高速的、同步的通信總線。
簡單來說,就是你們兩個(gè)可以同時(shí)快速地說話,你能把你要說的告訴對(duì)方,同時(shí)也能聽到對(duì)方說什么,這就是全雙工。
還有一種叫半雙工,就是你們同時(shí)只能有一個(gè)人說,另一個(gè)聽,說完了,另外一個(gè)才能說。
很明顯,全雙工傳遞信息的效率更高吧。
同步的意思我給你們兩個(gè)對(duì)話設(shè)定個(gè)條件,比如說我說開始你們才可以對(duì)話,我說停止就都不能說話。
我們?nèi)撕腿藗鬟f信息一般是靠耳朵和嘴巴對(duì)吧?
Spi通信傳遞信息是通過接口,來看下圖:

SPI通信協(xié)議:單片機(jī)spi通信接口什么意思,spi接口干什么用的?
spi接口有4根線,分別是CS、SCLK、MOSI、MISO。
SCLK是同步信號(hào),一般由主控來控制。
既然是通信,自然是需要有個(gè)”對(duì)象”,如上圖A和B。
A是SPI Master,也就是主控,比如說單片機(jī),一般就是主控的角色,主控來負(fù)責(zé)發(fā)送SCLK同步信號(hào)通知SPI Slave是否需要進(jìn)行數(shù)據(jù)通信。
B是SPI Slave,也就是從機(jī),比如說Flash芯片。
CS代表片選信號(hào),為什么要用片選呢?
因?yàn)橐粋€(gè)SPI Master可以跟不同的SPI Slave進(jìn)行通信。

SPI Master就是通過CS來控制,具體跟哪個(gè)SPI Slave通訊,控制CS為低電平就代表選中該SPI Slave。
如果說只跟一個(gè)從設(shè)備通訊,也可以直接把CS串聯(lián)電阻接地,省的每次都去控制它。
MOSI英文全稱是Master Output Slave Input,這個(gè)一般接主控器件數(shù)據(jù)輸出引腳,從機(jī)器件數(shù)據(jù)輸入引腳。
MISO英文全稱是Slave Input Master Output,這個(gè)一般接主控器件數(shù)據(jù)輸入引腳,從機(jī)器件數(shù)據(jù)輸出引腳。
除此以外,還有一種特殊的用法,就是只用SCLK和MOSI這兩個(gè)引腳的SPI通信。
比如說我們無際單片機(jī)編程實(shí)戰(zhàn)項(xiàng)目課程里有個(gè)OLED屏的應(yīng)用。

片選引腳CS我直接硬件接地了,因?yàn)橹挥幸粋€(gè)從設(shè)備。
我們主要是控制OLED屏去顯示內(nèi)容,并不需要從OLED讀取數(shù)據(jù),所以MISO也不需要。
這種情況是可以只用2根線的。
-
單片機(jī)
+關(guān)注
關(guān)注
6067文章
44986瀏覽量
650330 -
通信
+關(guān)注
關(guān)注
18文章
6206瀏覽量
137795 -
SPI
+關(guān)注
關(guān)注
17文章
1804瀏覽量
95904
發(fā)布評(píng)論請(qǐng)先 登錄
TLC5615與單片機(jī)通信時(shí)是不是用任意IO口都可以通信,只要時(shí)序和數(shù)據(jù)是按說明書通信的?
單片機(jī)和ads1146進(jìn)行spi通信,讀出的數(shù)據(jù)很亂是怎么回事?
ADS1255和51單片機(jī)可以用SPI模式通信嗎?
使用ads1148制作的測(cè)溫電路中與430單片機(jī)通信,2.CKPH會(huì)使得不能正常通信嗎?
基于51單片機(jī)的遙控開關(guān)仿真(雙機(jī)通信)

如何實(shí)現(xiàn)51單片機(jī)與PC機(jī)的串行通信
單片機(jī)的中斷機(jī)制
8位單片機(jī)為何不會(huì)被高端單片機(jī)取代?
單片機(jī)io口輸出電流多大
單片機(jī)WiFi模塊怎樣連接手機(jī)APP
單片機(jī)SPI通信實(shí)現(xiàn)
單片機(jī)燒錄程序的線比單片機(jī)上的少還能燒錄嗎
stm32和51單片機(jī)的區(qū)別是什么
藍(lán)牙模塊如何實(shí)現(xiàn)單片機(jī)和手機(jī)端數(shù)據(jù)互傳

評(píng)論