上篇文章中講解了在XMC單片機中,如何使用USIC單元配置IIC接口,這篇文章講解如何配置使用另外一個很常用的通信協議SPI。
SPI是串行外設接口(Serial Peripheral Interface)的縮寫,是一種高速的,全雙工,同步的通信總線,SPI簡單易用,與IIC類似,也是采用主從方式工作,一般是由四根線組成,事實上3根也可以(半雙工模式)?;赟PI的設備共有的,四根線分別是MISO(主設備數據輸入)、MOSI(主設備數據輸出)、SCLK(時鐘)、CS(片選)。
(1)MISO– Master Input Slave Output,主設備數據輸入,從設備數據輸出;
(2)MOSI– Master Output Slave Input,主設備數據輸出,從設備數據輸入;
(3)SCLK – Serial Clock,時鐘信號,由主設備產生;
(4)CS – Chip Select,從設備使能信號,由主設備控制。
在英飛凌XMC單片機中,SPI可以選擇四種工作方式,分別為標準SPI,三線半雙工SPI、Dual SPI、Quad SPI,標準spi就如上所示四根線全雙工傳輸;三線SPI中,只使用一根數據線進行半雙工通信,速度相比標準spi有所減慢;Dual SPI為四根線,兩根數據線改為同方向,速度是三線的兩倍,而Quad SPI六根線,也是單向通信,傳輸速度是Dual的兩倍。
這次我們使用Dave4的app配置一個標準SPI
1. 先添加SPI_MASTER APP,雙擊打開后展現出以下畫面,Operation mode一欄可以選擇四種工作模式,我們選擇為標準的Full Duplex;
在Desired bus speed可以選擇SPI的時鐘頻率,此頻率和從機的時鐘頻率保持一致即可,其中SPI的最大時鐘頻率由芯片的系統時鐘決定。值得注意的是,時鐘頻率不等同于SPI的傳輸速率,傳輸速率受限于芯片處理SPI數據的能力,最大時鐘頻率只是有可能制約 其傳輸速率;
在Parity selection中可以選擇奇校驗和偶校驗。
2.在Advanced Setting中,首先我們可以選擇是否啟用中斷處理,這里我們選擇啟用;
Number of slave可以選擇從機數量,這里選擇1,當增加數量時,可以配置為CS的IO口也會隨之增加;
Invert the signal polarity of SELOx signals可以選擇CS引腳的輸出極性;
在Frame and word length中我們可以啟用MSLS信號來進行幀結束控制;
在Control中可以選擇輸出和接收數據位時MSB在先還是LSB在先,還可以選擇時鐘的相位和極性;
在FIFO Setting中可以選擇是否使用FIFO,數據流只需使用 FIFO 數據緩存即可定義完整的數據幀,不必訪問其它控制寄存器。
3.在后面的interrupt settings中可以配置中斷相關,Pin Setting中配置引腳狀態,就不多做介紹了。
4.在配置完app后,點擊Manual Pin Allocator即可配置引腳
5.此外點擊Manual Resource Assignment配置中斷,然后生成代碼即可。
-
通信協議
+關注
關注
28文章
881瀏覽量
40301 -
SPI
+關注
關注
17文章
1706瀏覽量
91538
發布評論請先 登錄
相關推薦
評論