一区二区三区三上|欧美在线视频五区|国产午夜无码在线观看视频|亚洲国产裸体网站|无码成年人影视|亚洲AV亚洲AV|成人开心激情五月|欧美性爱内射视频|超碰人人干人人上|一区二区无码三区亚洲人区久久精品

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何使用DMA彈性映射請(qǐng)求

MCU開(kāi)發(fā)加油站 ? 來(lái)源:MCU開(kāi)發(fā)加油站 ? 作者:MCU開(kāi)發(fā)加油站 ? 2022-05-05 15:35 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

概述

在使用Artery部分系列MCU時(shí)(如AT32F413AT32F415AT32F403AAT32F407),可以使用DMA彈性映射功能。此功能使得DMA的通道配置更加靈活,可以將某外設(shè)的DMA請(qǐng)求通道指定到DMA1或者DMA2共14個(gè)通道中的任意一個(gè)通道。(如:可以將SPI1接受數(shù)據(jù)的DMA請(qǐng)求指定到DMA1的通道7)。

本指南將介紹如何使用DMA彈性映射請(qǐng)求,從而使得DMA傳輸變得更加靈活多變。

配置及使用方法

常規(guī)DMA使用(DMA固定映射)

常規(guī)的DMA使用以及配置方式為:外設(shè)的DMA通道已經(jīng)固定且不可改變,使用時(shí)配置好再使能固定通道即可。這就意味著如果想開(kāi)啟某個(gè)外設(shè)的DMA功能,那么通道是不可改變的,例如想使用SPI1的RX DMA功能,那么就要查看RM的手冊(cè),如下:

表1. DMA固定映射請(qǐng)求

7faa1bec-cc45-11ec-bce3-dac502259ad0.png

從表格中可以知道需要開(kāi)啟DMA1的通道2。

DMA彈性映射使用

DMA彈性映射請(qǐng)求功能提供了一種更靈活的使用方式,即外設(shè)的DMA通道不固定,可選擇DMA1和DMA2中,共14個(gè)通道的任意一個(gè)通道。想要使用此功能,需要通過(guò)以下幾步的設(shè)定:

1) 開(kāi)啟DMA彈性映射功能

將DMA的通道來(lái)源寄存器1的第24bit寫1,即DMA_SRC_SEL1寄存器的DMA_FLEX_EN位。向通道設(shè)置對(duì)應(yīng)的寄存器中寫入相應(yīng)的硬件ID號(hào)。每個(gè)外設(shè)的DMA請(qǐng)求都分配了一個(gè)硬件ID號(hào),只要將這個(gè)ID號(hào)寫進(jìn)通道來(lái)源寄存器中即可。ID號(hào)可查看RM中的表格,以403A為例,如下:

表2. 403A各個(gè)信道的DMA彈性請(qǐng)求一覽

7fc7c174-cc45-11ec-bce3-dac502259ad0.png

上表中的CHx_SRC設(shè)定值就是硬件ID號(hào),將這個(gè)ID號(hào)寫進(jìn)通道來(lái)源寄存器中的對(duì)應(yīng)通道bit位就可以了。例如:要將SPI1的RX的DMA請(qǐng)求映射到DMA1的通道7,那么就要將0x09寫入到DMA_SRC_SEL1寄存器的CH7_SRC[23:16]。其他配置與常規(guī)DMA配置相同通過(guò)以上3步的配置,彈性映射功能即可使用。

注:DMA1/2的DMA_FLEX_EN必須要同時(shí)設(shè)定為1或時(shí),DMA1/2的映像模式必須一致。無(wú)法DMA1是固定式映像,DMA2是彈性式映像。

2) DMA彈性映射庫(kù)函數(shù)使用

以上的配置在BSP中的dma.hdma.c的庫(kù)文件中有提供相應(yīng)的庫(kù)函數(shù),使用者只需調(diào)用庫(kù)函數(shù)即可完成DMA彈性映射模式的配置。庫(kù)函數(shù)說(shuō)明如下:

表3. DMA彈性映射庫(kù)函數(shù)說(shuō)明

7fe6600c-cc45-11ec-bce3-dac502259ad0.png

此函數(shù)只需在配置好DMA常規(guī)功能后調(diào)用即可,如下:

圖1. DMA固定映射庫(kù)函數(shù)調(diào)用范例

8000c5e6-cc45-11ec-bce3-dac502259ad0.png

上圖中為設(shè)置TIMER1的更新中斷為DMA彈性映射請(qǐng)求范例。

例程說(shuō)明

DMA彈性映射功能在BSP中例程,路徑為:AT32F403A_407_Firmware_Library_V2.x.xprojectat_start_f403aexamplesdmadata_to_gpio_flexible(以403A路徑為例)

下面將對(duì)這兩個(gè)例程做一個(gè)使用說(shuō)明。

? data_to_gpio_flexible

例程data_to_jpio_flexible

本例程實(shí)現(xiàn)的功能為利用DMA將SRAM的數(shù)據(jù)傳輸?shù)紾PIO口的輸出寄存器中,從而達(dá)到控制GPIO口輸出的目的。同時(shí)配置TMER2產(chǎn)生overflow中斷并產(chǎn)生DMA請(qǐng)求,配置次DMA請(qǐng)求為彈性映射模式。TIMER2每產(chǎn)生一次DMA請(qǐng)求,DMA就從SRAM搬運(yùn)一筆數(shù)據(jù)到GPIO口。DMA相關(guān)的配置代碼:

8019eada-cc45-11ec-bce3-dac502259ad0.png

實(shí)驗(yàn)結(jié)果可采用邏輯分析儀抓取GPIO口數(shù)據(jù)查看。

關(guān)于雅特力

雅特力科技于2016年成立,是一家致力于推動(dòng)全球市場(chǎng)32位微控制器創(chuàng)新趨勢(shì)的芯片(MCU)設(shè)計(jì)公司,專注于ARM Cortex-M4/M0+的32位微控制器研發(fā)與創(chuàng)新,全系列采用55nm先進(jìn)工藝及ARM Cortex-M4高效能或M0+低功耗內(nèi)核,締造M4業(yè)界最高主頻288MHz運(yùn)算效能,并支持工業(yè)級(jí)別芯片工作溫度范圍(-40°~105°)。

雅特力目前已累積相當(dāng)多元的終端產(chǎn)品成功案例:如微型打印機(jī)、掃地機(jī)、光流無(wú)人機(jī)、熱成像儀、激光雷達(dá)、工業(yè)縫紉機(jī)、伺服驅(qū)控、電競(jìng)周邊市場(chǎng)、斷路器、ADAS、T-BOX、數(shù)字電源、電動(dòng)工具等終端設(shè)備應(yīng)用,廣泛地覆蓋5G物聯(lián)網(wǎng)、消費(fèi)、商務(wù)及工控等領(lǐng)域。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17920

    瀏覽量

    362903
  • 寄存器
    +關(guān)注

    關(guān)注

    31

    文章

    5430

    瀏覽量

    123987
  • dma
    dma
    +關(guān)注

    關(guān)注

    3

    文章

    576

    瀏覽量

    102895

原文標(biāo)題:AT32 MCU DMA通道的靈活配置

文章出處:【微信號(hào):mcugeek,微信公眾號(hào):MCU開(kāi)發(fā)加油站】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    一文詳解AXI DMA技術(shù)

    AXI直接數(shù)值存?。―rect Memory Access,DMA)IP核在AXI4內(nèi)存映射和AXI4流IP接口之間提供高帶寬的直接內(nèi)存訪問(wèn)。DMA可以選擇分散收集(Scatter Gather
    的頭像 發(fā)表于 04-03 09:32 ?909次閱讀
    一文詳解AXI <b class='flag-5'>DMA</b>技術(shù)

    函數(shù)HAL_I2C_Slave_Seq_Transmit_IT和HAL_I2C_Slave_Seq_Receive_IT實(shí)現(xiàn)代碼里有處理DMA請(qǐng)求,這是出于什么考慮?

    函數(shù)HAL_I2C_Slave_Seq_Transmit_IT和HAL_I2C_Slave_Seq_Receive_IT實(shí)現(xiàn)代碼里有處理DMA請(qǐng)求,這是出于什么考慮?求解答!
    發(fā)表于 03-14 09:01

    CKS32F107xx系列的DMA控制器簡(jiǎn)介

    (DMA1有7個(gè)通道,DMA2有5個(gè)通道),每個(gè)通道專門用來(lái)管理來(lái)自于一個(gè)或多個(gè)外設(shè)對(duì)存儲(chǔ)器訪問(wèn)的請(qǐng)求。還有一個(gè)仲裁器來(lái)協(xié)調(diào)各個(gè)DMA請(qǐng)求
    的頭像 發(fā)表于 02-18 17:24 ?864次閱讀
    CKS32F107xx系列的<b class='flag-5'>DMA</b>控制器簡(jiǎn)介

    這些云服務(wù)器彈性公網(wǎng)ip連接方式,你知道幾種?

    云服務(wù)器彈性公網(wǎng)ip主流連接方式包括:直接綁定云服務(wù)器、NAT網(wǎng)關(guān)映射、負(fù)載均衡器綁定、共享帶寬包、多IP綁定單實(shí)例。下面UU云小編將對(duì)這些云服務(wù)器彈性公網(wǎng)ip連接方式和使用場(chǎng)景進(jìn)行詳細(xì)解析。
    的頭像 發(fā)表于 02-13 09:43 ?423次閱讀

    ZYNQ基礎(chǔ)---AXI DMA使用

    前言 在ZYNQ中進(jìn)行PL-PS數(shù)據(jù)交互的時(shí)候,經(jīng)常會(huì)使用到DMA,其實(shí)在前面的ZYNQ學(xué)習(xí)當(dāng)中,也有學(xué)習(xí)過(guò)DMA的使用,那就是通過(guò)使用自定義的IP,完成HP接口向內(nèi)存寫入和讀取數(shù)據(jù)的方式。同樣
    的頭像 發(fā)表于 01-06 11:13 ?2162次閱讀
    ZYNQ基礎(chǔ)---AXI <b class='flag-5'>DMA</b>使用

    服務(wù)器如何處理 HTTP 請(qǐng)求

    服務(wù)器處理HTTP請(qǐng)求的過(guò)程是一個(gè)有序且復(fù)雜的流程,通常涉及多個(gè)步驟。以下是服務(wù)器處理HTTP請(qǐng)求的具體步驟: 監(jiān)聽(tīng)端口 :HTTP服務(wù)器在特定的端口(通常是80端口,除非另有指定)上監(jiān)聽(tīng)傳入的連接
    的頭像 發(fā)表于 12-30 09:37 ?644次閱讀

    如何調(diào)試 HTTP 請(qǐng)求和響應(yīng)

    調(diào)試HTTP請(qǐng)求和響應(yīng)是Web開(kāi)發(fā)和網(wǎng)絡(luò)編程中的一個(gè)重要技能。以下是一些步驟和工具,可以幫助你調(diào)試HTTP請(qǐng)求和響應(yīng): 1. 使用瀏覽器開(kāi)發(fā)者工具 大多數(shù)現(xiàn)代瀏覽器都內(nèi)置了開(kāi)發(fā)者工具,這些工具可以
    的頭像 發(fā)表于 12-30 09:28 ?1184次閱讀

    雅特力AT32F402/F405 DMA使用指南

    通道都支持外設(shè)的DMA請(qǐng)求映射到任意通道上。圖1.DMA控制器架構(gòu)DMAMUX簡(jiǎn)介對(duì)于如何將外設(shè)的DMA
    的頭像 發(fā)表于 11-20 01:03 ?936次閱讀
    雅特力AT32F402/F405 <b class='flag-5'>DMA</b>使用指南

    Python編程:處理網(wǎng)絡(luò)請(qǐng)求的代理技術(shù)

    在網(wǎng)絡(luò)編程中,代理技術(shù)扮演著至關(guān)重要的角色,尤其在處理網(wǎng)絡(luò)請(qǐng)求時(shí)。通過(guò)代理服務(wù)器,我們可以實(shí)現(xiàn)請(qǐng)求的轉(zhuǎn)發(fā)、緩存、負(fù)載均衡以及安全控制等功能。Python作為一種功能強(qiáng)大的編程語(yǔ)言,為提供了豐富的工具和庫(kù),以便敏捷地實(shí)現(xiàn)和處理網(wǎng)絡(luò)請(qǐng)求
    的頭像 發(fā)表于 11-12 07:23 ?514次閱讀

    DMA是什么?詳細(xì)介紹

    系統(tǒng)性能。 DMA(直接內(nèi)存訪問(wèn))概述 1. DMA的定義 直接內(nèi)存訪問(wèn)(DMA)是一種硬件特性,允許外圍設(shè)備直接讀寫系統(tǒng)內(nèi)存,而不需要CPU的直接控制。這種技術(shù)主要用于高速數(shù)據(jù)傳輸,如磁盤讀寫、網(wǎng)絡(luò)通信等。 2.
    的頭像 發(fā)表于 11-11 10:49 ?1.8w次閱讀

    請(qǐng)求訪問(wèn)音頻軟件

    電子發(fā)燒友網(wǎng)站提供《請(qǐng)求訪問(wèn)音頻軟件.pdf》資料免費(fèi)下載
    發(fā)表于 10-17 11:15 ?0次下載
    <b class='flag-5'>請(qǐng)求</b>訪問(wèn)音頻軟件

    用于ADC的DMA乒乓

    電子發(fā)燒友網(wǎng)站提供《用于ADC的DMA乒乓.pdf》資料免費(fèi)下載
    發(fā)表于 09-07 11:27 ?1次下載
    用于ADC的<b class='flag-5'>DMA</b>乒乓

    2k1000LA中關(guān)于IODMA請(qǐng)求的描述

    在2k1000的用戶手冊(cè)中,有對(duì)IO互連網(wǎng)絡(luò)的DMA請(qǐng)求路由方式進(jìn)行闡述,如圖。 其中提到窗口命中需要兩個(gè)條件,一是地址經(jīng)過(guò)掩碼后與base相等,二是DMA訪存屬性和mmap[5]共同決定是否命中
    發(fā)表于 08-15 21:52

    揭秘車載VCU項(xiàng)目之外掛界的“大哥”DMA

    引腳配置此實(shí)例選擇CAN0進(jìn)行配置。三、外設(shè)配置對(duì)于DMA,其采用的固定映射,對(duì)于通道0至通道15,其映射一部分外設(shè),通道16至通道31映射一部分外設(shè),所以對(duì)于外設(shè)要使用
    的頭像 發(fā)表于 07-30 08:11 ?1326次閱讀
    揭秘車載VCU項(xiàng)目之外掛界的“大哥”<b class='flag-5'>DMA</b>

    經(jīng)驗(yàn)分享 | DMA助力實(shí)時(shí)控制

    直接存儲(chǔ)器訪問(wèn)(DMA,DirectMemoryAccess)的優(yōu)點(diǎn)·提高系統(tǒng)效率:通過(guò)繞過(guò)CPU,DMA顯著減少了數(shù)據(jù)傳輸對(duì)CPU資源的占用,使得CPU能夠?qū)W⒂谄渌?jì)算任務(wù),提升了系統(tǒng)整體
    的頭像 發(fā)表于 07-18 08:18 ?1379次閱讀
    經(jīng)驗(yàn)分享 | <b class='flag-5'>DMA</b>助力實(shí)時(shí)控制