DSP28335學習筆記——McBSP配置爲SPI

由於28335硬件外設上只有一個SPI接口,所以當SPI接口不夠用時,可以將McBSP配置爲SPI接口。

參考28335的數據手冊,當DSP爲主機時,配置McBSP爲SPI所用到的接線如下圖所示。


另外總結一些調試過程中的經驗。

1.傳輸數據位數的確定

由RCR1寄存器中的RWDLEN1和XCR1寄存器中的XWDLEN1決定。分別對應着接受和發送的位數,在配置成SPI模式的時候,這兩個位應該保持一致。具體的配置如下所示:



2.時鐘極性和時鐘相位的確定

時鐘極性和時鐘相位是由三個寄存器位決定的,即CLKSTP、CLKXP和CLKRP。

CLKSTP對應的是時鐘相位,即CPHA。


CLKSTP位同時也是使能SPI功能的一個位,控制的是時鐘停止模式的使能和禁用,這個功能開啓時,McBSP兼容SPI。當CLKSTP=0或CLKSTP=1時,禁用SPI功能,CLKSTP=2或CLKSTP=3時,使能McBSP的SPI功能,時鐘停止模式開啓。CLKSTP=2時,在數據傳輸時時鐘立即開啓,相當於數據採樣從第一個時鐘邊沿開啓。CLKSTP=3時,時鐘延遲半個週期,即數據採樣從第二個時鐘邊沿開啓。


CLKXP表示數據發送的時鐘極性,CLKXP=0,發送的數據在時鐘的上升沿採樣,CLKXP=1,發送數據在時鐘下降沿採樣。時鐘爲CLKX。同時也決定着傳輸空閒時間的高低電平,即時鐘極性。

CLKRP表示數據接收的時鐘極性,CLKRP=0,接收的數據在時鐘的下降沿採樣,CLKRP=1,接收數據在時鐘上升沿採樣。時鐘爲CLKR。如下表所示。


這三位相互搭配,就會產生不同的時序。



3.傳輸波特率的設定

CLKGDV決定,是一個CLKG的分頻數值,從0到255.


4.如何配置成SPI模式

通過CLKSTP、CLKXP和CLKRP來配置時鐘的極性和延時的SPI兼容模式。

5.主機從機的配置

CLKXM=1,爲主機,CLKXM=0爲從機。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章