在线看毛片网站电影-亚洲国产欧美日韩精品一区二区三区,国产欧美乱夫不卡无乱码,国产精品欧美久久久天天影视,精品一区二区三区视频在线观看,亚洲国产精品人成乱码天天看,日韩久久久一区,91精品国产91免费

<menu id="6qfwx"><li id="6qfwx"></li></menu>
    1. <menu id="6qfwx"><dl id="6qfwx"></dl></menu>

      <label id="6qfwx"><ol id="6qfwx"></ol></label><menu id="6qfwx"></menu><object id="6qfwx"><strike id="6qfwx"><noscript id="6qfwx"></noscript></strike></object>
        1. <center id="6qfwx"><dl id="6qfwx"></dl></center>

            新聞中心

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

            SPI接口的出錯分析及其改進

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

            2、模式錯誤(MODF)

              模式錯誤表示的是主從模式選擇的設(shè)置和引腳SS的連接不一致。

              器件工作在主模式的時候(MSTR=1),它的片選信號SS引腳必須接高電平。在發(fā)送數(shù)據(jù)的過程中,如果它的SS從高電平跳至低電平,在SS的下降沿,SPI模塊將檢測到模式錯誤,對MODF位置1,強制器件從主模式轉(zhuǎn)入從模式(即令MSTR=0),清空內(nèi)部計數(shù)器counter,并結(jié)束正在進行的數(shù)據(jù)傳輸,如圖3(a)所示。

              對從模式(MSTR=0),在沒有數(shù)據(jù)傳送的時候,SS高電平表示從器件未被選中,從器件不工作,MISO輸出高阻;在數(shù)據(jù)中,片選信號SS必須接低電平,且SS不允許跳變。如果SS從低電平跳到高電平,在SS的上跳沿,SPI模塊也將檢測到模式錯誤,清空內(nèi)部計數(shù)器counter,并結(jié)束正在進行的數(shù)據(jù)傳輸。直到SS恢復為低電平,重新使SPEN=1時,才重新開始工作,如圖3(b)所示。

            點擊在新窗口中瀏覽產(chǎn)品
            圖3模式錯誤的檢測

            3、溢出錯誤(OVR)

              溢出錯誤表示連續(xù)傳輸多個數(shù)據(jù)時,后一個數(shù)據(jù)覆蓋了前一個數(shù)據(jù)而產(chǎn)生的錯誤。

              狀態(tài)標志SPIF表示的是數(shù)據(jù)傳輸正在進行中,它對數(shù)據(jù)的傳輸有較大的影響。主器件的SPIF有效由數(shù)據(jù)寄存器的空標志SPTE=0產(chǎn)生,而從器件的SPIF有效則只能由收到的第一個SCK的跳變產(chǎn)生,且又由于從器件的SPIF和主器件發(fā)出的SCK是異步的,因此從器件的傳輸標志SPIF從相對于主器件的傳輸標志SPIF主有一定的滯后。如圖4所示,在主器件連續(xù)發(fā)送兩個數(shù)據(jù)的時候?qū)⒂锌赡軐е聫钠骷膫鬏敇酥竞椭髌骷乱粋€數(shù)據(jù)的傳輸標志相重疊(圖4中虛線和陰影部分),第一個收到的數(shù)據(jù)必然被覆蓋,第二個數(shù)據(jù)的收/發(fā)也必然出錯,產(chǎn)生溢出錯誤。

            點擊在新窗口中瀏覽產(chǎn)品
            圖4溢出錯誤

              通過對從器件的波形分析發(fā)現(xiàn),counter=8后的第一個時鐘周期,數(shù)據(jù)最后一位的傳輸已經(jīng)完成。在數(shù)據(jù)已經(jīng)收/發(fā)完畢的情況下,counter=8狀態(tài)的長短對數(shù)據(jù)的正確性沒有影響,因此可以縮短counter=8的狀態(tài),以避免前一個SPIF和后一個SPIF相重疊。這樣,從硬件上避免了這一階段的溢出錯誤。

              但是,如果從器件工作速度不夠快或者軟件正在處理其他事情,在接收到的數(shù)據(jù)尚未被讀取的情況下,又接收到一個新的數(shù)據(jù),溢出錯誤還是會發(fā)生的。此時,保護前一個數(shù)據(jù)不被覆蓋,舍棄新收到的數(shù)據(jù),置溢出標志OVR=1;另外發(fā)出中斷信號(如果該中斷允許),通知從器件及時讀取數(shù)據(jù)。

            4、偏移錯誤(OFST)

              一般要求從器件先工作,然后主器件才開始發(fā)送數(shù)據(jù)。有時在主器件往外發(fā)送數(shù)據(jù)的過程中,從器件才開始工作,或者SCK受到外界干擾,從器件未能準確地接收到8個SCK。如圖5所示,從器件接收到的8個SCK其實是屬于主器件發(fā)送相鄰的兩個數(shù)據(jù)的SCK主。這時,主器件的SPIF和從器件的SPIF會發(fā)生重疊,數(shù)據(jù)發(fā)生了錯位,從器件如果不對此進行糾正的話,數(shù)據(jù)的接收/發(fā)送便一直地錯下去。



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

            評論


            相關(guān)推薦

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

            關(guān)閉