Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //
- // Драйвер UART
- //
- #include <stdint.h>
- #include <stdbool.h>
- #ifndef _UART_H
- #define _UART_H
- typedef enum
- {
- UART1
- } TUart;
- typedef enum
- {
- UART_EVENT_ONBREAK,
- UART_EVENT_ONRECEIVE,
- UART_EVENT_ONTRANSMITTED,
- UART_EVENT_ONTRANSMITCOMPLETED
- } TUartEvent;
- typedef enum
- {
- STOP_BITS_0_5,
- STOP_BITS_1,
- STOP_BITS_1_5,
- STOP_BITS_2
- } TUartStopBits;
- // Инициализация модуля USART
- void uart_Init(TUart Uart, uint32_t BaudRate);
- // Установить номер порта (для обратной связи)
- void uart_SetPortIndex(TUart Uart, uint32_t Index);
- // Режим GPIO при передаче (заданное состояние линии TX)
- void uart_GPIOMode(TUart Uart, bool Value);
- // Режим передачи данных
- void uart_UARTMode(TUart Uart);
- // Отправка байта
- void uart_SendByte(TUart Uart, uint8_t Data);
- // Отправка буфера
- void uart_Send(TUart Uart, uint8_t * Data, int32_t BytesToSend, int32_t * BytesSended);
- // Установить скорость передачи
- void uart_SetBaudrate(TUart Uart, uint32_t Baudrate);
- // Количество стоповых бит
- void uart_StopBits(TUart Uart, TUartStopBits StopBits);
- // Разрешить прим
- void uart_ReceiveEnable(TUart Uart, bool Enable);
- // Разрешить передачу
- void uart_TransmitEnable(TUart Uart, bool Enable);
- // Установить обработчик
- void uart_SetHandler(TUart Uart, TUartEvent Event, void * Handler);
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement