色yeye在线视频观看_亚洲人亚洲精品成人网站_一级毛片免费播放_91精品一区二区中文字幕_一区二区三区日本视频_成人性生交大免费看

當前位置:首頁 > 嵌入式培訓 > 嵌入式學習 > 講師博文 > STM32之外設DMA

STM32之外設DMA 時間:2019-07-11      來源:深圳中心,曾老師

DMA(Direct Memory Access)—直接存儲器存取,是單片機的一個外設,它的主要功能是用來搬數據,但是不需要占用 CPU,即在傳輸數據的時候,CPU 可以干其他的事情,好像是多線程一樣。數據傳輸支持從外設到存儲器或者存儲器到存儲器,這里的存儲器可以是 SRAM 或者是 FLASH。DMA 控制器包含了 DMA1 和 DMA2(大容量產品中才有),其中 DMA1 有 7 個通道,DMA2 有 5 個通道,這里的通道可以理解為傳輸數據的一種管道。

(1-1)DMA框圖

DMA相關概念:

i.DMA請求

外設要想通過 DMA 來傳輸數據,必須先給 DMA 控制器發送 DMA 請求,DMA 收到請求信號之后,控制器會給外設一個應答信號,當外設應答后且 DMA 控制器收到應答信號之后,就會啟動 DMA 的傳輸,直到傳輸完畢。 

DMA 有 DMA1 和 DMA2 兩個控制器,DMA1 有 7 個通道,DMA2 有 5 個通道,不同的 DMA 控制器的通道對應著不同的外設請求,這決定了我們在軟件編程上該怎么設置,具體見 DMA 請求映像表。

(1-2)DMA1請求一覽表

(1-3)DMA2請求一覽表

ii.通道

DMA 具有 12 個獨立可編程的通道,其中 DMA1 有 7 個通道,DMA2 有 5 個通道,每個通道對應不同的外設的 DMA 請求。雖然每個通道可以接收多個外設的請求,但是同一時間只能接收一個,不能同時接收多個。

iii.DMA仲裁

當發生多個 DMA 通道請求時,就意味著有先后響應處理的順序問題,這個就由仲裁器也管理。仲裁器管理 DMA 通道請求分為兩個階段。第一階段屬于軟件階段,可以在DMA_CCRx 寄存器中設置,有 4 個等級:非常高、高、中和低四個優先級。第二階段屬于硬件階段,如果兩個或以上的 DMA 通道請求設置的優先級一樣,則他們優先級取決于通道編號,編號越低優先權越高,比如通道 0 高于通道 1。在大容量產品和互聯型產品中, DMA1 控制器擁有高于 DMA2 控制器的優先級。

DMA配置:

i.數據從哪來到哪去

我們知道 DMA 傳輸數據的方向有三個:從外設到存儲器,從存儲器到外設,從存儲器到存儲器。具體的方向 DMA_CCR 位 4 DIR 配置:0 表示從外設到存儲器,1 表示從存儲器到外設。這里面涉及到的外設地址由 DMA_CPAR 配置,存儲器地址由 DMA_CMAR 配置。

ii.數據傳輸的量

當我們配置好數據要從哪里來到哪里去之后,我們還需要知道我們要傳輸的數據是多少,數據的單位是什么。

在DMA傳輸中,要想數據傳輸正確,源和目標地址存儲的數據寬度還必須一致,外設的數據寬度由 DMA_CCR 的PSIZE[1:0]配置,可以是 8/16/32 位,存儲器的數據寬度由 DMA_CCR 的 MSIZE[1:0]配置,可以是 8/16/32 位。

在 DMA 控制器的控制下,數據要想有條不紊的從一個地方搬到另外一個地方,還必須正確設置兩邊數據指針的增量模式。外設的地址指針由 DMA_CCRx 的 PINC 配置,存儲器的地址指針由 MINC 配置。以串口向電腦發送數據為例,要發送的數據很多,每發送完一個,那么存儲器的地址指針就應該加 1,而串口數據寄存器只有一個,那么外設的地址指針就固定不變。具體的數據指針的增量模式由實際情況決定。

iii.數據什么時候傳輸完成

數據什么時候傳輸完成,我們可以通過查詢標志位或者通過中斷的方式來鑒別。每個DMA 通道在 DMA 傳輸過半、傳輸完成和傳輸錯誤時都會有相應的標志位,如果使能了該類型的中斷后,則會產生中斷。有關各個標志位的詳細描述請參考 DMA 中斷狀態寄存器DMA_ISR 的詳細描述。 

傳輸完成還分兩種模式,是一次傳輸還是循環傳輸,一次傳輸很好理解,即是傳輸一次之后就停止,要想再傳輸的話,必須關斷 DMA 使能后再重新配置后才能繼續傳輸。循環傳輸則是一次傳輸完成之后又恢復第一次傳輸時的配置循環傳輸,不斷的重復。具體的由 DMA_CCR 寄存器的 CIRC 循環模式位控制。

ST標準外設庫中的初始化結構體

該結構體的成員變量用于指定數據從哪來到哪去,傳輸多大的量,以什么格式進行傳輸以及傳輸的優先權。

上一篇:STM32之外設定時器

下一篇:ARM異常處理設置

熱點文章推薦
華清學員就業榜單
高薪學員經驗分享
熱點新聞推薦
前臺專線:010-82525158 企業培訓洽談專線:010-82525379 院校合作洽談專線:010-82525379 Copyright © 2004-2022 北京華清遠見科技集團有限公司 版權所有 ,京ICP備16055225號-5京公海網安備11010802025203號

回到頂部

主站蜘蛛池模板: 97久久婷婷五月综合色D啪蜜芽 | 意大利xxxx性hd极品 | japanese乱人伦精品 | 欧洲女人牲交性开放视频 | 欧美 日韩 亚洲 中文 | 在线观看国产日韩亚洲中 | 四虎影院视频 | 女仆乖乖脱内衣内裤打屁股 | 夜夜躁狠狠躁日日躁麻豆护士 | 少妇极品熟妇人妻无码 | 天堂va欧美va亚洲va好看va | 成人中文乱幕日产无线码 | 乱人伦人妻中文字幕 | 18禁黄网站免费 | 国产真实迷奷在线播放 | 天天综合网在线观看视频 | 337p日本欧洲亚洲大胆艺术96 | 成全免费高清观看在线电视 | 色婷婷综合激情中文在线 | 国产免费又爽又色又粗视频 | 一二三四在线观看免费高清视频 | 久久69国产精品久久69软件 | 欧美激情在线一区二区 | 曰本女人与公拘交酡免费视频 | 亚洲国产精品嫩草影院在线观看 | 久久国产超碰女女av | 欧美日韩中文国产一区 | 亚洲国产人成自精在线尤物 | 中文字幕无码乱人伦 | 亚洲小说在线图片色 | 亚洲国产精品成人久久蜜臀 | 无码国产精品一区二区免费16 | 国产一区二区视频免费看 | 亚洲AV无码一区东京热蜜芽 | 欧美性20hd另类 | 国内精品自线在拍2020不卡 | 九月婷婷人人澡人人添人人爽 | 亚洲精品国产精品国自产 | 亚洲熟妇无码AV在线观看 | 疯狂做受XXXX高潮按摩 | 中国免费XXXXXL |