Files
esp-pwm/main/freq_slider.c

41 lines
1.2 KiB
C

#include <stdbool.h>
#include "driver/usb_serial_jtag.h"
#include "portmacro.h"
#include "esp_log.h"
#include "buzzer.h"
#include "arraylen.h"
extern const uint32_t init_buzzer_freq;
static const char* TAG = "FREQ_SLIDER_C";
void freq_slider_task(void* param) {
buzzer_init(init_buzzer_freq);
usb_serial_jtag_driver_config_t jtag_config = {.rx_buffer_size = 1024,
.tx_buffer_size = 1024};
ESP_ERROR_CHECK(usb_serial_jtag_driver_install(&jtag_config));
int modify_amount = 10;
char buf[4] = {0};
while (true) {
int read_count = usb_serial_jtag_read_bytes(buf, ARRAY_LEN(buf) - 1, portMAX_DELAY);
buf[read_count + 1] = '\0';
switch (buf[0]) {
case 'q':
ESP_LOGI(TAG, "Increasing frequency. New frequency: %d", modify_frequency(modify_amount));
break;
case 'a':
ESP_LOGI(TAG, "Decreasing frequency. New frequency: %d", modify_frequency(-modify_amount));
modify_frequency(-modify_amount);
break;
case '1':
reset_frequency();
break;
}
}
}