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

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

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

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

提高SPI時(shí)鐘時(shí)通信異常的案例分享

茶話MCU ? 來源:ST MCU 信息交流 ? 2020-07-13 11:41 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

有人采用STM32H743ZI芯片的SPI外設(shè)跟ADC器件通信,發(fā)現(xiàn)一旦SPI的SCK時(shí)鐘超過25MHz時(shí),比如50Mhz,就會(huì)發(fā)生讀取數(shù)據(jù)失敗,并提示Busy忙信息或ERR錯(cuò)誤信息。反正只要串行時(shí)鐘不超過25Mhz,收發(fā)都很正常。

但是STM32H743芯片手冊(cè)上明白地說了SPI時(shí)鐘最高可達(dá)150MHz,這會(huì)是什么原因呢?

根據(jù)他所提到的異?,F(xiàn)象初步判斷,不論他的硬件方面還是軟件配置方面都應(yīng)該沒有很大的問題,不然根本沒法通信。像這種情況有可能是下面幾種原因之一或組合原因【當(dāng)然不僅限于這些】:

第一種情況就是通信速率明顯提高時(shí),由于通信速率加快,而接收處理的相關(guān)代碼本身所用時(shí)間相對(duì)固定,這樣可能導(dǎo)致不能及時(shí)讀走數(shù)據(jù)而發(fā)生溢出,尤其是基于查詢方式或中斷方式接收處理時(shí)。這時(shí)我們可以考慮對(duì)接收代碼做進(jìn)一步的精簡(jiǎn)優(yōu)化,壓縮接收處理時(shí)間,或者改用DMA方式進(jìn)行數(shù)據(jù)的收發(fā)。

第二種情況就是當(dāng)通信速率明顯提高時(shí),跟外設(shè)復(fù)用的GPIO輸出速率檔位的配置沒有跟上來。以本案例來說,當(dāng)我們將SPI的時(shí)鐘上到50MHz甚至更高時(shí),若相應(yīng)的GPIO的輸出速率配置還維持在相對(duì)低速水平,與實(shí)際輸出需求不相匹配時(shí)往往就會(huì)出現(xiàn)異常。

關(guān)于這個(gè)配置,如果使用STM32CubeMx配置的話就非常簡(jiǎn)單,通過菜單選擇即可完成。如下圖所示:

第三種情況就是當(dāng)通信速率明顯提高時(shí),即使相應(yīng)的GPIO輸出能力配置也匹配了,但有些情況下還是有可能出通信異常的問題。我們知道,當(dāng)GPIO輸出速率越來越高的時(shí)候,GPIO模塊帶來的噪聲也越大,作為通信口時(shí)其信號(hào)質(zhì)量也會(huì)隨著通信速率的提升而變差,當(dāng)然,此時(shí)芯片所需的功耗也隨之增大。對(duì)于很多STM32系列芯片,當(dāng)GPIO輸出速率達(dá)到一定程度時(shí),建議開啟片內(nèi)GPIO補(bǔ)償單元?!鞠旅娼貓D是兩個(gè)STM32系列關(guān)于GPIO補(bǔ)償單元的介紹文字】

該GPIO補(bǔ)償單元的作用就是通過控制IO口的輸出斜率,降低GPIO的噪聲對(duì)整個(gè)電源的影響并盡力改善信號(hào)質(zhì)量,所以當(dāng)我們基于STM32芯片實(shí)現(xiàn)較高速率的通信時(shí),比方50Mhz甚至上百兆的SPI或USB通信時(shí),如果芯片有GPIO補(bǔ)償單元的話,建議將其開啟。順便提醒下,使用GPIO補(bǔ)償單元的話,往往對(duì)電源電壓有相應(yīng)要求,具體依手冊(cè)而定。

下面是分別基于STM32F4和STM32F7系列的HAL庫(kù)相關(guān)開啟GPIO補(bǔ)償單元的函數(shù)。

至于本案例異常的真正原因是什么呢?后來經(jīng)確認(rèn)屬于上面提到的第二種情況,GPIO輸出速率擋位選擇與實(shí)際輸出需求不匹配,稍加調(diào)整配置就好。

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

    關(guān)注

    2293

    文章

    11031

    瀏覽量

    364684
  • SPI
    SPI
    +關(guān)注

    關(guān)注

    17

    文章

    1804

    瀏覽量

    95881
  • GPIO
    +關(guān)注

    關(guān)注

    16

    文章

    1280

    瀏覽量

    54047

原文標(biāo)題:提高SPI時(shí)鐘時(shí)通信異常的案例分享

文章出處:【微信號(hào):stmcu832,微信公眾號(hào):茶話MCU】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

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

掃碼添加小助手

加入工程師交流群

    評(píng)論

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

    使用BLE(CYW20829)作為SPI slave和MCU(TC387)作為SPI master,調(diào)試SPI通信時(shí)遇到的問題求解

    使用函數(shù)cyhal_spi_slave_write向master發(fā)送數(shù)據(jù)時(shí),沒有等待master拉低片選取并生成時(shí)鐘信號(hào),導(dǎo)致接收數(shù)據(jù)異常。 嘗試:使用Cy_GPIO_讀取CS引腳,直到該引腳被拉低
    發(fā)表于 07-01 08:28

    TI的ADS129x器件SPI 時(shí)鐘極性CPOL和時(shí)鐘相位 CPHA的正確設(shè)置模式

    TI的ADS129x器件SPI 時(shí)鐘極性CPOL和時(shí)鐘相位 CPHA的正確設(shè)置模式
    的頭像 發(fā)表于 06-18 16:36 ?371次閱讀
    TI的ADS129x器件<b class='flag-5'>SPI</b> <b class='flag-5'>時(shí)鐘</b>極性CPOL和<b class='flag-5'>時(shí)鐘</b>相位 CPHA的正確設(shè)置模式

    串行通信接口SPI與QSPI的區(qū)別

    在嵌入式系統(tǒng)的世界里,選擇正確的通信技術(shù)可以對(duì)項(xiàng)目的性能和可擴(kuò)展性產(chǎn)生重大影響。讓我們比較兩個(gè)流行的串行通信接口:SPI(串行外設(shè)接口)和QSPI(四路SPI)。
    的頭像 發(fā)表于 04-09 15:24 ?1217次閱讀
    串行<b class='flag-5'>通信</b>接口<b class='flag-5'>SPI</b>與QSPI的區(qū)別

    【CW32模塊使用】0.96寸SPI單色屏

    硬件SPI與軟件SPI相比,硬件SPI是靠硬件上面的SPI控制器,所有的時(shí)鐘邊緣采樣,時(shí)鐘發(fā)生,
    的頭像 發(fā)表于 03-29 17:29 ?2600次閱讀
    【CW32模塊使用】0.96寸<b class='flag-5'>SPI</b>單色屏

    使用SPI進(jìn)行通信,STM32F4做從機(jī),通信時(shí)數(shù)據(jù)異常怎么解決?

    使用SPI進(jìn)行通信,STM32F4做從機(jī),通信時(shí)數(shù)據(jù)異常,SPI2中SR寄存器會(huì)出現(xiàn)0xc0,0xc1,0x80的
    發(fā)表于 03-14 12:14

    DDP4422的SPI通信異常的原因?

    您好!我們的項(xiàng)目使用到了DDP4422的SPI接口SSP_PORT1,DDP4422作為主與C787芯片進(jìn)行通信。 DDP向C787寫數(shù)據(jù)是正常的;但讀數(shù)據(jù)時(shí),讀到的數(shù)據(jù)不正確。我這邊嘗試
    發(fā)表于 02-27 07:54

    SPI通信總線概述和Verilog實(shí)現(xiàn)

    SPI = Serial Peripheral Interface,是串行外圍設(shè)備接口,是一種高速,全雙工,同步的通信總線。
    的頭像 發(fā)表于 02-07 14:28 ?1404次閱讀
    <b class='flag-5'>SPI</b><b class='flag-5'>通信</b>總線概述和Verilog實(shí)現(xiàn)

    iic協(xié)議與spi協(xié)議的區(qū)別

    I2C協(xié)議與SPI協(xié)議的區(qū)別 1. 通信方式 I2C :是一種多主機(jī)、多從機(jī)的通信協(xié)議,使用兩條線(數(shù)據(jù)線SDA和時(shí)鐘線SCL)進(jìn)行通信
    的頭像 發(fā)表于 02-05 11:28 ?3210次閱讀

    通信控制器驅(qū)動(dòng)異常原因,怎么解決

    在現(xiàn)代計(jì)算機(jī)系統(tǒng)中,通信控制器驅(qū)動(dòng)扮演著至關(guān)重要的角色,它們負(fù)責(zé)在計(jì)算機(jī)操作系統(tǒng)與各種通信設(shè)備之間建立和維護(hù)通信鏈路。然而,有時(shí)通信控制器驅(qū)動(dòng)可能會(huì)出現(xiàn)
    的頭像 發(fā)表于 01-29 14:33 ?1253次閱讀

    KeyStone架構(gòu)串行外設(shè)接口(SPI)手冊(cè)

    SPI(Serial Peripheral Interface)是一種高速、全雙工、同步的串行通信協(xié)議,它允許微控制器與一個(gè)或多個(gè)外圍設(shè)備進(jìn)行通信SPI
    發(fā)表于 12-16 10:33 ?0次下載

    ADS8688IDBT SPI讀取數(shù)據(jù)波形異常,為什么?

    我司AGV項(xiàng)目中使用了TI的ADS8688IDBT,目前調(diào)試中遇到SPI讀取數(shù)據(jù)波形異常情況(數(shù)據(jù)在時(shí)鐘下降沿跳變), 讀取數(shù)據(jù)值不對(duì)的情況, 麻煩確認(rèn)下問題。
    發(fā)表于 12-06 06:43

    通信協(xié)議之SPI總線硬件篇

    SPI:Serial Peripheral Interface,串行外圍設(shè)備接口。 是由摩托羅拉在20世紀(jì)80年代中期開發(fā)的同步串行總線接口規(guī)范(帶有時(shí)鐘信號(hào),通過時(shí)鐘極性和時(shí)鐘相位
    的頭像 發(fā)表于 11-25 17:56 ?2317次閱讀
    <b class='flag-5'>通信</b>協(xié)議之<b class='flag-5'>SPI</b>總線硬件篇

    spi master接口的fpga實(shí)現(xiàn)

    前言 當(dāng)你器件的引腳賊少的時(shí)候,需要主機(jī)和從機(jī)通信,spi就派上了用場(chǎng),它可以一對(duì)多,但只是片選到的從機(jī)能和主機(jī)通信,其他的掛機(jī)。 spi:serial peripheral inte
    的頭像 發(fā)表于 11-16 10:35 ?1183次閱讀
    <b class='flag-5'>spi</b> master接口的fpga實(shí)現(xiàn)

    DS1302芯片與FPGA之間SPI通信原理

    本文通過以DS1302芯片為基礎(chǔ),介紹該芯片與FPGA之間SPI通信原理,詳細(xì)描述硬件設(shè)計(jì)原理及FPGA SPI接口驅(qū)動(dòng)設(shè)計(jì)。
    的頭像 發(fā)表于 10-24 14:16 ?1542次閱讀
    DS1302芯片與FPGA之間<b class='flag-5'>SPI</b><b class='flag-5'>通信</b>原理

    單片機(jī)SPI通信實(shí)現(xiàn)

    在深入探討單片機(jī)(如基于STM32、AVR、PIC等)如何通過SPI(Serial Peripheral Interface)進(jìn)行通信之前,我們先概述SPI通信的基本原理,隨后以STM
    的頭像 發(fā)表于 09-09 17:00 ?1637次閱讀