68 uint8_t incr, uint8_t transfer_width, uint32_t size);
84 uint8_t incr, uint8_t transfer_width, uint32_t size);
106 uint32_t data_size,
void *dst_addr, uint8_t dst_addr_incr);
133 uint32_t count, uint32_t data_size, uint32_t data_width,
void *src_addr, uint8_t src_addr_incr)
137 .data_size = data_size,
143 .src_incr = src_addr_incr,
145 .src_data_width = data_width,
146 .dst_data_width = data_width,
147 .src_addr = src_addr,
148 .dst_addr = (
void *) &base->TX_DATA,
165 uint32_t count, uint32_t data_size, uint32_t data_width,
void *dst_addr)
169 .data_size = data_size,
177 .src_data_width = data_width,
178 .dst_data_width = data_width,
179 .src_addr = (
void *) &base->RX_DATA,
180 .dst_addr = dst_addr,
void DMA_InitMultiblockDescriptor(dma_descriptor_t *desc, dma_multiblock_config_t *config)
Функция, инициализирующая DMA дескрипторы многоблочной передачи.
uint32_t DMA_GetDescriptorCount(uint32_t size_bytes, uint8_t transfer_width)
Расчёт количества дескрипторов многоблочной передачи
@ DMA_NoChange
Definition hal_dma.h:165
@ DMA_Incr
Definition hal_dma.h:163
@ DMA_PeripheralToMemory_DMA
Definition hal_dma.h:213
@ DMA_MemoryToPeripheral_DMA
Definition hal_dma.h:212
@ DMA_BurstSize1
Definition hal_dma.h:149
@ DMA_BurstSize32
Definition hal_dma.h:153
@ DMA_Transfer8BitWidth
Definition hal_dma.h:137
void QSPI_DMAReadDescriptorInitRX(QSPI_Type *base, dma_descriptor_t *desc, uint32_t data_size, void *dst_addr, uint8_t dst_addr_incr)
Инициализация группы дескрипторов DMA (многоблочная передача) для приема данных в RX буфер.
uint32_t QSPI_GetReadDMADescriptorsCount(uint32_t size_in_bytes)
Расчет количества дескрипторов многоблочной передачи, нужных для считывания данных из NOR Flash памят...
static void QSPI_DMADescriptorInitRX(QSPI_Type *base, dma_descriptor_t *desc, uint32_t count, uint32_t data_size, uint32_t data_width, void *dst_addr)
Инициализация группы дескрипторов DMA (многоблочная передача) для приема данных в RX буфер.
Definition hal_qspi_dma.h:164
qspi_dma_status_t
Статусы выполнения функций
Definition hal_qspi_dma.h:37
static void QSPI_DMADescriptorInitTX(QSPI_Type *base, dma_descriptor_t *desc, uint32_t count, uint32_t data_size, uint32_t data_width, void *src_addr, uint8_t src_addr_incr)
Инициализация группы дескрипторов DMA (многоблочная передача) для отправки данных в TX буфер.
Definition hal_qspi_dma.h:132
void QSPI_TransferCreateHandleDMA(QSPI_Type *base, qspi_dma_handle_t *handle, dma_handle_t *tx_handle, dma_handle_t *rx_handle)
Инициализация контекста передачи QSPI-DMA.
qspi_dma_status_t QSPI_ReadDataDMA(qspi_dma_handle_t *handle, void *addr, uint8_t incr, uint8_t transfer_width, uint32_t size)
Чтение данных из QSPI RX.
static uint32_t QSPI_GetDummyDMADescriptorsCount(uint32_t size_in_bytes)
Расчет количества дескрипторов многоблочной передачи, нужных для считывания данных из NOR Flash памят...
Definition hal_qspi_dma.h:117
qspi_dma_status_t QSPI_WriteDataDMA(qspi_dma_handle_t *handle, void *addr, uint8_t incr, uint8_t transfer_width, uint32_t size)
Запись данных в QSPI TX.
@ QSPI_DMA_Status_InvalidArgument
Definition hal_qspi_dma.h:40
@ QSPI_DMA_Status_Fail
Definition hal_qspi_dma.h:39
@ QSPI_DMA_Status_Success
Definition hal_qspi_dma.h:38
Интерфейс драйвера прямого доступа к памяти
Интерфейс драйвера модуля QSPI.
Описатель следующего блока DMA (LLI)
Definition hal_dma.h:222
Управляющая структура передачи
Definition hal_dma.h:296
Конфигурация многоблочной передачи
Definition hal_dma.h:306
uint32_t count
Definition hal_dma.h:307
Дескриптор QSPI-DMA передачи
Definition hal_qspi_dma.h:25