#include "driver/uart.h" #include "esp_log.h" #include "hal/uart_types.h" #include "uart.h" #define MASTER_UART UART_NUM_1 #define BUF_SIZE (256) #define TERMAINL_RX 2 #define TERMINAL_TX 3 void uart_read_task(void *param) { uint8_t *data = (uint8_t *)malloc(BUF_SIZE); int len = 0; while (1) { len = uart_read_bytes(MASTER_UART, data, BUF_SIZE, pdMS_TO_TICKS(20)); if (len > 0) { for (int i = 0; i < len; i++) { ESP_LOGI("UART", "UART: %c", data[i]); } } } } void init_uart() { uart_config_t uart_config = {// .baud_rate = 115200, // 921600, 115200 .baud_rate = 921600, .data_bits = UART_DATA_8_BITS, .parity = UART_PARITY_DISABLE, .stop_bits = UART_STOP_BITS_1, .flow_ctrl = UART_HW_FLOWCTRL_DISABLE}; uart_driver_install(MASTER_UART, BUF_SIZE * 2, 0, 0, NULL, 0); uart_param_config(MASTER_UART, &uart_config); uart_set_pin(MASTER_UART, TERMINAL_TX, TERMAINL_RX, UART_PIN_NO_CHANGE, UART_PIN_NO_CHANGE); xTaskCreate(uart_read_task, "Read Uart", 4096, NULL, 1, NULL); }