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

    文章

    18273

    浏览量

    222119
  • mcu
    mcu
    +关注

    关注

    146

    文章

    16016

    浏览量

    343575
  • 存储器
    +关注

    关注

    38

    文章

    7148

    浏览量

    161978
  • dma
    dma
    +关注

    关注

    3

    文章

    535

    浏览量

    99018
  • RISC-V
    +关注

    关注

    41

    文章

    1899

    浏览量

    45044
收藏 人收藏

    评论

    相关推荐

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

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

    【零基础学习STM32】第十一讲:DMA实验——存储器存储器传输

    DMA_MemoryBurst; //存储器突发单次传输 uint32_t DMA_PeripheralBurst;//外设突发单次
    发表于 04-03 15:14

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

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

    介绍几个是常用的DMA传输路径

    STM32 DMA简述**DMA (Direct Memory Access) ** 直接内存存储器,在做数据传输时能够大大减轻CPU的负担。DMA
    发表于 01-11 07:36

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

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

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

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

    STM32的DMA简介

    的事情,好像是多线程样。数据传输支持从外设到存储器或者存储器存储器,这里的
    发表于 01-26 08:27

    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基础教程13-DMA存储器存储器

    本章教程讲解DMA存储器存储器模式。存储器存储器模式可以实现数据在两个内存的快速拷贝。程序中
    发表于 04-17 15:28

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

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

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

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

    STM32一文通(9) DMA

    一. DMA简介DMA(Direct Memory Access,直接存储器访问) 传输将数据从一个地址空间复制到另外一个地址空间。而且不占用CPU数据
    发表于 12-03 09:21 17次下载
    STM32一文通(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>访问

    雅特力AT32F423 DMA使用指南

    DMA简介DMA控制器的作用不仅在增强系统性能并减少处理器的中断生成,而且还针对32位MCU应用程序专门优化设计。DMA控制器为存储器存储器
    的头像 发表于 02-22 08:13 208次阅读
    雅特力AT32F423 <b class='flag-5'>DMA</b>使用指南