剛出來的前端工資多少百度seo營(yíng)銷推廣
簡(jiǎn)述
SPI協(xié)議是一種芯片與芯片之間的通訊,全稱是Serial Peripheral Interface
SPI通訊采用一主多從模式,產(chǎn)生時(shí)鐘的一側(cè)稱為主機(jī),另一側(cè)稱為從機(jī)。只有一個(gè)主機(jī)(一般來說可以是微控制器/MCU),但是可以有一個(gè)或者多個(gè)從機(jī)
?SPI通訊需要4條信號(hào)線
1、SS
Slave Select
?片選信號(hào),由主機(jī)通過給片選信號(hào)線高低電平來決定與哪一個(gè)從機(jī)通信,通常是低電平有效信號(hào)。
2、SCK
Serial Clock
?串行時(shí)鐘信號(hào),由主機(jī)產(chǎn)生發(fā)送給從機(jī);
3、MOSI
Master output slave input
?主設(shè)備通過MOSI發(fā)送數(shù)據(jù),而從設(shè)備通過這條線接收數(shù)據(jù)(數(shù)據(jù)來自主機(jī));
4、MISO
Master input slave output
?主機(jī)輸入,從機(jī)輸出(數(shù)據(jù)來自從機(jī));
以讀取93C46為例
?根據(jù)數(shù)據(jù)手冊(cè)他的SS在高電平有效
給存儲(chǔ)器寫入數(shù)據(jù)
?
從存儲(chǔ)器讀數(shù)據(jù)
時(shí)鐘極性 CKP/Clock Polarity
除了配置串行時(shí)鐘速率(頻率)外,SPI主設(shè)備還需要配置時(shí)鐘極性。
根據(jù)硬件制造商的命名規(guī)則不同,時(shí)鐘極性通常寫為CKP或CPOL。時(shí)鐘極性和相位共同決定讀取數(shù)據(jù)的方式,比如信號(hào)上升沿讀取數(shù)據(jù)還是信號(hào)下降沿讀取數(shù)據(jù);
CKP可以配置為1或0。這意味著您可以根據(jù)需要將時(shí)鐘的默認(rèn)狀態(tài)(IDLE)設(shè)置為高或低。極性反轉(zhuǎn)可以通過簡(jiǎn)單的邏輯逆變器實(shí)現(xiàn)。您必須參考設(shè)備的數(shù)據(jù)手冊(cè)才能正確設(shè)置CKP和CKE。
CKP = 0
:時(shí)鐘空閑IDLE
為低電平?0
;CKP = 1
:時(shí)鐘空閑IDLE
為高電平1
;
時(shí)鐘相位 CKE /Clock Phase (Edge)
除配置串行時(shí)鐘速率和極性外,SPI主設(shè)備還應(yīng)配置時(shí)鐘相位(或邊沿)。根據(jù)硬件制造商的不同,時(shí)鐘相位通常寫為CKE或CPHA;
顧名思義,時(shí)鐘相位/邊沿,也就是采集數(shù)據(jù)時(shí)是在時(shí)鐘信號(hào)的具體相位或者邊沿;
CKE = 0
:在時(shí)鐘信號(hào)SCK
的第一個(gè)跳變沿采樣;CKE = 1
:在時(shí)鐘信號(hào)SCK
的第二個(gè)跳變沿采樣;
時(shí)鐘配置總結(jié)
綜上幾種情況,下圖總結(jié)了所有時(shí)鐘配置組合,并突出顯示了實(shí)際采樣數(shù)據(jù)的時(shí)刻;
其中黑色線為采樣數(shù)據(jù)的時(shí)刻;
藍(lán)色線為SCK時(shí)鐘信號(hào);
具體如下圖所示;