48 #ifndef FREQUENCY_COUNT_H
49 #define FREQUENCY_COUNT_H
52 #include "driver/pcnt.h"
53 #include "driver/rmt.h"
71 void (*window_start_callback)(void);
72 void (*frequency_update_callback)(
double hz);
84 #endif // FREQUENCY_COUNT
Definition: frequency_count.h:59
void frequency_count_task_function(void *pvParameter)
Task function - pass this to xTaskCreate with a pointer to an instance of frequency_count_configurati...
Definition: frequency_count.c:139
pcnt_unit_t pcnt_unit
PCNT unit to use for counting.
Definition: frequency_count.h:62
uint8_t rmt_clk_div
RMT pulse length, as a divider of the APB clock.
Definition: frequency_count.h:66
gpio_num_t pcnt_gpio
count events on this GPIO
Definition: frequency_count.h:61
pcnt_channel_t pcnt_channel
PCNT channel to use for counting.
Definition: frequency_count.h:63
uint16_t filter_length
counter filter length in APB cycles
Definition: frequency_count.h:70
gpio_num_t rmt_gpio
used by RMT to define a sampling window
Definition: frequency_count.h:64
float sampling_window_seconds
sample window length (in seconds)
Definition: frequency_count.h:69
rmt_channel_t rmt_channel
The RMT channel to use.
Definition: frequency_count.h:65
float sampling_period_seconds
time (in seconds) between start of adjacent samples
Definition: frequency_count.h:68
uint8_t rmt_max_blocks
Maximum number of RMT RAM blocks that can be used by task. Each block provides 64 RMT items and each ...
Definition: frequency_count.h:67