成人免费无码不卡毛片,亚洲AⅤ无码精品一区二区三区,国产尤物精品视频,久久精品日本亚洲,欧美成人一区三区无码乱码A片,中文字日产幕码一区二区色哟哟,亞洲日韓中文字幕網AV

  • 資料介紹
    • 1、背景
    • 2、問題復盤
    • 3、分析
    • 4、建議
    • 5、小結
  • 資料預覽
  • 相關推薦
申請入駐 產(chǎn)業(yè)圖譜

LAT1470 SPI傳輸長度超過1024時出現(xiàn)異常的問題分析

03/06 14:40
825
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

LAT1470 SPI傳輸長度超過1024時出現(xiàn)異常的問題分析

830.25 KB

1、背景

某客戶在使用 STM32U595QII6Q 開發(fā)產(chǎn)品時發(fā)現(xiàn),使用該芯片SPI3 與對方通信時,如果發(fā)送的數(shù)據(jù)超過 1024 字節(jié)時,SPI3 作為主設備,使用 HAL 庫的 SPI 相關發(fā)送函數(shù),發(fā)送完成回調(diào)函數(shù)不會執(zhí)行。

2、問題復盤

鑒于沒有 STM32U595QII6Q 對應的開發(fā)板,于是使用 NUCLEO-U575ZI-Q 復現(xiàn)問題。

2.1. 復盤

2.1.1. 運行例程

客戶在項目里還涉及了 LPDMA 外設,于是選擇了 en.stm32cubeu5-v1-6-0STM32Cube_FW_U5_V1.6.0ProjectsNUCLEO-U575ZIQExamplesSPISPI_FullDuplex_ComDMA_LowPower_Master運行發(fā)現(xiàn)結果正常。

2.1.2. 修改數(shù)據(jù)長度

首先將長度修改為(512<<0),數(shù)據(jù)內(nèi)容填充為 0xa5,測試發(fā)現(xiàn)一切正常。然后將長度修改為(512<<1),發(fā)現(xiàn)的確 HAL_SPI_TxRxCpltCallback 未被執(zhí)行。注意,此時 SPI3 工作duplex mode。

2.1.3. 最小化系統(tǒng)

利用 stm32cubeMX 配置了一個工程,SPI3 工作在 half-duplex mode。測試結果與上面的類似。

3、分析

檢查正常時(數(shù)據(jù)長度為 512),SPI3 狀態(tài)寄存器的值。

4、建議

對于 stm32u5 系列 mcu,如果 SPI3 都有此長度限制,建議將驅動代碼修改如下:

if ((hspi->hdmarx->Mode == DMA_LINKEDLIST_CIRCULAR) &&

(hspi->hdmatx->Mode == DMA_LINKEDLIST_CIRCULAR))

{

MODIFY_REG(hspi->Instance->CR2, SPI_CR2_TSIZE, 0UL);

}

else

{

If( SPI3 == hspi->Instance && Size >= 1023)

{

status = HAL_ERROR;

}

else

{

MODIFY_REG(hspi->Instance->CR2, SPI_CR2_TSIZE, Size);

}

}

5、小結

客戶在使用 stm32u575/u585/u595 系列 mcu SPI3 時,請注意傳輸數(shù)據(jù)長度,不能超過1024。

資料預覽

相關推薦

津南区| 武汉市| 蓝山县| 浑源县| 芜湖市| 眉山市| 郯城县| 松溪县| 阆中市| 武鸣县| 南陵县| 宁陕县| 祁东县| 荔波县| 平罗县| 涞水县| 交口县| 绥化市| 钟祥市| 新乐市| 晋江市| 崇明县| 马关县| 临西县| 耒阳市| 东宁县| 土默特右旗| 阿巴嘎旗| 阳原县| 高邮市| 彰化县| 石门县| 武宁县| 天祝| 光山县| 临泉县| 江山市| 宣威市| 乌拉特前旗| 金华市| 孟连|