代码配置
- static VOID UART1_DmaRxConfig(IN U8 *buf, IN U32 len)
- {
- DMA_InitPara DMA_InitStructure;
-
- DMA_Enable(DMA1_CHANNEL5, DISABLE);
-
- /* USART1 RX DMA1 Channel (triggered by USART1 Rx event) Config */
- DMA_DeInit(DMA1_CHANNEL5);
- DMA_InitStructure.DMA_PeripheralBaseAddr = (U32) &(USART1->DR);
- DMA_InitStructure.DMA_MemoryBaseAddr = (U32)buf;
- DMA_InitStructure.DMA_DIR = DMA_DIR_PERIPHERALSRC;
- DMA_InitStructure.DMA_BufferSize = len;
- DMA_InitStructure.DMA_PeripheralInc = DMA_PERIPHERALINC_DISABLE;
- DMA_InitStructure.DMA_MemoryInc = DMA_MEMORYINC_ENABLE;
- DMA_InitStructure.DMA_PeripheralDataSize = DMA_PERIPHERALDATASIZE_BYTE;
- DMA_InitStructure.DMA_MemoryDataSize = DMA_MEMORYDATASIZE_BYTE;
- DMA_InitStructure.DMA_Mode = DMA_MODE_NORMAL;
- DMA_InitStructure.DMA_Priority = DMA_PRIORITY_VERYHIGH;
- DMA_InitStructure.DMA_MTOM = DMA_MEMTOMEM_DISABLE;
- DMA_Init(DMA1_CHANNEL5, &DMA_InitStructure);
- DMA_Enable(DMA1_CHANNEL5, ENABLE);
- }
|