娇小w搡bbbb搡bbb,《第一次の人妻》,中国成熟妇女毛茸茸,边啃奶头边躁狠狠躁视频免费观看

使用STM32F4芯片驗證SPI功能的問題分析

發布者:Tapir最新更新時間:2024-09-12 來源: elecfans關鍵字:STM32F4芯片  SPI功能  中斷方式 手機看文章 掃描二維碼
隨時隨地手機看文章

有人使用STM32F4芯片驗證SPI功能。當使用片內兩個SPI模塊基于中斷方式進行收發時,發現總是出現接收數據丟失的情況,貌似總丟失末尾2個數據。代碼使用HAL庫提供的API函數。這是怎么回事呢?


我拿STM32F407開發板進行驗證測試。使用SPI1做發送,SPI3做接收,都使用中斷方式。

c695b4fe-9759-11ee-8b88-92fbcf53809c.png

很快重現了問題現象,即發生接收數據丟失的情形。見下圖驗證結果,發了8個數據,只收到6個數據。

c6a88070-9759-11ee-8b88-92fbcf53809c.png

現在是同一顆芯片,即同一CPU基于中斷方式完成收發。懷疑會不會是不同SPI收發模塊中斷優先級的安排不合理導致的問題。如果二者優先級一樣的話,這里的發送中斷往往先于接收中斷的產生,勢必會出現接收不及時的情形。通過對代碼跟蹤調試,也的確發現了SPI接收溢出的現象,即接收數據提取不及時。

c6bbc234-9759-11ee-8b88-92fbcf53809c.png

這樣分析下來,感覺數據丟失應該跟通信速率有關,丟失數據的多少不應該固定。于是,我大幅度提升SPI通信速率再行測試,果真丟失的數據更多了。見下圖測試結果,發8個數據只收到1個數據。【前面測試時SPI波特率是5.25Mb/s,現在改為21Mb/s了】

c6cd652a-9759-11ee-8b88-92fbcf53809c.png

我將SPI3接收中斷的優先級調得比SPI1發送中斷的還高,如下圖所示。

c6e43552-9759-11ee-8b88-92fbcf53809c.png

基于重新調整中斷優先級后的代碼再做測試,結果就完全正常了。

c6fd7378-9759-11ee-8b88-92fbcf53809c.png

當然,我們還可以有其它靈活處理的辦法。比方發送用中斷,接收用DMA,或者發送用輪訓,接收用中斷或DMA,或者都用DMA方式也行。


這里的核心問題是中斷優先級沒有合理安排好。STM32ARM核中斷的內容不多,不過內容不多的東西往往意味著使用上更為靈活。好,今天的話題就分享到這里。


關鍵字:STM32F4芯片  SPI功能  中斷方式 引用地址:使用STM32F4芯片驗證SPI功能的問題分析

上一篇:請問一下STM32管腳重映射支持任意組合嗎?
下一篇:STM32F0系列MCU硬件電路供電設計

推薦閱讀最新更新時間:2025-06-07 23:43

ARM LPC2103定時器中斷方式寄存器
定時器查詢方式定時器初始化: 1、設置定時器分頻數,為(x+1)分頻 2、匹配通道X中斷并復位TxTC 3、比較值(1S定時值) 4、啟動并復位TxTC 如: T1PR = 99; // 設置定時器0分頻為100分頻,得110592Hz T1MCR = 0x03; // 匹配通道0匹配中斷并復位T0TC T1MR0 = 110592/2; // 比較值(1S定時值) T1TCR = 0x03; // 啟動并復位T0TC T1TCR = 0x01; 研究了好長一段時間,LPC210X的定時器,查
[單片機]
TMS320F28x上RTOS移植關鍵技術研究
  TMS320F28x上RTOS移植關鍵技術研究    摘要 詳細分析TT公司TMS320F28x系列DSP的啟動過程;說明BootROM中程序的運行過程,介紹C編譯器和DSP/BIOS的工作細節;探討DSP的中斷處理及從RAM中執行代碼等問題。最后分析如何在TMS320F28x系列DSP上移植實時操作系統。    關鍵詞 數字信號處理器 TMS320F28x BootRoM 實時操作系統   TMS320F28x(簡稱“F28x”)數字信號處理器是TI公司推出的32位定點DSP控制器,其頻率高達150 MHz,大大提高了控制系統的精度和芯片的處理能力。在F28x系列DSP上移植實時操作系統,需要對編澤器、系統啟動過程、中
[嵌入式]
小廣播
設計資源 培訓 開發板 精華推薦

最新單片機文章
何立民專欄 單片機及嵌入式寶典

北京航空航天大學教授,20余年來致力于單片機與嵌入式系統推廣工作。

 
EEWorld訂閱號

 
EEWorld服務號

 
汽車開發圈

 
機器人開發圈

電子工程世界版權所有 京ICP證060456號 京ICP備10001474號-1 電信業務審批[2006]字第258號函 京公網安備 11010802033920號 Copyright ? 2005-2025 EEWORLD.com.cn, Inc. All rights reserved
主站蜘蛛池模板: 凉山| 静安区| 闵行区| 安龙县| 岳西县| 寿宁县| 惠来县| 客服| 嵊州市| 莒南县| 金沙县| 格尔木市| 福鼎市| 保康县| 桃江县| 克山县| 五大连池市| 会泽县| 普安县| 大渡口区| 红原县| 成都市| 上杭县| 昭平县| 牙克石市| 延寿县| 土默特右旗| 雷州市| 商水县| 马尔康县| 三门峡市| 交城县| 汽车| 武威市| 迭部县| 宁国市| 临猗县| 哈尔滨市| 水富县| 五寨县| 广元市|