資料介紹
系統在上電復位時,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次閱讀
下載排行
本周
- 1HFSS電磁仿真設計應用詳解PDF電子教程免費下載
- 24.30 MB | 126次下載 | 1 積分
- 2H橋中的電流感測
- 545.39KB | 7次下載 | 免費
- 3雷達的基本分類方法
- 1.25 MB | 4次下載 | 4 積分
- 4I3C–下一代串行通信接口
- 608.47KB | 3次下載 | 免費
- 5電感技術講解
- 827.73 KB | 2次下載 | 免費
- 6從 MSP430? MCU 到 MSPM0 MCU 的遷移指南
- 1.17MB | 2次下載 | 免費
- 7有源低通濾波器設計應用說明
- 1.12MB | 2次下載 | 免費
- 8RA-Eco-RA2E1-48PIN-V1.0開發板資料
- 35.59 MB | 2次下載 | 免費
本月
- 12024年工控與通信行業上游發展趨勢和熱點解讀
- 2.61 MB | 763次下載 | 免費
- 2HFSS電磁仿真設計應用詳解PDF電子教程免費下載
- 24.30 MB | 126次下載 | 1 積分
- 3繼電保護原理
- 2.80 MB | 36次下載 | 免費
- 4正激、反激、推挽、全橋、半橋區別和特點
- 0.91 MB | 32次下載 | 1 積分
- 5labview實現DBC在界面加載配置
- 0.57 MB | 21次下載 | 5 積分
- 6在設計中使用MOSFET瞬態熱阻抗曲線
- 1.57MB | 15次下載 | 免費
- 7GBT 4706.1-2024家用和類似用途電器的安全第1部分:通用要求
- 7.43 MB | 13次下載 | 免費
- 8PADS-3D庫文件
- 2.70 MB | 10次下載 | 2 積分
總榜
- 1matlab軟件下載入口
- 未知 | 935113次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關降壓/升壓雙向直流/直流轉換器 PCB layout 設計
- 1.48MB | 420061次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233084次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費下載
- 340992 | 191360次下載 | 10 積分
- 5十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183329次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81578次下載 | 10 積分
- 7Keil工具MDK-Arm免費下載
- 0.02 MB | 73804次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65985次下載 | 10 積分
評論
查看更多