久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 6412|回復: 7
打印 上一主題 下一主題
收起左側

stm32的dma傳輸完成中斷是指什么時候?

[復制鏈接]
跳轉到指定樓層
樓主
ID:958310 發表于 2021-8-4 19:16 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  最近接手一個老項目是用到ADC和DMA配合使用,ADC是5個通道循環轉換,然后通過DMA傳輸到定義的全局數組里。每當DMA完成傳輸的時候就出發一次中斷然后在DMA中斷處理函數中對 1個 通道的AD值進行卡爾曼濾波,每次DMA中斷只對一個通道的AD值進行濾波下一次中斷就對下一個通道濾波,現在遇到的疑問就是:

    1、STM32的DMA配置的時候有兩個跟數據量有關的:一是傳輸的數據位寬(1字節、2字節和4字節),二是傳輸的總數據個數。那么這個DMA傳輸完成觸發中斷是指每傳輸一個數據、還是傳輸完總數據個數就觸發DMA中斷? 例如像我這里ADC轉換5個通道,DMA配置為:2字節位寬、傳輸總數據個數為5.開啟DMA中斷后那么我這里是每次ADC轉換完一個通道就出發一次DMA中斷?還是ADC要循環轉換完5個通道才觸發一次DMA中斷?

    2、之前一直用沒留意,然后今天看了一下卡爾曼濾波就對這個DMA中斷觸發看不懂。找到的芯片手冊也沒怎么細講。我就想我這里如果DMA是每當ADC轉換完一個通道就觸發一次中斷然后對這個通道的AD值進行濾波,那么就是符合要求的。如果是每當ADC轉換完5個通道DMA才觸發一次中斷,那豈不是要ADC連續5次轉換5個通道才能將5個通道的AD值進行濾波1次,這也太蠢了吧?

    3、代碼是上一任員工寫的,我在想能不能將那個DMA的總數據個數改為1個,然后每當ADC轉換完一個通道就觸發一次中斷來進行濾波,這樣實時性會不會好一些?

  有懂的大哥們幫幫忙解惑一下,謝謝了。
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

來自 2#
ID:106290 發表于 2021-8-5 17:06 | 只看該作者
STM32中文參考手冊_v10 144頁,寫得很清楚,在數據傳輸結束后,傳輸完成標志位(TCIF)被置1,當設置了允許傳輸完成中斷為(TCIE),將產生一個中斷請求。傳輸數據則由DAM_CMARX寄存器設置,其實就是你自己設置的數據大小。結論:你設置了多少傳輸數據,數據傳輸完成才能觸發完成中斷。只有一個通道要求的,直接用ADC轉換完成中斷處理就好了。多通道覺得比較麻煩的,可以采用注入型ADC轉換。
回復

使用道具 舉報

板凳
ID:592807 發表于 2021-8-5 10:16 | 只看該作者
DMA中斷問題先放一邊,先說一下濾波問題,”ADC轉換完一個通道就觸發一次中斷來進行濾波”,你一個數據你和誰濾波?ADC轉換一次是一個數據。
回復

使用道具 舉報

地板
ID:958310 發表于 2021-8-5 10:38 | 只看該作者
黃youhui 發表于 2021-8-5 10:16
DMA中斷問題先放一邊,先說一下濾波問題,”ADC轉換完一個通道就觸發一次中斷來進行濾波”,你一個數據你和 ...

卡爾曼濾波的原理就是跟以往的數據進行比較,然后預測這一次的結果。每次轉換的AD數據都要保留到下一次計算濾波。
回復

使用道具 舉報

5#
ID:419909 發表于 2021-8-5 11:02 | 只看該作者
1,按我之前使用過的經驗.是總數據個數傳完即產生中斷.你設置5.那就是5個數據傳完就中斷了.
2,3,如果你只用一個通道.那還要用什么DMA.直接讀ADC不就行了嗎?
回復

使用道具 舉報

6#
ID:958310 發表于 2021-8-5 14:49 | 只看該作者
wfqxgw 發表于 2021-8-5 11:02
1,按我之前使用過的經驗.是總數據個數傳完即產生中斷.你設置5.那就是5個數據傳完就中斷了.
2,3,如果你只用 ...

有道理
回復

使用道具 舉報

7#
ID:106290 發表于 2021-8-5 17:09 | 只看該作者
STM32中文參考手冊_v10 144頁,明確說了。
1.當傳輸一半的數據后,半傳輸標志(HTIF)被置1,當設置了允許半傳輸中斷位(HTIE)時,將產生一個中斷請求。在數據傳輸結束后,傳輸完成標志(TCIF)被置1,當設置了允許傳輸完成中斷位(TCIE)時,將產生一個中斷請求。數據是由用戶設置的,最大為65536。
2.如果只是單通道ADC直接采用,ADC轉換完成中斷里面處理數據就好。
3.如果是多通道,可以用DMA,或者是注入型ADC轉換。
回復

使用道具 舉報

8#
ID:958310 發表于 2021-8-5 17:11 | 只看該作者
ganhui1300 發表于 2021-8-5 17:06
STM32中文參考手冊_v10 144頁,寫得很清楚,在數據傳輸結束后,傳輸完成標志位(TCIF)被置1,當設置了允許 ...

哎,這里我第一時間就看了,其實是我接手的項目之前那個人寫的代碼把我搞混淆了,我不敢確定,F在理解了。
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 中文天堂在线一区 | 亚洲在线一区 | 欧美一级电影免费 | 欧美片网站免费 | 欧美久久精品一级黑人c片 91免费在线视频 | 福利片一区二区 | 免费一区 | 91国产精品 | 日韩一区二区三区精品 | 中文字幕国产精品视频 | 中文字幕二区三区 | 天天曰夜夜操 | 欧美日韩亚洲视频 | 久久久久久久久国产成人免费 | 国产成人免费一区二区60岁 | 国产精品久久久久久久久久 | 国产精品一区二区三区在线播放 | 超碰精品在线观看 | 欧美日韩综合一区 | 成人午夜在线观看 | 欧美视频中文字幕 | 日韩精品中文字幕在线 | 四虎影音 | 精品久久久一区二区 | 日韩视频一区二区 | 国产免费一区二区 | 国产精品久久久久久久免费观看 | 一本一道久久a久久精品综合 | 国产原创视频 | 成人免费看片又大又黄 | 人人天天操| 欧美日韩在线精品 | 午夜成人免费视频 | 91精品综合久久久久久五月天 | 日本精品一区二区三区在线观看视频 | 欧美美女一区二区 | 欧洲妇女成人淫片aaa视频 | 日韩一级免费看 | 日韩成人精品一区 | 五月激情婷婷网 | 天天操人人干 |