|
關(guān)注+星標(biāo)公眾號(hào),不錯(cuò)過(guò)精彩內(nèi)容
來(lái)源 | 瑞薩嵌入式小百科
SPI:Serial Peripheral Interface,串行外設(shè)接口。
SPI是嵌入式項(xiàng)目中常用的一種通信接口,正常情況下,SPI都是“雙線(xiàn)”全雙工模式。但有些情況由于產(chǎn)品設(shè)計(jì)的要求或者接線(xiàn)數(shù)目的限制, 外設(shè)會(huì)使用單線(xiàn)半雙工模式。
SPI半雙工原理
SPI單線(xiàn)半雙工,指少一根數(shù)據(jù)線(xiàn),即只有SDI/SDO,SCLK,GND 三根線(xiàn)。這種方式在相同的連接線(xiàn)的基礎(chǔ)上,比UART更具備穩(wěn)定的通訊能力和更高速的數(shù)據(jù)傳輸量。
硬件連接方式:通常情況下MCU端只需要把MOSI和MISO管腳短接, 但需要考慮MOSI實(shí)際輸出能力和設(shè)備端的輸出電平狀態(tài)因素, 建議串接一個(gè)電阻避免由于雙方同時(shí)輸出不同的高低電平造成的短路現(xiàn)象。
5v1zhv2dnxb64047133833.png (7.44 KB, 下載次數(shù): 9)
下載附件
保存到相冊(cè)
5v1zhv2dnxb64047133833.png
2024-10-5 07:32 上傳
單片機(jī)實(shí)現(xiàn)SPI半雙工
現(xiàn)在絕大部分單片機(jī)都集成了 SPI 外設(shè),而且?guī)缀醵贾С秩p工模式。但是,通過(guò)一定設(shè)置,還是可以支持半雙工模式。
本文以瑞薩 RA 系列單片機(jī)為例,給大家講述一下實(shí)現(xiàn)方法。
FSP配置:只需要按照實(shí)際通訊模式的要求做配置就可以。DTC功能和中斷回調(diào)函數(shù)等的配置也是按照FSP的手冊(cè)說(shuō)明來(lái)做就可以。
lmc3oikianz64047133933.png (201.78 KB, 下載次數(shù): 8)
下載附件
保存到相冊(cè)
lmc3oikianz64047133933.png
2024-10-5 07:32 上傳
由于SPI本身是采用全雙工運(yùn)行的, 就算調(diào)用函數(shù) (R_SPI_Read) 在MISO做接收數(shù)據(jù)時(shí), MOSI也是會(huì)有同步輸出的。但在單線(xiàn)的情況下, 這樣就會(huì)干擾到Slave端的數(shù)據(jù)輸出, 甚至造成數(shù)據(jù)線(xiàn)上的短路情況。所以需要在接收數(shù)據(jù)前將MOSI的管腳配置改為GPIO 功能, 并且配置為輸入狀態(tài), 這樣MOSI管腳就不會(huì)在接收的過(guò)程中制造干擾。在接收完畢后將MOSI管腳的配置還原為外設(shè)功能的MOSI狀態(tài)。
發(fā)送數(shù)據(jù):直接調(diào)用函數(shù)R_SPI_Write()或者R_SPI_WriteRead().
xbhrvefwaug64047134033.png (7.37 KB, 下載次數(shù): 9)
下載附件
保存到相冊(cè)
xbhrvefwaug64047134033.png
2024-10-5 07:32 上傳
切換到接收狀態(tài)并接收數(shù)據(jù):
th0o2sut3rs64047134133.png (11.94 KB, 下載次數(shù): 11)
下載附件
保存到相冊(cè)
th0o2sut3rs64047134133.png
2024-10-5 07:32 上傳
還原MOSI狀態(tài):
b2snetyznhe64047134233.png (11.43 KB, 下載次數(shù): 9)
下載附件
保存到相冊(cè)
b2snetyznhe64047134233.png
2024-10-5 07:32 上傳
通過(guò)以上的軟件配置流程,單線(xiàn)半雙工模式的SPI通訊就能夠正常運(yùn)行。
------------ END ------------
4ej3isubbpf64047134333.jpg (215.56 KB, 下載次數(shù): 9)
下載附件
保存到相冊(cè)
4ej3isubbpf64047134333.jpg
2024-10-5 07:32 上傳
瑞薩RA8系列教程 | RA8輸出PWM實(shí)現(xiàn)方法
iorv3llyicx64047134434.jpg (229.96 KB, 下載次數(shù): 9)
下載附件
保存到相冊(cè)
iorv3llyicx64047134434.jpg
2024-10-5 07:32 上傳
Cortex-M3與M85單片機(jī)的SysTick使用上有區(qū)別嗎?
kg4waefo04a64047134534.jpg (319.51 KB, 下載次數(shù): 9)
下載附件
保存到相冊(cè)
kg4waefo04a64047134534.jpg
2024-10-5 07:32 上傳
嵌入式在邊緣AI的技術(shù)優(yōu)勢(shì) |
|