44 lines
886 B
C++
44 lines
886 B
C++
//
|
|
// Created by erki on 6/3/23.
|
|
//
|
|
|
|
#include "app_serial.hpp"
|
|
|
|
#include "driver/uart.h"
|
|
|
|
namespace
|
|
{
|
|
|
|
QueueHandle_t s_uart_queue = nullptr;
|
|
|
|
}
|
|
|
|
namespace Serial
|
|
{
|
|
|
|
QueueHandle_t setupSerial(const uart_port_t uart)
|
|
{
|
|
uart_config_t config = {
|
|
.baud_rate = 115200,
|
|
.data_bits = UART_DATA_8_BITS,
|
|
.parity = UART_PARITY_DISABLE,
|
|
.stop_bits = UART_STOP_BITS_1,
|
|
.flow_ctrl = UART_HW_FLOWCTRL_DISABLE,
|
|
.rx_flow_ctrl_thresh = UART_HW_FLOWCTRL_DISABLE,
|
|
.source_clk = UART_SCLK_DEFAULT,
|
|
};
|
|
|
|
ESP_ERROR_CHECK(uart_driver_install(uart, 128 * 2, 128 * 2, 4, &s_uart_queue, 0));
|
|
ESP_ERROR_CHECK(uart_param_config(uart, &config));
|
|
ESP_ERROR_CHECK(uart_set_pin(uart, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE));
|
|
|
|
return s_uart_queue;
|
|
}
|
|
|
|
void discardRxBuffer(const uart_port_t uart)
|
|
{
|
|
ESP_ERROR_CHECK(uart_flush(uart));
|
|
}
|
|
|
|
}
|