esp_alox/main/uart_handler.h
simon 55228fff8d Added MultiBoard Support
Support ESP32S3 and ESP32C3 while compiling
2025-07-24 14:15:53 +02:00

37 lines
948 B
C

#ifndef UART_HANDLER_H
#define UART_HANDLER_H
#include "freertos/idf_additions.h"
#include "message_parser.h"
#include <stddef.h>
#include <stdint.h>
#ifdef CONFIG_IDF_TARGET_ESP32S3
#define MASTER_UART UART_NUM_1
#define TXD_PIN (GPIO_NUM_2)
#define RXD_PIN (GPIO_NUM_3)
#elif CONFIG_IDF_TARGET_ESP32C3
#define MASTER_UART UART_NUM_1
#define TXD_PIN (GPIO_NUM_1)
#define RXD_PIN (GPIO_NUM_2)
#endif
#define BUF_SIZE (256)
typedef struct {
uint8_t msgid;
size_t payload_len;
uint8_t data[MAX_MESSAGE_PAYLOAD_LENGTH];
} ParsedMessage_t;
void init_uart(QueueHandle_t msg_queue_handle);
void uart_read_task(void *param);
void uart_send_task(void *param);
void HandleMessageReceivedCallback(uint8_t msgid, const uint8_t *payload,
size_t payload_len);
void HandleMessageFailCallback(uint8_t msgid, const uint8_t *payload,
size_t payload_len, enum ParserError error);
#endif