k64 datasheet学习笔记21--Direct Memory Access Multiplexer (DMAMUX)
0.前言
本章主要介绍DMA MUX的相关内容
1.简介
1.1 概述
用来路由DMA源到16路DMA通道:
1.2 特性
1.52个外设slot和10个常开slot可以路由到16路DMA通道
2.16个独立的可选的DMA通道路由,其中前4个通道提供周期触发功能
3.每个DMA通道可以路由指定给52个slot和10个常开slot的任意一个
1.3 操作模式
1.disable模式
DMA通道被禁用
2.normal模式
一个DMA源被路由到一个特定的DMA通道
3.周期触发模式
一个DMA源只能请求一个DMA传输,周期性配置在PIT寄存器中配置,这种模式只适用于通道0~3
2 外部信号描述
无外部信号
3 内存映射/寄存器定义
通道配置寄存器(DMAMUX_CHCFGn):每个DMA通道可以独立的使能禁用,在改变触发或源设置前必须通过CHCFGn[ENBL]来禁用相关通道
4 功能描述
DMAMUX通道可以分为两类:
实现通常的路由功能+周期触发;
只实现通常路由功能
4.1 带有周期性触发功能的DMA通道
通过配置PIT来配置周期性触发。
只有触发事件到来外设的DMA请求才能gate到DMA
如果外设无DMA请求,triggering将被忽略
triggering可以用于任何支持DMA传输的外设,大部分包含两种类型:
(1) 通过总线周期性轮询外部设备
如SPI可实现每隔5us自动将内存的数据通过DMA搬移到SPI中,也可以每隔5us将SPI接收到的数据通过DMA搬移到内存中
(2)使用GPIO来驱动波形或采集波形
4.2 不带有触发功能的DMA通道
4.3 总是使能的DMA源
除了外设DMA源,还有10路常开的DMA源,主要用于如下情形:
- DMA传输GPIO信息
- DMA传输从内存到内存
- DMA传输从内存到外部总线
- 允许软件激活的DMA传输
可以通过软件激活或DMAMUX来开始一个新的传输:
- 在单个的minor loop传输所有数据;
- 使用明确的软件激活
- 使用常开的DMA源,由MUX来完成再激活
5 初始化/应用信息
提供DMA初始化的信息
5.1 reset
reset后所有通道被禁用,使用前需要使能
5.2 使能配置源
为了使能带有周期触发的源,需要作如下操作:
1.决定DMA源采用哪个DMA通道(前4个才有周期触发功能);
2.通过清空CHCFG[ENBL] and CHCFG[TRIG] 禁用对应的DMA通道和DMA通道触发功能;
3.确保DMA通道在DMA相关寄存器中正确配置,此时DMA通道可以使能;
4.配置对应的定时器
5.选择与DMA通道关联的源,并使能DMA通道和DMA通道触发
转载于:https://www.cnblogs.com/smartjourneys/p/8489103.html
k64 datasheet学习笔记21--Direct Memory Access Multiplexer (DMAMUX)相关推荐
- k64 datasheet学习笔记35---Analog-to-Digital Converter (ADC)
0.前言 本文主要介绍K64的ADC部分的特性,内部架构,信号描述及操作接口等 1.简介 1.1.ADC模块特性 线性逐次逼近算法,达16bit分辨率 达到4对差分和24个单端模拟量输入 输出模式 差 ...
- k64 datasheet学习笔记12---System Integration Module (SIM)
1.前言 Features of the SIM include: System clocking configuration (1)System clock divide values (2) Ar ...
- k64 datasheet学习笔记25--Multipurpose Clock Generator (MCG)
0.前言 MCG模块为MCU提供了几种可选时钟源.模块包含一个FLL和一个PLL.FLL使用内部或外部参考时钟是可控的,PLL受外部参考时钟控制 模块可以选择FLL或PLL输出时钟,或内/外部参考时钟 ...
- k64 datasheet学习笔记26--Oscillator (OSC)
1.前言 OSC模块是一个晶体振荡器. 该模块使用晶体或谐振器与外部连接,为MCU产生一个参考时钟. 主要为下图红色框住的部分 2.特性和模式 Supports 32 kHz crystals (Lo ...
- k64 datasheet学习笔记3---Chip Configuration之System modules
1.前言 本文主要介绍芯片配置的系统模块的内容 2.SIM配置 TODO 3.SMC配置 TODO 4.PMC配置 TODO 5.LOW-LEAKAGE WAKEUP单元配置 TODO 6.MCM配置 ...
- Xilinx AXI Central Direct Memory Access (CDMA)手册笔记
官方手册地址:https://china.xilinx.com/support/documentation/ip_documentation/axi_cdma/v4_1/pg034-axi-cdma. ...
- ARMV8 datasheet学习笔记3:AArch64应用级体系结构
1.前言 本文主要从应用的角度介绍ARMV8的编程模型和存储模型 2. AArch64应用级编程模型 从应用的角度看到的ARM处理器元素: 可见的元素(寄存器/指令) 说明 可见的寄存器 R0-R30 ...
- Remote Direct Memory Access (RDMA)
前言 本博文主要是简单介绍RDMA的概念和与它相关的技术.实现RDMA需要许多其他技术的支持,包括硬件和软件.目前RDMA有多种实现方式,比如RoCE1.INFINIBAND2,不同的实现方式所考虑的 ...
- ARMV8 datasheet学习笔记5:异常模型
1.前言 2.异常类型描述 见 ARMV8 datasheet学习笔记4:AArch64系统级体系结构之编程模型(1)-EL/ET/ST 一文 3. 异常处理路由对比 AArch32.AArch64架 ...
最新文章
- 在使用postman中操作api接口测试403解决方法
- 浅谈Sharepoint权限
- 【LXC】 在 LXC 中使用 snap 包管理工具
- array_merge
- 链表表示八进制加法c语言,用单链表实现八进制加法操作,恳请大家看看Add( )函数的问题...
- 微软 rms服务器端,微软RMS服务器部署之准备篇
- 检测到磁盘可能为uefi引导_在本地硬盘安装WinPE系统,实现UEFI引导,摆脱U盘
- ionic ios查看大图报错 the file to show is not valid image,or could not be loaded
- 解决Pycharm里远程调试缺乏DISPLAY环境变量的TkAgg报错
- CentOS下配置redis允许远程连接
- java使用bks双向认证_客户端与服务器SSL双向认证(客户端:Android
- information_schema系列五(表,触发器,视图,存储过程和函数)
- python 打印皮卡丘_来简单聊聊python的装饰器呀~
- JAVA:eclipse文本中文支持
- 7-7Hadoop学习之常用Linux命令与集群配置
- 中国省份数据字典表---自用
- Linux下mysql数据恢复
- python身份证区域分割_python 身份证归属地解析
- 主动降噪ANC(Active Noise Control)
- bzoj1754[Usaco2005 qua]Bull Math*
热门文章
- xmlspy 不能载入具有目标命名空间_石墨烯最新“表亲”铅烯问世,有望成为具有实用价值的拓扑绝缘体...
- 基于ssm校园招聘管理系统获取(java毕业设计)
- STC89C52概念 ----- 自学笔记
- 仿生蛇形机器人02、Dynamixel MX-64AR舵机出现软件故障、无法调节角度
- 最新3D人脸技术综述
- python 科学计数法 转 字符串表述
- MSBCODE9.OCX
- c语言程序float的意思,c语言中的float表示什么意思?
- CATIA二次开发——自动导出BOM表
- 怎样把c语言软件卸载干净,系统软件怎样操作才能彻底卸载删除干净软件程序...