資料介紹
系統(tǒng)在上電復(fù)位時(shí),SPI工作在標(biāo)準(zhǔn)SPI模式,禁止FIFO功能。FIFO的寄存器SPIFFTX、SPIFFRX和SPIFFCT不起作用。通過將SPIFFTX寄存器中的SPIFFEN的位置為1,使能FIFO模式。SPIRST能在操作的任一階段復(fù)位FIFO模式。
FIFO模式有2個(gè)中斷,一個(gè)用于發(fā)送FIFO、SPITXINT,另一個(gè)用于接收FIFO、SPIINT/SPIRXINT。對(duì)于SPI FIFO接收來說,產(chǎn)生接收錯(cuò)誤或者接收FIFO溢出都會(huì)產(chǎn)生SPIINT/SPIRXINT中斷。對(duì)于標(biāo)準(zhǔn)SPI的發(fā)送和接收,唯一的SPIINT將被禁止且這個(gè)中斷將服務(wù)于SPI接收FIFO中斷。發(fā)送和接收都能產(chǎn)生CPU中斷。一旦發(fā)送FIFO狀態(tài)位TXFFST(位12~8)和中斷觸發(fā)級(jí)別位TXFFIL(位4~0)匹配,就會(huì)觸發(fā)中斷。這給SPI的發(fā)送和接收提供了可編程的中斷觸發(fā)器。接收FIFO的觸發(fā)級(jí)別位的缺省值是0xll111,發(fā)送FIFO的觸發(fā)級(jí)別位的缺省值是0x00000。
發(fā)送和接收緩沖器使用2個(gè)16×16 FIFO,標(biāo)準(zhǔn)SPI功能的一個(gè)字的發(fā)送緩沖器作為在發(fā)送FIFO和移位寄存器間的發(fā)送緩沖器。移位寄存器的最后一位被移出后,這個(gè)一字發(fā)送緩沖器將從發(fā)送∏FO裝載。FIFO中的字發(fā)送到發(fā)送移位寄存器的速率是可編程的。SPIFFCT寄存器位FFTXDLY7~FFTXDILYO定義了在兩個(gè)字發(fā)送間的延時(shí),這個(gè)延時(shí)以SPI串行時(shí)鐘周期的數(shù)量來定義。該8位寄存器可以定義最小0個(gè)串行時(shí)鐘周期的延遲和最大256個(gè)串行時(shí)鐘周期的延時(shí)。0時(shí)鐘周期延時(shí)的SPI模塊能將FIFO字一位緊接一位的移位,連續(xù)發(fā)送數(shù)據(jù)。256個(gè)時(shí)鐘周期延遲的SPI模塊能在最大延遲模式下發(fā)送數(shù)據(jù),每個(gè)FIFO字的移位間隔256個(gè)SPI時(shí)鐘周期的延時(shí)。可編程延時(shí)的特點(diǎn),使得SPI接口可以方便地同許多速率較慢的SPI外設(shè)如EEPROM、ADO、DAC等直接連接。
發(fā)送和接收FIFO都有狀態(tài)位TXFFST或RXFFST(位12~0),狀態(tài)位定義任何時(shí)刻在FIFO中可獲得的字的數(shù)量。當(dāng)發(fā)送FIFO復(fù)位位TXFIFO和接收復(fù)位位RXFIFO被設(shè)置為1時(shí),F(xiàn)IFO指針指向0。一旦這兩個(gè)復(fù)位位被清除為0,則FIFO將重新開始操作。
SPI數(shù)據(jù)傳輸從設(shè)備模式
在從模式中(MASTER/SLAVE=0),SPISOMI引腳為數(shù)據(jù)輸出引腳,SPISIMO引腳為數(shù)據(jù)輸入引腳。SPICLK引腳為串行移位時(shí)鐘的輸入,該時(shí)鐘由網(wǎng)絡(luò)主控制器提供,傳輸率也由該時(shí)鐘決定。SPIC LK輸入頻率不應(yīng)超過CLKOUT頻率的四分之一。
當(dāng)從SPI設(shè)各檢測(cè)到來自網(wǎng)絡(luò)主控制器的SPICLK信號(hào)的合適時(shí)鐘邊沿時(shí),已經(jīng)寫人SPI-DAT或SPITXBUF寄存器的數(shù)據(jù)被發(fā)送到網(wǎng)絡(luò)上。要發(fā)送字符的所有位移出SPIDAT寄存器后,寫人到SPITXBUF寄存器的數(shù)據(jù)將會(huì)傳送到SPIDAT寄存器。如果向SPITXBUF寫人數(shù)據(jù)時(shí)沒有數(shù)據(jù)發(fā)送,數(shù)據(jù)將立即傳送到SPIDAT寄存器。為了能夠接收數(shù)據(jù),從SPI設(shè)備等待網(wǎng)絡(luò)主控制器發(fā)送SPICLK信號(hào),然后將SPISIMO引腳上的數(shù)據(jù)移入到SPIDAT寄存器中。如果從控制器同時(shí)也發(fā)送數(shù)據(jù),而且SPITXBUF還沒有裝載數(shù)據(jù),則必須在SPICLK開始之前把數(shù)據(jù)寫人到SPITXBUF或SPIDAT寄存器。
當(dāng)TALK位(SPICTL.1)清零,數(shù)據(jù)發(fā)送被禁止,輸出引腳(SPISOMI)處于高阻狀態(tài)。如果在發(fā)送數(shù)據(jù)期間將TALK位(SPICTL.1)清零,即使SPISOMI引腳被強(qiáng)制置成高阻狀態(tài)也要完成當(dāng)前的字符傳輸。這樣可以保證SPI設(shè)各能夠正確地接收數(shù)據(jù)。TALK位允許在網(wǎng)絡(luò)上有許多個(gè)從SPI設(shè)備,但在某一時(shí)刻只能有1個(gè)從設(shè)各來驅(qū)動(dòng)SPISOMI。
SPISTE引腳用作從動(dòng)選擇引腳時(shí),當(dāng)該引腳為低電平時(shí),允許從SPI設(shè)各向串行總線發(fā)送數(shù)據(jù);當(dāng)該引腳為高電平時(shí),從SPI串行移位寄存器停止工作,串行輸出引腳被置成高阻狀態(tài)。在同一網(wǎng)絡(luò)上可以連接多個(gè)從SPI設(shè)各,但同一時(shí)刻只能有1個(gè)設(shè)各起作用。
FIFO模式有2個(gè)中斷,一個(gè)用于發(fā)送FIFO、SPITXINT,另一個(gè)用于接收FIFO、SPIINT/SPIRXINT。對(duì)于SPI FIFO接收來說,產(chǎn)生接收錯(cuò)誤或者接收FIFO溢出都會(huì)產(chǎn)生SPIINT/SPIRXINT中斷。對(duì)于標(biāo)準(zhǔn)SPI的發(fā)送和接收,唯一的SPIINT將被禁止且這個(gè)中斷將服務(wù)于SPI接收FIFO中斷。發(fā)送和接收都能產(chǎn)生CPU中斷。一旦發(fā)送FIFO狀態(tài)位TXFFST(位12~8)和中斷觸發(fā)級(jí)別位TXFFIL(位4~0)匹配,就會(huì)觸發(fā)中斷。這給SPI的發(fā)送和接收提供了可編程的中斷觸發(fā)器。接收FIFO的觸發(fā)級(jí)別位的缺省值是0xll111,發(fā)送FIFO的觸發(fā)級(jí)別位的缺省值是0x00000。
發(fā)送和接收緩沖器使用2個(gè)16×16 FIFO,標(biāo)準(zhǔn)SPI功能的一個(gè)字的發(fā)送緩沖器作為在發(fā)送FIFO和移位寄存器間的發(fā)送緩沖器。移位寄存器的最后一位被移出后,這個(gè)一字發(fā)送緩沖器將從發(fā)送∏FO裝載。FIFO中的字發(fā)送到發(fā)送移位寄存器的速率是可編程的。SPIFFCT寄存器位FFTXDLY7~FFTXDILYO定義了在兩個(gè)字發(fā)送間的延時(shí),這個(gè)延時(shí)以SPI串行時(shí)鐘周期的數(shù)量來定義。該8位寄存器可以定義最小0個(gè)串行時(shí)鐘周期的延遲和最大256個(gè)串行時(shí)鐘周期的延時(shí)。0時(shí)鐘周期延時(shí)的SPI模塊能將FIFO字一位緊接一位的移位,連續(xù)發(fā)送數(shù)據(jù)。256個(gè)時(shí)鐘周期延遲的SPI模塊能在最大延遲模式下發(fā)送數(shù)據(jù),每個(gè)FIFO字的移位間隔256個(gè)SPI時(shí)鐘周期的延時(shí)。可編程延時(shí)的特點(diǎn),使得SPI接口可以方便地同許多速率較慢的SPI外設(shè)如EEPROM、ADO、DAC等直接連接。
發(fā)送和接收FIFO都有狀態(tài)位TXFFST或RXFFST(位12~0),狀態(tài)位定義任何時(shí)刻在FIFO中可獲得的字的數(shù)量。當(dāng)發(fā)送FIFO復(fù)位位TXFIFO和接收復(fù)位位RXFIFO被設(shè)置為1時(shí),F(xiàn)IFO指針指向0。一旦這兩個(gè)復(fù)位位被清除為0,則FIFO將重新開始操作。
SPI數(shù)據(jù)傳輸從設(shè)備模式
在從模式中(MASTER/SLAVE=0),SPISOMI引腳為數(shù)據(jù)輸出引腳,SPISIMO引腳為數(shù)據(jù)輸入引腳。SPICLK引腳為串行移位時(shí)鐘的輸入,該時(shí)鐘由網(wǎng)絡(luò)主控制器提供,傳輸率也由該時(shí)鐘決定。SPIC LK輸入頻率不應(yīng)超過CLKOUT頻率的四分之一。
當(dāng)從SPI設(shè)各檢測(cè)到來自網(wǎng)絡(luò)主控制器的SPICLK信號(hào)的合適時(shí)鐘邊沿時(shí),已經(jīng)寫人SPI-DAT或SPITXBUF寄存器的數(shù)據(jù)被發(fā)送到網(wǎng)絡(luò)上。要發(fā)送字符的所有位移出SPIDAT寄存器后,寫人到SPITXBUF寄存器的數(shù)據(jù)將會(huì)傳送到SPIDAT寄存器。如果向SPITXBUF寫人數(shù)據(jù)時(shí)沒有數(shù)據(jù)發(fā)送,數(shù)據(jù)將立即傳送到SPIDAT寄存器。為了能夠接收數(shù)據(jù),從SPI設(shè)備等待網(wǎng)絡(luò)主控制器發(fā)送SPICLK信號(hào),然后將SPISIMO引腳上的數(shù)據(jù)移入到SPIDAT寄存器中。如果從控制器同時(shí)也發(fā)送數(shù)據(jù),而且SPITXBUF還沒有裝載數(shù)據(jù),則必須在SPICLK開始之前把數(shù)據(jù)寫人到SPITXBUF或SPIDAT寄存器。
當(dāng)TALK位(SPICTL.1)清零,數(shù)據(jù)發(fā)送被禁止,輸出引腳(SPISOMI)處于高阻狀態(tài)。如果在發(fā)送數(shù)據(jù)期間將TALK位(SPICTL.1)清零,即使SPISOMI引腳被強(qiáng)制置成高阻狀態(tài)也要完成當(dāng)前的字符傳輸。這樣可以保證SPI設(shè)各能夠正確地接收數(shù)據(jù)。TALK位允許在網(wǎng)絡(luò)上有許多個(gè)從SPI設(shè)備,但在某一時(shí)刻只能有1個(gè)從設(shè)各來驅(qū)動(dòng)SPISOMI。
SPISTE引腳用作從動(dòng)選擇引腳時(shí),當(dāng)該引腳為低電平時(shí),允許從SPI設(shè)各向串行總線發(fā)送數(shù)據(jù);當(dāng)該引腳為高電平時(shí),從SPI串行移位寄存器停止工作,串行輸出引腳被置成高阻狀態(tài)。在同一網(wǎng)絡(luò)上可以連接多個(gè)從SPI設(shè)各,但同一時(shí)刻只能有1個(gè)設(shè)各起作用。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 利用ISE的SDRAM設(shè)計(jì)的FIFO實(shí)驗(yàn)
- STM32單片機(jī)移植帶有FIFO攝像頭的OV7670 111次下載
- AL422 3M位FIFO現(xiàn)場(chǎng)存儲(chǔ)器的數(shù)據(jù)手冊(cè)免費(fèi)下載 13次下載
- Xilinx異步FIFO的大坑
- FPGA電路FIFO設(shè)計(jì)的源代碼 15次下載
- 如何配置自己需要的FIFO?FIFO配置全攻略 17次下載
- 最經(jīng)典的FIFO原理 0次下載
- 基于FLASH的FIFO讀寫 22次下載
- 異步FIFO結(jié)構(gòu)及FPGA設(shè)計(jì) 4次下載
- FIFO_學(xué)習(xí)心得 6次下載
- Camera Link接口的異步FIFO設(shè)計(jì)與實(shí)現(xiàn)
- 異步FIFO的VHDL設(shè)計(jì)
- 高速異步FIFO的設(shè)計(jì)與實(shí)現(xiàn)
- 什么是fifo 0次下載
- 異步FIFO結(jié)構(gòu)及FPGA設(shè)計(jì)
- FIFO IP核的使用教程 726次閱讀
- FIFO的深度應(yīng)該怎么計(jì)算 389次閱讀
- 同步FIFO和異步FIFO區(qū)別介紹 1756次閱讀
- 談一談FIFO的深度 1318次閱讀
- FIFO為什么不能正常工作? 1362次閱讀
- 基于循環(huán)隊(duì)列的FIFO緩存實(shí)現(xiàn) 840次閱讀
- 基于寄存器的同步FIFO 788次閱讀
- FIFO的原理和設(shè)計(jì) 3329次閱讀
- FIFO的閾值如何設(shè)置 2803次閱讀
- FIFO的使用介紹 5305次閱讀
- FIFO最小深度計(jì)算的方法 2768次閱讀
- 基于FPGA的異步FIFO設(shè)計(jì)方法詳解 8426次閱讀
- MEMS信號(hào)處理電路中的FIFO系統(tǒng)設(shè)計(jì) 1863次閱讀
- fifo存儲(chǔ)器芯片型號(hào)有哪些 2.5w次閱讀
- fifo存儲(chǔ)器是什么_fifo存儲(chǔ)器有什么特點(diǎn) 1w次閱讀
下載排行
本周
- 1電子電路原理第七版PDF電子教材免費(fèi)下載
- 0.00 MB | 1490次下載 | 免費(fèi)
- 2單片機(jī)典型實(shí)例介紹
- 18.19 MB | 92次下載 | 1 積分
- 3S7-200PLC編程實(shí)例詳細(xì)資料
- 1.17 MB | 27次下載 | 1 積分
- 4筆記本電腦主板的元件識(shí)別和講解說明
- 4.28 MB | 18次下載 | 4 積分
- 5開關(guān)電源原理及各功能電路詳解
- 0.38 MB | 10次下載 | 免費(fèi)
- 6基于AT89C2051/4051單片機(jī)編程器的實(shí)驗(yàn)
- 0.11 MB | 4次下載 | 免費(fèi)
- 7藍(lán)牙設(shè)備在嵌入式領(lǐng)域的廣泛應(yīng)用
- 0.63 MB | 3次下載 | 免費(fèi)
- 89天練會(huì)電子電路識(shí)圖
- 5.91 MB | 3次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 2PADS 9.0 2009最新版 -下載
- 0.00 MB | 66304次下載 | 免費(fèi)
- 3protel99下載protel99軟件下載(中文版)
- 0.00 MB | 51209次下載 | 免費(fèi)
- 4LabView 8.0 專業(yè)版下載 (3CD完整版)
- 0.00 MB | 51043次下載 | 免費(fèi)
- 5555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33562次下載 | 免費(fèi)
- 6接口電路圖大全
- 未知 | 30320次下載 | 免費(fèi)
- 7Multisim 10下載Multisim 10 中文版
- 0.00 MB | 28588次下載 | 免費(fèi)
- 8開關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21539次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935053次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537791次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234313次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233045次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191183次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183277次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138039次下載 | 免費(fèi)
評(píng)論