找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4142|回復(fù): 0
打印 上一主題 下一主題
收起左側(cè)

PIC16F877 MSSP模塊之SPI通信

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:105323 發(fā)表于 2016-2-13 01:43 | 只看該作者 回帖獎勵 |正序瀏覽 |閱讀模式
SPI模式允許同時、同步發(fā)送和接收 8位數(shù)據(jù)。支持SPI的所有四種模式。一般用以下三個引腳來完成通信:
? 串行數(shù)據(jù)輸出 (SDO)
? 串行數(shù)據(jù)輸入 (SDI)
? 串行時鐘 (SCK)
當(dāng)工作在從動模式時,可能還需要第 4個引腳:
? 從動選擇 (SS)

結(jié)構(gòu)框圖:
SSP模塊由一個發(fā)送/接收移位寄存器(SSPSR)和一個緩沖寄存器(SSPBUF)組成。SSPSR用于器件輸入和輸出數(shù)據(jù)的移位,高位在前。在新的數(shù)據(jù)接收完畢前,SSPBUF保存上次寫入SSPSR的數(shù)據(jù)。一旦8位新數(shù)據(jù)接收完畢,該字節(jié)被送入SSPBUF寄存器。同時緩沖區(qū)滿標(biāo)志位BF(SSPSTAT<0>)和中斷標(biāo)志位SSPIF置1。這種雙重緩沖接收方式,允許接收數(shù)據(jù)被讀走之前,開始接收下一個數(shù)據(jù)。在數(shù)據(jù)發(fā)送/接收期間,任何試圖寫SSPBUF寄存器的操作都無
效,卻會將寫沖突檢測位WCOL(SSPCON<7>)置1。此時用戶必須用軟件將WCOL位清零,以判別下一次對SSPBUF的寫操作是否成功完成。為確保應(yīng)用軟件有效地接收數(shù)據(jù),應(yīng)該在新數(shù)據(jù)寫入SSPBUF之前,將SSPBUF中的數(shù)據(jù)讀走。
緩沖區(qū)滿標(biāo)志位BF(SSPSTAT<0>)用于表示SSPBUF是否已經(jīng)載入了接收的數(shù)據(jù)(發(fā)送完成)。當(dāng)SSPBUF中的數(shù)據(jù)被讀取后,BF位即被清零。如果SPI僅僅作為一個發(fā)送器,則不必理會這一位。通?捎肧SP中斷來判斷發(fā)送或接收是否完成。如果需要接收數(shù)據(jù),可從SSPBUF中讀取。SSP中斷一般用來確定發(fā)送/接收何時完成。必須對SSPBUF進行讀和/寫。如果不打算使用中斷方法,用軟件查詢方法同樣可確保不會發(fā)生寫沖突。

主控模式的操作
因為主控制器控制著SCK信號,所以它可以在任何時候啟動數(shù)據(jù)傳輸,同時主控制器通過軟件協(xié)議來決定從控制器何時發(fā)送數(shù)據(jù)。在主控模式下,數(shù)據(jù)一旦寫入SSPBUF就開始發(fā)送或接收。如果SPI僅作為接收器,則SDO輸出可以禁止(將其設(shè)置為輸入口)。SSPSR寄存器按編程設(shè)置的時鐘速率,對SDI引腳上的信號進行連續(xù)地移位輸入,每接收完一個字節(jié),都把其送入SSPBUF,就象普通的接收字節(jié)一樣(相應(yīng)的中斷和狀態(tài)位置1)。這在作為“在線主動監(jiān)控”方式的接收器應(yīng)用中是很有用的。時鐘極性可通過對SSPCON寄存器的CKP位(SSPCON<4>)進行適當(dāng)?shù)木幊虂碓O(shè)定。在主控模式下,SPI時鐘速率(位速率)可由用戶編程設(shè)定為下面幾種方式之一 :
?FOSC/4 (或 TCY)
?FOSC/16 (或 4 ? TCY)
?FOSC/64 (或 16 ? TCY)
? 定時器2 輸出 /2
這里允許的最大數(shù)據(jù)速率是8.25 Mbps(當(dāng)晶振為 20 MHz時 )。圖 17-6給出了主控模式的時序圖。當(dāng)CKE位置1時,SDO數(shù)據(jù)在SCK的第一個時鐘邊沿前就有效。圖中所示輸入采樣的變化則由SMP位的狀態(tài)決定。圖中同時給出了何時將接收到的數(shù)據(jù)寫入SSPBUF。

典型應(yīng)用




分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復(fù)

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復(fù) 返回頂部 返回列表