RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE); //使能DMA传输
DMA_DeInit(DMA_CHx); //将DMA的通道1寄存器重设为缺省值
DMA_Init(DMA_CHx, &DMA_InitStructure);
USART_DMACmd(USART1,USART_DMAReq_Tx,ENABLE);
DMA_Cmd(DMA_CHx, ENABLE);
DMA_GetFlagStatus(DMA1_FLAG_TC4)!=RESET//等待通道4传输完成
DMA_ClearFlag(DMA1_FLAG_TC4);//清除通道4传输完成标志
DMA_GetCurrDataCounter(DMA1_Channel4);//得到当前还剩余多少个数据
DMA_SetCurrDataCounter(DMA1_Channel4,DMA1_MEM_LEN);//设置DMA通道的DMA缓存的大小
|