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