第6章DMA基础技术_第1页
第6章DMA基础技术_第2页
第6章DMA基础技术_第3页
第6章DMA基础技术_第4页
第6章DMA基础技术_第5页
已阅读5页,还剩8页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

DMA简介DMA(DirectMemoryAccess)直接存储器存取DMA可以提供外设和存储器或者存储器和存储器之间的高速数据传输,无须CPU干预,节省了CPU的资源12个独立可配置的通道:DMA1(7个通道),DMA2(5个通道)每个通道都支持软件触发和特定的硬件触发STM32F103C8T6

DMA资源:DMA1(7个通道)DMA框图DMA基本结构外设寄存器SRAMFlash外设起始地址数据宽度地址是否自增存储器起始地址数据宽度地址是否自增方向硬件触发软件触发M2M传输计数器自动重装器开关控制01存储器映像类型起始地址存储器用途ROM0x08000000程序存储器Flash存储C语言编译后的程序代码0x1FFFF000系统存储器存储BootLoader,用于串口下载0x1FFFF800选项字节存储一些独立于程序代码的配置参数RAM0x20000000运行内存SRAM存储运行过程中的临时变量0x40000000片上外设寄存器存储各个外设的配置参数0xE0000000内核外设寄存器存储内核各个外设的配置参数编程时,寄存器地址需要查手册吗?DMA请求数据宽度与对齐DMA传输属性一个DMA流配置一个DMA请求后,就构成一个单方向的DMA数据传输链路,DMA传输属性就由DMA流的参数配置决定DMA通道DMA流的优先级别源和目标的数据宽度传输数据量大小源和目标地址指针是否自增加DMA工作模式:Normal或CircularDMA传输方向是否使用FIFODMA的HAL库函数分组函数名功能描述初始化HAL_DMA_Init()DMA传输初始化配置轮询方式HAL_DMA_Start()启动DMA传输,不开启DMA中断HAL_DMA_PollForTransfer()轮询方式等待DMA传输结束,可设置一个超时等待时间HAL_DMA_Abort()终止以轮询模式启动的DMA传输中断方式HAL_DMA_Start_IT()启动DMA传输,开启DMA的中断HAL_DMA_Abort_IT()终止以中断方式启动的DMA传输HAL_DMA_GetState()获取DMA当前状态HAL_DMA_IRQHandler()DMA中断ISR函数里调用的通用处理函数双缓存区模式HAL_DMAEx_MultiBufferStart()启动双缓存区DMA传输,不开启DMA中断HAL_DMAEx_MultiBufferStart_IT()启动双缓存区DMA传输,开启DMA中断HAL_DMAEx_ChangeMemory()传输过程中改变缓存区地址DMA的中断DMA流中断事件DMA流中断事件类型DMA_HandleTypeDef结构体中的函数指针DMA_IT_TC传输完成中断XferCpltCallbackDMA_IT_HT传输半完成中断XferHalfCpltCallbackDMA_IT_TE传输错误中断XferErrorCallbackDMA_IT_FEFIFO错误中断无DMA_IT_DME直接模式错误中断无DMA示例1:固定长度数据接收串口+DMA固定长度数据接收HAL_UART_Receive_DMA()回调函数HAL_UART_RxCpltCallback()初始化顺序不能错,先DMA通道后外设Normal模式,需要每次重新接收DMA示例2:不定长度数据接收串口+DMA不定长度数据接收HAL_UARTEx_ReceiveToIdle_DMA()每次都要关闭掉DMA传输过半中断__HAL_DMA_DISABLE_IT()回调函数HAL_UARTEx_RxEventCallback()程序有bug自定义数据包格式,使得上位机可以通过串口调试助手发送控制指令给下位机,下位机解析数据包,控制LED灯的亮灭。串口数据包的格式可以按照16进制进行定义,0x01、0x02分别代表LED1和LED2两盏小灯,0xFF代表亮,0x00代表灭。比如,发送0x010x00代表LED1熄灭。也可以同时对多个LED灯进行控制,比如,发送0x010x000x020xFF代表控制LED1熄灭,LED2点亮。注意:

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论