單片微型計算機原理及接口技術(shù)-21-串行通信-SPI-5_第1頁
單片微型計算機原理及接口技術(shù)-21-串行通信-SPI-5_第2頁
單片微型計算機原理及接口技術(shù)-21-串行通信-SPI-5_第3頁
單片微型計算機原理及接口技術(shù)-21-串行通信-SPI-5_第4頁
單片微型計算機原理及接口技術(shù)-21-串行通信-SPI-5_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領

文檔簡介

單片微型計算機原理及接口技術(shù)(21)1/22內(nèi)容提綱二STC8H8K64U單片機SPI接口的數(shù)據(jù)通信一STC8H8K64U單片機SPI接口的結(jié)構(gòu)2/22STC8H8K64U單片機SPI接口的結(jié)構(gòu)一3/221.SPI接口簡介STC8H8K64U集成了串行外設接口(SerialPeripheralInterface,簡稱SPI)。SPI接口既可以和其他微處理器通信,也可以與具有SPI兼容接口的器件,如存儲器、A/D轉(zhuǎn)換器、D/A轉(zhuǎn)換器、LED或LCD驅(qū)動器等進行同步通信(例如,液晶模塊12864)。SPI接口有兩種操作模式:主模式和從模式。在主模式中支持高達3Mbit/s的速率;從模式時速度無法太快,速度在SYSclk/8以內(nèi)較好。此外,SPI接口還具有傳輸完成標志和寫沖突標志保護功能。4/22

2.SPI接口的結(jié)構(gòu)5/22STC8H8K64U單片機的SPI接口數(shù)據(jù)通信二6/22

7/22

8/22

9/22

圖SPI接口的單主機-單從機連接方式10/22(2)雙器件方式在雙器件方式中,兩個設備相連,主機和從機不固定。有兩種設置方法,分別是:設置方法1:兩個設備初始化時都設置為SSIG設置為0,MSTR設置為1,且將SS腳設置為雙向口模式輸出高電平。此時兩個設備都是不忽略SS的主機模式。當其中一個設備需要啟動傳輸時,可將自己的SS腳設置為輸出模式并輸出低電平,拉低對方的SS腳,這樣另一個設備就被強行設置為從機模式了。設置方法2:兩個設備初始化時都將自己設置成忽略SS的從機模式,即將SSIG設置為1,MSTR設置為0。當其中一個設備需要啟動傳輸時,先檢測SS腳的電平,如果時候高電平,就將自己設置成忽略SS的主模式,即可進行數(shù)據(jù)傳輸了。雙器件方式也稱為互為主從方式,其連接方式如下圖所示。圖SPI接口的雙器件連接方式11/22(3)單主機-多從機方式在這種方式中,多個設備相連,其中一個設備固定作為主機,其他設備固定作為從機。主機的設置:SSIG設置為1,MSTR設置為1,固定為主機模式。主機可以使用任意端口分別連接各個從機的SS腳,拉低其中一個從機的SS腳即可使能相應的從機設備。從機的設置:SSIG設置為0,SS管腳作為從機的片選信號。單主機-多從機方式的連接如下圖所示。圖

SPI接口的單主機-多從機連接方式12/22STC8H8K64U單片機進行SPI通信時,主機和從機的選擇由SPEN、SSIG和MSTR聯(lián)合控制。主機和從機的選擇見表8-8。表8-8

主機和從機的選擇13/22控制位通信端口說明SPENSSIGMSTRSSMISOMOSISCLK0xxx輸入輸入輸入關閉SPI功能,SS/MOSI/MISO/SCLK均為普通IO1000輸出輸入輸入從機模式,且被選中1001高阻輸入輸入從機模式,但未被選中101→00輸出輸入輸入從機模式,不忽略SS且MSTR為1的主機模式,當SS管腳被拉低時,MSTR將被硬件自動清零,工作模式將被被動設置為從機模式1011輸入高阻高阻主機模式,空閑狀態(tài)輸出輸出主機模式,激活狀態(tài)110x輸出輸入輸入從機模式111x輸入輸出輸出主機模式

3.SPI接口的數(shù)據(jù)通信過程在SPI通信中,數(shù)據(jù)傳輸總是由主機啟動的。如果SPI使能(SPEN=1)并選擇作為主機時,主機對SPI數(shù)據(jù)寄存器SPDAT的寫操作將啟動SPI時鐘發(fā)生器和數(shù)據(jù)的傳輸。在數(shù)據(jù)寫入SPDAT之后的半個到一個SPI位時間后,數(shù)據(jù)將出現(xiàn)在MOSI引腳。寫入主機SPDAT寄存器的數(shù)據(jù)從MOSI腳移出發(fā)送到從機的MOSI腳。同時從機SPDAT寄存器的數(shù)據(jù)從MISO腳移出發(fā)送到主機的MISO腳。傳輸完一個字節(jié)后,SPI時鐘發(fā)生器停止,傳輸完成標志(SPIF)置位,如果SPI中斷使能則會產(chǎn)生一個SPI中斷。主機和從機CPU的兩個移位寄存器可以看作是一個16位循環(huán)移位寄存器。當數(shù)據(jù)從主機移位傳送到從機的同時,數(shù)據(jù)也以相反的方向移入。這意味著在一個移位周期中,主機和從機的數(shù)據(jù)相互交換。14/224.SPI中斷如果允許SPI中斷,發(fā)生SPI中斷時,CPU就會跳轉(zhuǎn)到中斷服務程序的入口地址004BH處執(zhí)行中斷服務程序。注意,在中斷服務程序中,必須把SPI中斷請求標志清零。5.寫沖突SPI在發(fā)送時為單緩沖,在接收時為雙緩沖。這樣在前一次發(fā)送尚未完成之前,不能將新的數(shù)據(jù)寫入移位寄存器。當發(fā)送過程中對數(shù)據(jù)寄存器進行寫操作時,WCOL位將置位以指示數(shù)據(jù)沖突。在這種情況下,當前發(fā)送的數(shù)據(jù)繼續(xù)發(fā)送,而新寫入的數(shù)據(jù)將丟失。接收數(shù)據(jù)時,接收到的數(shù)據(jù)傳送到一個并行讀數(shù)據(jù)緩沖區(qū),這樣將釋放移位寄存器以進行下一個數(shù)據(jù)的接收。但必須在下個字符完全移入之前從數(shù)據(jù)寄存器中讀出接收到的數(shù)據(jù),否則,前一個接收數(shù)據(jù)將丟失。WCOL可通過軟件向其寫入“1”清零。15/226.數(shù)據(jù)格式SPI接口的時鐘信號線SCLK有Idle和Active兩種狀態(tài):Idle狀態(tài)是指在不進行數(shù)據(jù)傳輸?shù)臅r候(或數(shù)據(jù)傳輸完成后)SCLK所處的狀態(tài);Active是與Idle相對的一種狀態(tài)。時鐘相位位(CPHA)允許用戶設置采樣和改變數(shù)據(jù)的時鐘邊沿。時鐘極性位CPOL允許用戶設置時鐘極性。如果CPOL=0,Idle狀態(tài)=低電平,Active狀態(tài)=高電平。如果CPOL=1,Idle狀態(tài)=高電平,Active狀態(tài)=低電平。主機總是在SCLK=Idle狀態(tài)時,將下一位要發(fā)送的數(shù)據(jù)置于數(shù)據(jù)線MOSI上。從Idle狀態(tài)到Active狀態(tài)的轉(zhuǎn)變,稱為SCLK前沿。從Active狀態(tài)到Idle狀態(tài)的轉(zhuǎn)變,稱為SCLK后沿。一對SCLK前沿和后沿構(gòu)成一個SCLK時鐘周期,一個SCLK時鐘周期傳輸一位數(shù)據(jù)。不同的CPHA,主機和從機對應的數(shù)據(jù)格式如圖1~圖4所示。16/22圖8-26CPHA=0時SPI從機傳輸格式17/22圖8-27CPHA=1時SPI從機傳輸格式18/22圖8-28CPHA=0時SPI主機傳輸格式19/22圖8-29CPHA=1時SPI主機傳輸格式20/227

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論