HF Interface Wrapper 0.1.0-dev
Embedded C++ hardware abstraction layer
Loading...
Searching...
No Matches
EspUart.h File Reference

ESP32 UART implementation for the HardFOC system. More...

#include "BaseUart.h"
#include "McuSelect.h"
#include "PlatformMutex.h"
#include "utils/EspTypes.h"
#include <array>
#include <atomic>
#include <memory>
#include <vector>
#include "driver/gpio.h"
#include "driver/uart.h"
#include "esp_log.h"
#include "esp_timer.h"
#include "freertos/FreeRTOS.h"
#include "freertos/queue.h"
#include "freertos/task.h"
Include dependency graph for EspUart.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

class  EspUart
 ESP32 UART implementation class. More...
 
struct  EspUart::UartState
 UART state tracking structure. More...
 

Detailed Description

ESP32 UART implementation for the HardFOC system.

This file provides a comprehensive UART implementation for ESP32 variants using the built-in UART peripheral. The implementation supports multiple ports, configurable baud rates and data formats, hardware flow control, interrupt-driven operation, pattern detection, and comprehensive error handling.

Author
Nebiyu Tadesse
Date
2025
Note
This implementation is designed for all ESP32 variants using ESP-IDF v5.5+
Supports ESP32-C6, ESP32, ESP32-S2, ESP32-S3, ESP32-C3, ESP32-C2, ESP32-H2
Each EspUart instance represents a single UART port
Higher-level applications should instantiate multiple EspUart objects for multi-port boards