/** ****************************************************************************** * File Name : dma.c * Description : This file provides code for the configuration * of all the requested memory to memory DMA transfers. ****************************************************************************** * @attention * *

© Copyright (c) 2021 STMicroelectronics. * All rights reserved.

* * This software component is licensed by ST under Ultimate Liberty license * SLA0044, the "License"; You may not use this file except in compliance with * the License. You may obtain a copy of the License at: * www.st.com/SLA0044 * ****************************************************************************** */ /* Includes ------------------------------------------------------------------*/ #include "dma.h" /* USER CODE BEGIN 0 */ /* USER CODE END 0 */ /*----------------------------------------------------------------------------*/ /* Configure DMA */ /*----------------------------------------------------------------------------*/ /* USER CODE BEGIN 1 */ /* USER CODE END 1 */ DMA_HandleTypeDef hdma_memtomem_dma2_stream0; DMA_HandleTypeDef hdma_memtomem_dma2_stream1; /** * Enable DMA controller clock * Configure DMA for memory to memory transfers * hdma_memtomem_dma2_stream0 * hdma_memtomem_dma2_stream1 */ void MX_DMA_Init(void) { /* DMA controller clock enable */ __HAL_RCC_DMA2_CLK_ENABLE(); /* Configure DMA request hdma_memtomem_dma2_stream0 on DMA2_Stream0 */ hdma_memtomem_dma2_stream0.Instance = DMA2_Stream0; hdma_memtomem_dma2_stream0.Init.Channel = DMA_CHANNEL_0; hdma_memtomem_dma2_stream0.Init.Direction = DMA_MEMORY_TO_MEMORY; hdma_memtomem_dma2_stream0.Init.PeriphInc = DMA_PINC_ENABLE; hdma_memtomem_dma2_stream0.Init.MemInc = DMA_MINC_ENABLE; hdma_memtomem_dma2_stream0.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; hdma_memtomem_dma2_stream0.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; hdma_memtomem_dma2_stream0.Init.Mode = DMA_NORMAL; hdma_memtomem_dma2_stream0.Init.Priority = DMA_PRIORITY_LOW; hdma_memtomem_dma2_stream0.Init.FIFOMode = DMA_FIFOMODE_DISABLE; if (HAL_DMA_Init(&hdma_memtomem_dma2_stream0) != HAL_OK) { Error_Handler(); } /* Configure DMA request hdma_memtomem_dma2_stream1 on DMA2_Stream1 */ hdma_memtomem_dma2_stream1.Instance = DMA2_Stream1; hdma_memtomem_dma2_stream1.Init.Channel = DMA_CHANNEL_0; hdma_memtomem_dma2_stream1.Init.Direction = DMA_MEMORY_TO_MEMORY; hdma_memtomem_dma2_stream1.Init.PeriphInc = DMA_PINC_ENABLE; hdma_memtomem_dma2_stream1.Init.MemInc = DMA_MINC_ENABLE; hdma_memtomem_dma2_stream1.Init.PeriphDataAlignment = DMA_PDATAALIGN_BYTE; hdma_memtomem_dma2_stream1.Init.MemDataAlignment = DMA_MDATAALIGN_BYTE; hdma_memtomem_dma2_stream1.Init.Mode = DMA_NORMAL; hdma_memtomem_dma2_stream1.Init.Priority = DMA_PRIORITY_LOW; hdma_memtomem_dma2_stream1.Init.FIFOMode = DMA_FIFOMODE_DISABLE; if (HAL_DMA_Init(&hdma_memtomem_dma2_stream1) != HAL_OK) { Error_Handler(); } /* DMA interrupt init */ /* DMA2_Stream3_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA2_Stream3_IRQn, 8, 0); HAL_NVIC_EnableIRQ(DMA2_Stream3_IRQn); /* DMA2_Stream6_IRQn interrupt configuration */ HAL_NVIC_SetPriority(DMA2_Stream6_IRQn, 8, 0); HAL_NVIC_EnableIRQ(DMA2_Stream6_IRQn); } /* USER CODE BEGIN 2 */ /* USER CODE END 2 */ /** * @} */ /** * @} */ /************************ (C) COPYRIGHT STMicroelectronics *****END OF FILE****/