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

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

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

一文講解DMA外設(shè)到存儲器的傳輸方式

CHANBAEK ? 來源:CSDN-借過風(fēng)景 ? 作者:CSDN-借過風(fēng)景 ? 2023-02-03 16:37 ? 次閱讀

CH32V103系列是以青稞V3A處理器為核心的32位通用MCU,該處理器是基于RISC-V開源指令集設(shè)計(jì)。 片上集成了時(shí)鐘安全機(jī)制、多級電源管理、通用DMA控制器。 此系列具有1路USB2.0主機(jī)/設(shè)備接口、多通道12位ADC轉(zhuǎn)換模塊、多通道TouchKey、多組定時(shí)器、多路IIC/USART/SPI接口等豐富的外設(shè)資源。

本章將講解DMA外設(shè)到存儲器傳輸方式。 使用串口1作為外設(shè),通過串口調(diào)試助手等向開發(fā)板發(fā)送數(shù)據(jù),數(shù)據(jù)會被返回給開發(fā)板并通過串口調(diào)試助手顯示。

1、DMA簡介及相關(guān)函數(shù)介紹

關(guān)于DMA以及相關(guān)函數(shù)介紹在在第十三章以及第二十七章已講解,在此不再介紹。 關(guān)于DMA具體介紹,可參考CH32V103應(yīng)用手冊。

2、硬件設(shè)計(jì)

本章教程所用資源均為CH32V103開發(fā)板內(nèi)部資源,無需進(jìn)行其他硬件連接,只需進(jìn)行程序配置即可。

3、軟件設(shè)計(jì)

本章主要進(jìn)行外設(shè)到存儲器的DMA數(shù)據(jù)傳輸方式,其相較于存儲器到存儲器的傳輸方式,程序中對DMA配置進(jìn)行一些修改即可。 此外,本章還需用到串口1,在第三章基礎(chǔ)上進(jìn)行修改即可,即將串口2修改為串口1,以及對中斷服務(wù)函數(shù)進(jìn)行一些修改,具體如下:

關(guān)于串口1中斷服務(wù)函數(shù):

pYYBAGPcxwSAVFmoAAEFnZPVcxA315.png

dma.h文件

poYBAGPcxwSAVCp1AABCNAlE5dM396.png

dma.h文件主要進(jìn)行宏定義及相關(guān)函數(shù)聲明;

dma.c文件

pYYBAGPcxwSAHaEHAAEzh6ydt0Q846.png

4、下載驗(yàn)證

將編譯好的程序下載到開發(fā)板并復(fù)位,然后通過串口調(diào)試助手向單片機(jī)發(fā)送數(shù)據(jù),單片機(jī)接收數(shù)據(jù)并通過串口調(diào)試助手顯示,具體如下:

pYYBAGPcxwSANNcYAABw4JPuj6Q392.png

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

    關(guān)注

    68

    文章

    19286

    瀏覽量

    229873
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17149

    瀏覽量

    351226
  • 存儲器
    +關(guān)注

    關(guān)注

    38

    文章

    7492

    瀏覽量

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

    關(guān)注

    3

    文章

    561

    瀏覽量

    100593
  • RISC-V
    +關(guān)注

    關(guān)注

    45

    文章

    2277

    瀏覽量

    46163
收藏 人收藏

    評論

    相關(guān)推薦

    直接存儲器存取(DMA)簡介及程序設(shè)計(jì)

    直接存儲器存取(DMA)用來提供在外設(shè)存儲器之間或者存儲器存儲器之間的高速數(shù)據(jù)
    的頭像 發(fā)表于 06-01 09:01 ?8479次閱讀
    直接<b class='flag-5'>存儲器</b>存取(<b class='flag-5'>DMA</b>)簡介及程序設(shè)計(jì)

    轉(zhuǎn):STM32CubeMX系列教程6:直接存儲器訪問 (DMA)

    、外設(shè)到存儲器存儲器存儲器。 2.通道選擇:就是數(shù)據(jù)傳輸的是走那條道路3.仲裁:多個(gè)
    發(fā)表于 07-02 17:00

    STM32F4xx系列的DMA支持外設(shè)傳輸模式

    DMA 支持外設(shè)到存儲器傳輸、存儲器外設(shè)傳輸
    發(fā)表于 08-20 06:31

    DMA傳輸實(shí)現(xiàn)高速數(shù)據(jù)移動過程

    DMA傳輸實(shí)現(xiàn)高速數(shù)據(jù)移動過程無需任何CPU 操作控制其支持以下三種傳輸方式外設(shè)到存儲器
    發(fā)表于 01-21 11:32

    DMA直接存儲器存取的主要功能是什么

    。數(shù)據(jù)傳輸支持從外設(shè)到存儲器或者存儲器存儲器,這里的存儲器可以是SRAM 或者是FLASH。
    發(fā)表于 01-26 06:35

    DMA直接存儲器訪問與配置流程簡介

    DMA配置流程三、DMA應(yīng)用簡單實(shí)例1. 存儲器存儲器(M2M)2. 存儲器到USART串口(M2P)
    發(fā)表于 01-26 07:54

    如何使用DMA外設(shè)到外設(shè))將數(shù)據(jù)從ADC直接發(fā)送到FMAC?

    , &FMAC->WDATA, 1)但它不起作用。對我有用的是為 ADC 和 FMAC 設(shè)置 DMA 循環(huán)模式,然后使用 DMAMUX 請求同步它。雖然這消除了進(jìn)程中的 CPU,但感覺不像是真正的外設(shè)到外設(shè)事務(wù)。如何使 D
    發(fā)表于 01-06 07:12

    CH32V103基礎(chǔ)教程27-DMA存儲器外設(shè)

    關(guān)于DMA,具有三種數(shù)據(jù)傳輸方式存儲器存儲器、存儲器
    發(fā)表于 04-20 16:35

    CH32V103基礎(chǔ)教程28-DMA外設(shè)到存儲器

    關(guān)于DMA,具有三種數(shù)據(jù)傳輸方式存儲器存儲器、存儲器
    發(fā)表于 04-20 16:37

    STM32學(xué)習(xí)筆記(7)——DMA直接存儲器訪問

    DMA配置流程三、DMA應(yīng)用簡單實(shí)例1. 存儲器存儲器(M2M)2. 存儲器到USART串口(M2P)
    發(fā)表于 12-02 14:06 ?3次下載
    STM32學(xué)習(xí)筆記(7)——<b class='flag-5'>DMA</b>直接<b class='flag-5'>存儲器</b>訪問

    STM32通(9) DMA

    . DMA簡介DMA(Direct Memory Access,直接存儲器訪問) 傳輸將數(shù)據(jù)從
    發(fā)表于 12-03 09:21 ?17次下載
    STM32<b class='flag-5'>一</b><b class='flag-5'>文</b>通(9) <b class='flag-5'>DMA</b>

    STM32F103 中級篇 22 DMA 直接存儲器訪問

    傳輸數(shù)據(jù)的時(shí)候,CPU 可以干其他的事情,好像是多線程樣。數(shù)據(jù)傳輸支持從外設(shè)到存儲器或者存儲器
    發(fā)表于 12-16 16:59 ?2次下載
    STM32F103 中級篇 22 <b class='flag-5'>DMA</b> 直接<b class='flag-5'>存儲器</b>訪問

    詳解DMA

    DMA傳輸將數(shù)據(jù)從個(gè)地址空間復(fù)制到另個(gè)地址空間,提供在外設(shè)存儲器之間或者
    的頭像 發(fā)表于 10-12 09:45 ?1.3w次閱讀

    講解DMA存儲器外設(shè)傳輸方式

    CH32V103系列是以青稞V3A處理為核心的32位通用MCU,該處理是基于RISC-V開源指令集設(shè)計(jì)。 片上集成了時(shí)鐘安全機(jī)制、多級電源管理、通用DMA控制。 此系列具有1路U
    的頭像 發(fā)表于 02-03 16:37 ?3665次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>講解</b><b class='flag-5'>DMA</b><b class='flag-5'>存儲器</b>到<b class='flag-5'>外設(shè)</b>的<b class='flag-5'>傳輸</b><b class='flag-5'>方式</b>

    存儲器外設(shè)DMA動態(tài)訪問技術(shù)

     存儲器外設(shè)數(shù)據(jù)復(fù)制的個(gè)例子是大量數(shù)據(jù)應(yīng)該通過通信外設(shè)(例如UART)傳輸的情況;如果沒有DMA
    發(fā)表于 11-27 15:22 ?635次閱讀