一、DMA请求映像
由此我们知道如果需要使用串口1的发送功能需要用到的是DMA1_Channel4
使用串口1的接收功能需要用到的是DMA1_Channel5
二、怎样配置软件来使用DMA 把数据传到串口发送?
(1)配置dma
/**************************************************************************
*函数名称: Dma_Init
*功能描述: 利用DMA 把内存的数据传输到串口发送达到高速传输的目的
*
*输入参数:无
*返回值 :无
*其他说明:无
*当前版本:v1.0
*作者 :尹宣
*完成时间:2013年12月1日
*修改日期 版本号 修改人 修改内容
*-----------------------------------------------------------------
*
******************************************************************/
#define UART_RX_LEN 5
u8 Uart_Send_Buffer[UART_RX_LEN] = {0x12,0x34,0x56,0x78,0x90};
u8 i=0;
u8 Flag_Uart_Send=0;
void Dma_Init(void)
{
DMA_InitTypeDef DMA_InitStructure;
RCC_AHBPeriphClockCmd(RCC_AHBPeriph_DMA1, ENABLE);
/* DMA channel6configuration */
DMA_DeInit(DMA1_Channel1);
DMA_InitStructure.DMA_PeripheralBaseAddr = (u32)(&USART1->DR); //外设地址
DMA_InitStructure.DMA_MemoryBaseAddr =(u32)Uart_Send_Buffer;
DMA_InitStructure.DMA_DIR =DMA_DIR_PeripheralDST; //外设作为目的地址 //DMA_DI