新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > SPI接口的出錯(cuò)分析及其改進(jìn)

SPI接口的出錯(cuò)分析及其改進(jìn)

作者: 時(shí)間:2012-07-19 來(lái)源:網(wǎng)絡(luò) 收藏

  單片機(jī)(MCU)系統(tǒng)為了與SPI標(biāo)準(zhǔn)外圍接口器件進(jìn)行通信,必須使用SPI( Serial Peripheral Interface,串行外設(shè)接口)總線。SPI總線系統(tǒng)是Motorola提出的一種同步串行外設(shè)接口,有信號(hào)線少、協(xié)議簡(jiǎn)單、傳輸速度快的特點(diǎn),因此有不少外圍器件都采用SPI總線,如Flash RAM、A/ D轉(zhuǎn)換器、LED顯示器、MCU以及計(jì)算機(jī)網(wǎng)絡(luò)等。MCU中的通過(guò)配置可與各個(gè)廠家生產(chǎn)的多種標(biāo)準(zhǔn)外圍器件直接連接。

  對(duì)于那些沒(méi)有功能的MCU來(lái)說(shuō),的功能靠軟件控制MCU的I/O口的方法來(lái)模擬。不過(guò),用軟件來(lái)模擬SPI接口的功能,工作速度非常慢,并且需要主從器件的軟件之間配合得非常好。如果在單片機(jī)芯片內(nèi)部用硬件電路來(lái)完成SPI接口功能,在硬件增加不多的情況下,能夠極大地提高傳輸速度(最高頻率可達(dá)主器件的頻率的1/4),減輕軟件的負(fù)擔(dān),使用極為方便。

  SPI接口工作的時(shí)候,沒(méi)有應(yīng)答信號(hào),并且數(shù)據(jù)在發(fā)送的時(shí)候無(wú)需校驗(yàn)位,所以,要求主從器件的軟件必須完全符合SPI的時(shí)序要求,否則數(shù)據(jù)傳輸很容易出現(xiàn)錯(cuò)誤。本文通過(guò)MCU中SPI接口模塊的設(shè)計(jì),分析數(shù)據(jù)傳輸?shù)母鞣N出錯(cuò)情況,并針對(duì)各種情況,增強(qiáng)SPI接口的錯(cuò)誤處理能力。

1、設(shè)定錯(cuò)誤

  在從器件時(shí)鐘頻率小于主器件時(shí)鐘頻率時(shí),如果SCK的速率設(shè)得太快,將導(dǎo)致接收到的數(shù)據(jù)不正確(SPI接口本身難以判斷收到的數(shù)據(jù)是否正確,要在軟件中處理)。

  整個(gè)系統(tǒng)的速度受三個(gè)因素影響:主器件時(shí)鐘CLK主、從器件時(shí)鐘CLK從和同步串行時(shí)鐘SCK,其中SCK是對(duì)CLK主的分頻,CLK從和CLK主是異步的。要使SCK無(wú)差錯(cuò)無(wú)遺漏地被從器件所檢測(cè)到,從器件的時(shí)鐘CLK從必須要足夠快。下面以SCK設(shè)置為CLK主的4分頻的波形為例,分析同步串行時(shí)鐘、主時(shí)鐘和從時(shí)鐘之間的關(guān)系。

點(diǎn)擊在新窗口中瀏覽產(chǎn)品
圖1主從時(shí)鐘和SCK的關(guān)系

  如圖1所示,當(dāng)T從Tsck/2,即T從<2T主時(shí),無(wú)論主時(shí)鐘和從時(shí)鐘之間的相位關(guān)系如何,在從器件CLK從的上升沿必然能夠檢測(cè)到SCK的低電平,即SCK=0的范圍內(nèi)至少包含一個(gè)CLK從的上升沿。

  圖2中,當(dāng)T從≥TSCK/2=2T主時(shí),在clk_s的兩個(gè)上升沿都檢測(cè)不到SCK的低電平,這樣從器件就會(huì)漏掉一個(gè)SCK。在某些相位條件下,即使CLK從僥幸能檢測(cè)到SCK的低電平,也不能保證可以繼續(xù)檢測(cè)到下一個(gè)SCK。只要遺漏了一個(gè)SCK,就相當(dāng)于串行數(shù)據(jù)漏掉了一個(gè)位,后面繼續(xù)接收/發(fā)送的數(shù)據(jù)就都是錯(cuò)誤的了。

點(diǎn)擊在新窗口中瀏覽產(chǎn)品
圖2主從時(shí)鐘和SCK的關(guān)系

  根據(jù)以上的分析,和主從時(shí)鐘比的關(guān)系如表1所列。

表1的設(shè)置和主從時(shí)鐘周期比值之間的關(guān)系

  在發(fā)送數(shù)據(jù)之前按照表1對(duì)SPR進(jìn)行設(shè)置,SPR設(shè)定錯(cuò)誤可以完全避免。


上一頁(yè) 1 2 3 下一頁(yè)

關(guān)鍵詞: SPI接口 傳輸過(guò)程 SPR

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉