ELIOT1 HAL
Загрузка...
Поиск...
Не найдено
Файл hal_uart_dma.h

Дополнение драйвера UART с пересылкой данных через DMA. Подробнее...

#include "hal_dma.h"
#include "hal_uart.h"

См. исходные тексты.

Структуры данных

struct  _uart_dma_handle
 Дескриптор UART-DMA передачи Подробнее...
 

Макросы

#define HAL_UART_DMA_DRIVER_VERSION   (MAKE_VERSION(1, 0, 0))
 Версия драйвера
 

Определения типов

typedef struct _uart_dma_handle uart_dma_handle_t
 Дескриптор UART-DMA передачи
 
typedef void(* uart_dma_transfer_callback_t) (UART_Type *base, uart_dma_handle_t *handle, enum uart_status status, void *user_data)
 Функция обратного вызова
 

Функции

void UART_TransferCreateHandleDMA (UART_Type *base, uart_dma_handle_t *handle, uart_dma_transfer_callback_t callback, void *user_data, dma_handle_t *tx_dma_handle, dma_handle_t *rx_dma_handle)
 Функция для инициализации полей дескриптора UART-DMA.
 
enum uart_status UART_TransferSendDMA (UART_Type *base, uart_dma_handle_t *handle, struct uart_transfer *xfer)
 Функция осуществляющая передачу данных по UART, данные в буфер попадают через DMA канал
 
enum uart_status UART_TransferReceiveDMA (UART_Type *base, uart_dma_handle_t *handle, struct uart_transfer *xfer)
 Функция осуществляющая передачу данных по UART, данные в буфер попадают через DMA канал
 
void UART_TransferAbortSendDMA (UART_Type *base, uart_dma_handle_t *handle)
 Функция прерывающая передачу данных между UART(TX) и DMA.
 
void UART_TransferAbortReceiveDMA (UART_Type *base, uart_dma_handle_t *handle)
 Функция прерывающая передачу данных между UART(RX) и DMA.
 
static void UART_WaitWhileActive (UART_Type *base)
 Ожидание завершения передачи. Выход из функции будет осуществлен по окончании UART транзакций
 
static void UART_DMADescriptorInitTX (UART_Type *base, dma_descriptor_t *desc, uint32_t count, uint32_t data_size, uint32_t data_width, void *src_addr)
 Инициализация дескрипторов DMA для многоблочной передачи TX.
 
static void UART_DMADescriptorInitRX (UART_Type *base, dma_descriptor_t *desc, uint32_t count, uint32_t data_size, uint32_t data_width, void *dst_addr)
 Инициализация дескрипторов DMA для многоблочной передачи TX.
 

Подробное описание

Дополнение драйвера UART с пересылкой данных через DMA.