components/esp_hal_pcnt/README.md
[!NOTE] This component is currently in beta. Its API, behavior, and compatibility may change at any time and without notice; backward compatibility is not guaranteed. Use caution when integrating into production systems.
The esp_hal_pcnt component provides a Hardware Abstraction Layer for PCNT (Pulse Counter) peripherals across ESP-IDF supported targets. This HAL enables efficient counting of external pulses and signals, with support for quadrature encoders, frequency measurement, and position tracking applications.
The PCNT HAL is structured in two main sub-layers:
HAL Layer (Upper): Defines the operational steps and data structures required to control PCNT peripherals (e.g., initialization).
Low-Level Layer (Bottom): Serves as a translation layer between the HAL and the register files defined in the soc component, handling target-specific register configurations.
The HAL functions primarily serve ESP-IDF PCNT peripheral drivers such as esp_driver_pcnt component.
Advanced developers can use these interfaces directly when implementing custom pulse counting applications, with the understanding that API stability is not guaranteed.
soc: Provides chip-specific register definitions and peripheral capabilitieshal: Core hardware abstraction utilities and macros