/* * Developed by TComLab * Version: v0.1 * Date: 2025-12-15 */ #pragma once #include #include "freertos/FreeRTOS.h" #include "esp_err.h" // Ініціалізує апаратний мультиплексор UART: GPIO, UART драйвер та watchdog. esp_err_t uart_mux_init(void); // Повертає true, якщо драйвер готовий приймати виклики. bool uart_mux_ready(void); // Кількість доступних каналів мультиплексора. size_t uart_mux_channel_count(void); // Відправляє буфер даних на вказаний канал з тайм-аутом очікування мьютекса. esp_err_t uart_mux_write(size_t channel, const uint8_t *data, size_t length, TickType_t timeout); // Зчитує дані з каналу, повертаючи кількість байтів через out_length. esp_err_t uart_mux_read(size_t channel, uint8_t *buffer, size_t buffer_size, size_t *out_length, TickType_t timeout);