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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

關于ADC+DMA的理解

  [復制鏈接]
跳轉到指定樓層
樓主
ID:966089 發表于 2023-3-5 21:34 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
關于STM32單片機芯片 各位大佬,我對ADC的理解是所有的通道最終轉換結果只能放到一個轉換結果寄存器里,為了適應多通道ADC采樣,一種方法是開啟ADC中斷,因為每一個通道轉換結束都會觸發中斷,這樣的話我只需要在每次中斷里把本次通道轉換的結果取出來就行,這樣可以滿足工作要求,但是頻繁中斷會降低CPU的運行效率,所以另一種方法使用DMA,不使用ADC中斷,假設有3個規則通道,那么在通道1轉換結束,DMA將結果轉移到目標地址,然后依次循環到通道3結束,如果開啟了DMA傳輸完成中斷,DMA則進入中斷處理采樣數據。如果按照上述的理解,是不是說多通道里面ADC只需要DMA就好了,甚至數據處理也可以放到DMA中斷進行,那么ADC中斷是不是顯得沒有必要,ADC中斷的意義是不是沒有那么大?希望大佬們能解決我的疑惑,批評指正!
分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

沙發
ID:71233 發表于 2023-3-6 08:53 | 只看該作者
DMA不只是用于ADC,如果用戶認為其他模塊使用DMA,ADC仍然使用中斷(中斷優先級為后),那該怎么辦?ADC中斷應該不能刪除吧,我認為。
回復

使用道具 舉報

板凳
ID:384109 發表于 2023-3-6 09:23 | 只看該作者
DMA沒那么神奇,DMA只是一個傳輸通道而已,很多情況下使用DMA和不使用DMA效果沒什么不同,DMA只是在一些特定的應用里使用才會體現效果
回復

使用道具 舉報

地板
ID:123289 發表于 2023-3-6 11:24 | 只看該作者
你對DMA的目的及實現的方案(與ADC無關),還需進一步了解,其后就明白了。
CPU中增加DMA功能是為了什么呢?
回復

使用道具 舉報

5#
ID:966089 發表于 2023-3-6 11:30 | 只看該作者
lmn2005 發表于 2023-3-6 08:53
DMA不只是用于ADC,如果用戶認為其他模塊使用DMA,ADC仍然使用中斷(中斷優先級為后),那該怎么辦?ADC中 ...

感謝您的回復!
回復

使用道具 舉報

6#
ID:966089 發表于 2023-3-6 11:31 | 只看該作者
人中狼 發表于 2023-3-6 09:23
DMA沒那么神奇,DMA只是一個傳輸通道而已,很多情況下使用DMA和不使用DMA效果沒什么不同,DMA只是在一些特 ...

感謝您的回復!
回復

使用道具 舉報

7#
ID:401564 發表于 2023-3-6 13:03 | 只看該作者
DMA和中斷是兩個不同的東西
DMA是不占用主程序的時間,你做你的,我做我的
中斷是可以打斷主程序的操作,有些事件是很重要的事件,它必需要有很高的等級,這個時候就要用到中斷了
回復

使用道具 舉報

8#
ID:586261 發表于 2023-3-7 11:58 | 只看該作者
ADC規則通道序列的某一通道轉換結束,轉換結果被寫入數據寄存器,DMA檢測到有新數據產生,就按照配置信息把數據傳送到設定存儲器,如果配置了DMA完成中斷,則產生中斷,CPU轉入DMA中斷處理程序。中斷處理程序應當是快進快出的。
回復

使用道具 舉報

9#
ID:883242 發表于 2023-3-7 22:06 | 只看該作者
DMA可以自動的把數據從ADC結果寄存器搬運到RAM里面,至于處理數據也能用DMA完成那是你想得太多了。
回復

使用道具 舉報

10#
ID:525244 發表于 2023-3-8 13:12 來自觸屏版 | 只看該作者
ADC中斷讀取,每讀取100次,15個通道。MCU一共進入1500次中斷。如果速度不快,或者是沒有用到其它高頻率的定時器,沒問題。如果有高頻次中斷,單片機就會頻繁進入各種中斷,導致單片機效率不高!如果用DMA,只需要設置DMA讀取ADC。所有通道都讀完了(前邊的1500次),并且算出平均值,DNA申請一次中斷,MCU只需要取出所有通道ADC的平均值,直接使用就行!就像兩個CPU,一個處理你的任務,一個幫助調度單片機硬件。
回復

使用道具 舉報

11#
ID:469589 發表于 2023-3-8 13:43 | 只看該作者
不對!
DMA傳輸的ADC,實際上換是需要ADC中斷處理的,即使DMA中斷是打開的,也不能在DMA中斷中處理結果,只能在ADC完成中斷中處理。!
這個我做過試驗。好像DMA中斷沒有用,但實際也不能關閉,否則ADC也無法進行。
回復

使用道具 舉報

12#
ID:94031 發表于 2023-3-8 14:37 | 只看該作者
單片機要有DMA功能,里面要加很多電路,實現的難度與成本會增加,所以不是每種單片機都有DMA_ADC功能,所以不可能不要ADC中斷,另外實時性DMA_ADC也不如ADC中斷。
回復

使用道具 舉報

13#
ID:644039 發表于 2023-3-8 15:48 | 只看該作者
在dma通道有限的情況下,adc中斷就起到了作用
回復

使用道具 舉報

14#
ID:401564 發表于 2023-3-8 21:52 | 只看該作者
GlenXu 發表于 2023-3-8 13:43
不對!
DMA傳輸的ADC,實際上換是需要ADC中斷處理的,即使DMA中斷是打開的,也不能在DMA中斷中處理結果, ...

不需要!設定好緩沖地址,DMA的結果就會一直是最近幾次的結果
回復

使用道具 舉報

15#
ID:1065084 發表于 2023-3-9 11:04 | 只看該作者
DMA你還沒仔細理解透徹,他是相當于獨立于cpu外的一個傳輸數據的外設,你可以理解為他只能傳輸數據的獨立CPU,你設定好了他就自己傳輸數據。
它僅適合大量數據傳輸,數據量越大他效果越明顯,你一個字節從串口搬到內存,也不過十幾個時鐘周期,并不浪費時間,但是量一大就明顯了,頻繁的中斷入棧出棧消耗太多cpu時間,使用DMA主要就是節約這部分時間(中斷出入棧)。
假設外設自帶fifo,比如spi可以一次存1K的數據,你給屏幕寫數據,就一次性寫到spi里,大約消耗 2K個時鐘周期就夠了,這個硬件fifo就相當于不能編程的dma了,而現在你有了一個可以任意設置方向緩存大小的dma,是不是更完美了呢? 有的人說我喜歡硬件fifo,給我裝上!好的 四十個外設每人1Kfifo好 還是把這40k放到主內存里,外設用dma操控好?
少量的數據也能用dma,只是編程更復雜而已,也沒啥問題
回復

使用道具 舉報

16#
ID:146878 發表于 2023-3-9 12:48 | 只看該作者
如果需要多通道輪詢采樣,那DMA沒什么必要,要切換通道必須要CPU去做。
回復

使用道具 舉報

17#
ID:668004 發表于 2023-3-14 18:44 | 只看該作者
yuxuesuixing 發表于 2023-3-9 11:04
DMA你還沒仔細理解透徹,他是相當于獨立于cpu外的一個傳輸數據的外設,你可以理解為他只能傳輸數據的獨立CP ...

這位兄弟   大師級別
回復

使用道具 舉報

18#
ID:966089 發表于 2023-3-16 09:55 | 只看該作者
yuxuesuixing 發表于 2023-3-9 11:04
DMA你還沒仔細理解透徹,他是相當于獨立于cpu外的一個傳輸數據的外設,你可以理解為他只能傳輸數據的獨立CP ...

感謝您的回復
回復

使用道具 舉報

19#
ID:966089 發表于 2023-3-16 09:58 | 只看該作者
Hephaestus 發表于 2023-3-7 22:06
DMA可以自動的把數據從ADC結果寄存器搬運到RAM里面,至于處理數據也能用DMA完成那是你想得太多了。

老哥,我說的是在DMA中斷程序里讓CPU切入進行處理采樣數據,DMA傳輸中當然不能處理數據了,這個我知道,你看錯了。感謝您的回復!
回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美成人a∨高清免费观看 欧美日韩中 | 成人高清在线 | 国产综合视频 | 欧美日韩中文国产一区发布 | 免费看日韩视频 | 欧美久久免费观看 | 日韩国产专区 | heyzo在线| 欧美专区在线 | 亚洲视频中文字幕 | 免费特黄视频 | 国产欧美一区二区三区在线看 | 精品九九| 国产一级片在线观看视频 | 国产日韩免费观看 | 色片在线观看 | 国产日韩中文字幕 | 久久一及片 | 日韩福利视频 | 宅男伊人 | 亚洲精品久久久久久久久久久 | 国产一区二区三区免费观看视频 | 久久久精品 | 国产精品久久久久久久久久免费看 | 色噜噜色综合 | 国产精品久久一区二区三区 | 日韩激情一区 | 久久精品欧美一区二区三区麻豆 | 日韩视频在线免费观看 | 国产不卡视频 | 免费99精品国产自在在线 | 国内精品伊人久久久久网站 | 一级毛片免费完整视频 | 亚洲影音 | 日韩一区二区三区四区五区六区 | 精品综合| 亚洲精品久久久久久下一站 | 日韩av一区二区在线观看 | 精品国产乱码久久久久久a丨 | 资源首页二三区 | 91视视频在线观看入口直接观看 |