微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > stm32中DMA基本使用

stm32中DMA基本使用

时间:11-19 来源:互联网 点击:

于上例而言,就是DMA_PeripheralDataSize_Byte个字节的传送完成后,就停止传送。

(2)DMA_Mode_Circular

循环模式,当传输完一次后,重新接着传送,永不停息。

2、外设的DMA方式设置

将串口1设置成DMA模式:

USART_DMACmd(USART1, USART_DMAReq_Tx, ENABLE);

3、待传输数据的定义和初始化

#define SENDBUFF_SIZE 10240
vu8 SendBuff[SENDBUFF_SIZE];

for(i=0;i{
SendBuff[i] = i%10+0;
}
4、开始DMA传输(使能对应的DMA通道)
DMA_Cmd(DMA1_Channel4, ENABLE);

5、DMA传输的完成

while(DMA_GetFlagStatus(DMA1_FLAG_TC4) == RESET)
{
LED_1_REV; //LED翻转
Delay(); //浪费时间
}

当传输完成后,就会跳出上面的死循环。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top