chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

SPI通訊速度與容錯率

嵌入式應(yīng)用開發(fā) ? 來源:嵌入式應(yīng)用開發(fā) ? 作者:嵌入式應(yīng)用開發(fā) ? 2022-12-04 10:21 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

通訊速率

對于SPI通信并沒有規(guī)范最高的通信速率,在我的開發(fā)經(jīng)驗中有見過達到50Mbit/s的應(yīng)用場景,但通常比較常見的還是10Mbit/s左右。

具體選用多快的通信速度,還得在實際項目中根據(jù)情況具體設(shè)計,比如:

1、當前主從機的主頻和項目的具體應(yīng)用都與SPI數(shù)據(jù)的處理能力有著直接關(guān)系,一般SPI通信的時鐘頻率都是來源于主頻分頻,這就在一定程度上限制了其通信速率上限。

即使能夠達到較高速的速率,而處理器還需要處理更多的業(yè)務(wù)邏輯,再去處理SPI數(shù)據(jù)也是不夠及時的,此時高速率并沒有太大的意義了。

2、SPI硬件PCB布線長度等等影響著線路阻抗,這也同樣限制了通信速率,一般通信距離越長,通信速度越低,否則容易造成通信不穩(wěn)定。

特別是通信線路經(jīng)過一些干擾源更是影響其穩(wěn)定性,所以SPI作為一種相對高速的通信方式,一般都不會用于長距離通信中,而是大量用于微處理器與外部SPI接口的設(shè)備之間的通信,比如高速采樣芯片ADC、處理器之間等等。

3、前面說了即使SPI主機能夠達到較高的通信速率,但從機主頻或者數(shù)據(jù)處理能力不夠,這樣也是沒有太大意義的,當你可以通過配置從機為接收隊列或者DMA等方式進行優(yōu)化,當然高速率在多機中能夠減少同步延時。

值得注意的是一些芯片標稱的最高通信速率,是在比較好的外界條件下的測試值,超過了該標稱值可能也能用,但并不會很穩(wěn)定,容易導致通信異常。

所以具體選用多快的通信速度,還需根據(jù)實際情況分析確認。

pYYBAGOLLdGAQ3X9AAGNtuJ6_do508.png

容錯性

SPI不像IIC那樣存在應(yīng)答機制,也沒有流控制機制,當從機配置較低,如果一個報文還沒處理完,后一個報文又到來,導致傳輸錯亂,其通信過程幾乎都是靠硬件來保證數(shù)據(jù)的傳輸穩(wěn)定性,是一種不可靠傳輸。

當然如果是用于多機通信倒是可以通過制定可靠性校驗協(xié)議來保證傳輸數(shù)據(jù)的穩(wěn)定,但這也在一定程度上會降低通信的有效數(shù)據(jù)傳輸速度。

stm32的SPI外設(shè)發(fā)送和接收都存在獨立的CRC校驗功能,大致的原理就是使用CRC在每個位上進行串行計算,然后在最后一次數(shù)據(jù)傳輸結(jié)束時來傳輸CRC校驗值,接受方接收到CRC以后自動拿著數(shù)據(jù)和CRC值進行比對,看是與否有數(shù)據(jù)故障,如果存在傳輸問題就會置位相應(yīng)的CRC故障標志位告知。

當然如果所選用的芯片SPI外設(shè)沒有獨立CRC模塊可以模擬類似的操作進行處理,只是相對比較耗時,畢竟這個CRC得軟件自己處理。

stm32的SPI外設(shè)的靈活度遠不止這些,比如配置成雙線單向模式等,可以把MISO和MOSI都向一個方向傳輸,從而提高一倍的傳輸速度,感興趣可以參考一下手冊玩一下。






審核編輯:劉清

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1804

    瀏覽量

    95896
  • PCB布線
    +關(guān)注

    關(guān)注

    22

    文章

    472

    瀏覽量

    42731
  • SPI通信
    +關(guān)注

    關(guān)注

    0

    文章

    36

    瀏覽量

    11660
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    關(guān)于STM32的SPI主從雙機通訊問題

    大家,我想問下,我用兩塊STM32進行SPI通訊,一個主機一個從機,開始主從機是可以通訊成功的,而且數(shù)據(jù)也是對的,但是不知為什么,通訊一段時間后,從機接收主機發(fā)過來的數(shù)據(jù)會出現(xiàn)錯誤,感
    發(fā)表于 10-11 21:06

    SPI通訊錯誤問題解決

    SPI接口,與串口接口相似,是單片機中最基本的兩個通訊接口,都有T(發(fā))、R(收), 不同的是SPI還有時鐘與片選 。我初入研發(fā)時,設(shè)計過一個SPI接口的
    發(fā)表于 09-30 23:59

    nrf24l01+和stm32的spi通訊需要設(shè)置nrf24l01+的spi波特

    nrf24l01+和stm32的spi通訊需要設(shè)置nrf24l01+的spi波特嗎如果需要,想問下是在哪段代碼設(shè)置的nrf24l01+的spi
    發(fā)表于 01-21 17:16

    Compact Rio下NI9401如何通過SPI通訊采集加速度信號?

    我想用C-rio下的NI9401 進行SPI通訊采集加速度信號,類似于使用NI9401采集ADXL345加速度信號,這樣可以采集信號進行實時處理,盡可能的降低系統(tǒng)的延時。但是我機械出身
    發(fā)表于 04-16 09:13

    nrf24l01+和stm32的spi通訊要設(shè)置nrf24l01+的spi波特嗎?是在哪段代碼設(shè)置的

    nrf24l01+和stm32的spi通訊需要設(shè)置nrf24l01+的spi波特嗎如果需要,想問下是在哪段代碼設(shè)置的nrf24l01+的spi
    發(fā)表于 06-09 04:35

    容錯CAN收發(fā)器TJA1054電子資料

    概述:TJA1054是飛利浦半導體公司生產(chǎn)的一款容錯CAN收發(fā)器。該TJA1054是在一個控制區(qū)域網(wǎng)絡(luò)的公交線路的協(xié)議控制器和物理線路(CAN)之間的接口。它主要用于forlow速度的應(yīng)用,高達125K波特,在乘用...
    發(fā)表于 04-21 06:52

    硬件SPI與軟件模擬SPI速度區(qū)別

    硬件SPI與軟件模擬SPI速度區(qū)別實測目前為了程序移植方便,許多以SPI接口的芯片所提供的參考代碼大多都使用的是軟件SPI,比如筆者用過的存
    發(fā)表于 07-01 06:40

    RN8302spi通訊例程2011.5.30

    RN8302spi通訊例程2011.5.30
    發(fā)表于 08-24 08:41 ?44次下載

    USART波特SPI速率對比

    USART波特 vs SPI速率
    的頭像 發(fā)表于 01-15 16:37 ?1.3w次閱讀

    兩塊STM32之間SPI通訊進行的注意事項

    之前分享過的SPI通訊實例:STM32硬件SPI主從通信實例,是基于一塊STM32的兩個SPI通訊。如果要進行兩塊STM32之間的
    的頭像 發(fā)表于 04-04 17:24 ?1.6w次閱讀

    硬件SPI與軟件模擬SPI速度區(qū)別實測

    硬件SPI與軟件模擬SPI速度區(qū)別實測目前為了程序移植方便,許多以SPI接口的芯片所提供的參考代碼大多都使用的是軟件SPI,比如筆者用過的存
    發(fā)表于 12-22 19:13 ?9次下載
    硬件<b class='flag-5'>SPI</b>與軟件模擬<b class='flag-5'>SPI</b><b class='flag-5'>速度</b>區(qū)別實測

    SPI通訊協(xié)議介紹

    來到SPI通訊協(xié)議了。廢話兩句,“SPI很重要”,這是我在學校時候聽那些單片機開發(fā)工程師說的。出來實習,到后來工作,確實如此,SPI的使用很常見,那么自然重要咯。
    發(fā)表于 12-22 19:18 ?11次下載
    <b class='flag-5'>SPI</b><b class='flag-5'>通訊</b>協(xié)議介紹

    SPI通訊協(xié)議必備知識。

    SPI被廣泛地使用在 ADC、LCD 等設(shè)備與 MCU 間,要求通訊速率較高的場合,也是學習STM32必需要掌握的知識。...
    發(fā)表于 12-22 19:21 ?13次下載
    <b class='flag-5'>SPI</b><b class='flag-5'>通訊</b>協(xié)議必備知識。

    該如何提高代碼容錯、降低代碼耦合度?

    提高RT-Thread代碼的容錯和降低耦合度是確保代碼質(zhì)量和可維護性的關(guān)鍵,下面列舉了幾種在編寫代碼時,提高代碼容錯和降低耦合度的思路。讓我們一起來看看吧~一、提高代碼
    的頭像 發(fā)表于 06-26 08:10 ?1175次閱讀
    該如何提高代碼<b class='flag-5'>容錯</b><b class='flag-5'>率</b>、降低代碼耦合度?