0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

一文讲解DMA外设到存储器的传输方式

CHANBAEK 来源:CSDN-借过风景 作者:CSDN-借过风景 2023-02-03 16:37 次阅读

CH32V103系列是以青稞V3A处理器为核心的32位通用MCU,该处理器是基于RISC-V开源指令集设计。 片上集成了时钟安全机制、多级电源管理、通用DMA控制器。 此系列具有1路USB2.0主机/设备接口、多通道12位ADC转换模块、多通道TouchKey、多组定时器、多路IIC/USART/SPI接口等丰富的外设资源。

本章将讲解DMA外设到存储器传输方式。 使用串口1作为外设,通过串口调试助手等向开发板发送数据,数据会被返回给开发板并通过串口调试助手显示。

1、DMA简介及相关函数介绍

关于DMA以及相关函数介绍在在第十三章以及第二十七章已讲解,在此不再介绍。 关于DMA具体介绍,可参考CH32V103应用手册。

2、硬件设计

本章教程所用资源均为CH32V103开发板内部资源,无需进行其他硬件连接,只需进行程序配置即可。

3、软件设计

本章主要进行外设到存储器的DMA数据传输方式,其相较于存储器到存储器的传输方式,程序中对DMA配置进行一些修改即可。 此外,本章还需用到串口1,在第三章基础上进行修改即可,即将串口2修改为串口1,以及对中断服务函数进行一些修改,具体如下:

关于串口1中断服务函数:

pYYBAGPcxwSAVFmoAAEFnZPVcxA315.png

dma.h文件

poYBAGPcxwSAVCp1AABCNAlE5dM396.png

dma.h文件主要进行宏定义及相关函数声明;

dma.c文件

pYYBAGPcxwSAHaEHAAEzh6ydt0Q846.png

4、下载验证

将编译好的程序下载到开发板并复位,然后通过串口调试助手向单片机发送数据,单片机接收数据并通过串口调试助手显示,具体如下:

pYYBAGPcxwSANNcYAABw4JPuj6Q392.png

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 处理器
    +关注

    关注

    68

    文章

    19159

    浏览量

    229102
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16984

    浏览量

    350286
  • 存储器
    +关注

    关注

    38

    文章

    7452

    浏览量

    163597
  • dma
    dma
    +关注

    关注

    3

    文章

    559

    浏览量

    100420
  • RISC-V
    +关注

    关注

    44

    文章

    2228

    浏览量

    46018
收藏 人收藏

    评论

    相关推荐

    直接存储器存取(DMA)简介及程序设计

    直接存储器存取(DMA)用来提供在外设存储器之间或者存储器存储器之间的高速数据
    的头像 发表于 06-01 09:01 8372次阅读
    直接<b class='flag-5'>存储器</b>存取(<b class='flag-5'>DMA</b>)简介及程序设计

    转:STM32CubeMX系列教程6:直接存储器访问 (DMA)

    外设到存储器存储器存储器。 2.通道选择:就是数据传输的是走那条道路3.仲裁:多个
    发表于 07-02 17:00

    STM32F4xx系列的DMA支持外设传输模式

    DMA 支持外设到存储器传输存储器外设传输
    发表于 08-20 06:31

    DMA传输实现高速数据移动过程

    DMA传输实现高速数据移动过程无需任何CPU 操作控制其支持以下三种传输方式外设到存储器
    发表于 01-21 11:32

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

    。数据传输支持从外设到存储器或者存储器存储器,这里的存储器可以是SRAM 或者是FLASH。
    发表于 01-26 06:35

    DMA直接存储器访问与配置流程简介

    DMA配置流程三、DMA应用简单实例1. 存储器存储器(M2M)2. 存储器到USART串口(M2P)
    发表于 01-26 07:54

    如何使用DMA外设到外设)将数据从ADC直接发送到FMAC?

    , &FMAC->WDATA, 1)但它不起作用。对我有用的是为 ADC 和 FMAC 设置 DMA 循环模式,然后使用 DMAMUX 请求同步它。虽然这消除了进程中的 CPU,但感觉不像是真正的外设到外设事务。如何使 D
    发表于 01-06 07:12

    CH32V103基础教程27-DMA存储器外设

    关于DMA,具有三种数据传输方式存储器存储器存储器
    发表于 04-20 16:35

    CH32V103基础教程28-DMA外设到存储器

    关于DMA,具有三种数据传输方式存储器存储器存储器
    发表于 04-20 16:37

    STM32学习笔记(7)——DMA直接存储器访问

    DMA配置流程三、DMA应用简单实例1. 存储器存储器(M2M)2. 存储器到USART串口(M2P)
    发表于 12-02 14:06 3次下载
    STM32学习笔记(7)——<b class='flag-5'>DMA</b>直接<b class='flag-5'>存储器</b>访问

    STM32通(9) DMA

    . DMA简介DMA(Direct Memory Access,直接存储器访问) 传输将数据从
    发表于 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 直接存储器访问

    传输数据的时候,CPU 可以干其他的事情,好像是多线程样。数据传输支持从外设到存储器或者存储器
    发表于 12-16 16:59 2次下载
    STM32F103 中级篇 22 <b class='flag-5'>DMA</b> 直接<b class='flag-5'>存储器</b>访问

    详解DMA

    DMA传输将数据从个地址空间复制到另个地址空间,提供在外设存储器之间或者
    的头像 发表于 10-12 09:45 1.2w次阅读

    讲解DMA存储器外设传输方式

    CH32V103系列是以青稞V3A处理为核心的32位通用MCU,该处理是基于RISC-V开源指令集设计。 片上集成了时钟安全机制、多级电源管理、通用DMA控制。 此系列具有1路U
    的头像 发表于 02-03 16:37 3507次阅读
    <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'>外设</b>的<b class='flag-5'>传输</b><b class='flag-5'>方式</b>

    存储器外设DMA动态访问技术

     存储器外设数据复制的个例子是大量数据应该通过通信外设(例如UART)传输的情况;如果没有DMA
    发表于 11-27 15:22 555次阅读