基于SPI方式DSP外部E2PROM接口設(shè)計
2.2 McBSP與X5043的接口設(shè)計
X5043的外部接口符號SPI協(xié)議規(guī)范。DIP封裝的X5043有8個管腳組成,各個管腳功能如下所示:
CS:片選端,當CS為低時,X5043選中。在任何操作之前,需要先在CS上有一次由高至低的跳變;
SO:串行數(shù)據(jù)輸出端,當讀周期時,數(shù)據(jù)從該引腳移出;
SI:串行數(shù)據(jù)輸入引腳,所要寫入存儲器的操作碼,字節(jié)地址和數(shù)據(jù)都從該引腳輸入;
WP:當WP為低時,向X5043的非易失性寫被禁止,但器件其他功能正常,為高時,所用功能都正常;
SCK:串行時鐘端。串行時鐘控制串行總線數(shù)據(jù)輸入和輸出的時序。
McBSP的時鐘停止模式與SPI協(xié)議兼容。當McBSP處于時鐘停止模式時,發(fā)送器和接收器是內(nèi)部同步的,因此可以將McBSP作為SPI主設(shè)備或從設(shè)備。當設(shè)置McBSP為主設(shè)備時,發(fā)送端輸出信號DXR就作為SPI協(xié)議的MOSI信號,接收端輸入信號DRR就作為SPI協(xié)議的MISO信號。發(fā)送幀同步脈沖信號FSX作為從設(shè)備片選信號SS,而發(fā)送時鐘信號CLKX就與SPI協(xié)議的串行時鐘信號SCK相對應(yīng)。由于接收時鐘信號CLKR和接收幀同步脈沖信號FSR與發(fā)送端的相應(yīng)部分CLKX和FSX在內(nèi)部相互連接,因此這些信號不用于時鐘停止模式。該設(shè)計中McBSP作為主設(shè)備使用。X5043與McBSP的接口電路如圖2所示。本文引用地址:http://www.ex-cimer.com/article/152185.htm
3 軟件設(shè)計
軟件設(shè)計主要包括DSP相關(guān)寄存器的配置,X5043狀態(tài)寄存器的配置,以及X5043的讀寫操作。
3.1 寄存器的配置
DSP端需要配置的寄存器主要包括CLKMD,SPCR[1,2],XCR[1,2],RCR[1,2],SRGR[1,2],PCR等。
其中CLKMD主要配置DSP的時鐘;XCR[1,2],RCR[1,2]主要配置接收和發(fā)送數(shù)據(jù)的幀的個數(shù)、幀長以及字長。根據(jù)對X5043操作的不同,發(fā)送和接收的字長也不同,但是針對某一種操作,接收和發(fā)送字長是一樣的;SRGR[1,2]主要是對CLKGDV,CLKSM,F(xiàn)SGM三個位域的配置;SPCR[1,2]主要是對CLKSTP位域的配置,因為它決定了McBSP是采用時鐘停止模式(SPI模式)還是正常模式;引腳控制寄存器(PCR)配置了各個引腳的工作狀態(tài)。
值得注意的是在配置McBSP的寄存器之前,首先要使發(fā)送、接收和分頻器復位,配置完SPCR[1,2],XCR[1,2],RCR[1,2],PCR后,使分頻器置位,等待兩個時鐘周期,在配置SRGR[1,2],然后使發(fā)送和接收置位在等待兩個時鐘周期,這時才可以進行其他操作。
3.2 X5043的讀寫操作
X5043的讀操作包括讀狀態(tài)寄存器、讀存儲器陣列(即讀數(shù)據(jù))。寫操作包括寫使能/寫禁止、寫狀態(tài)寄存器、寫存儲器陣列(寫數(shù)據(jù))。X5043的指令組如表1所示。
下面主要講一下對單個數(shù)據(jù)的讀寫操作。
評論