OTA task
This commit is contained in:
@@ -18,11 +18,13 @@ extern "C" {
|
||||
static uint32_t last_send_ms = 0;
|
||||
static int64_t last_send_ts = 0;
|
||||
|
||||
static TaskHandle_t sender_task_handle = nullptr;
|
||||
|
||||
static void sender_task(void* arg)
|
||||
{
|
||||
ringbuf_t* rb = sampler_get_buffer();
|
||||
|
||||
last_send_ts = time(NULL);
|
||||
last_send_ts = time(nullptr);
|
||||
last_send_ms = esp_timer_get_time() / 1000;
|
||||
|
||||
while (1)
|
||||
@@ -31,7 +33,7 @@ static void sender_task(void* arg)
|
||||
|
||||
char buf[512];
|
||||
uint32_t now_ms = esp_timer_get_time() / 1000;
|
||||
time_t now_ts = time(NULL);
|
||||
time_t now_ts = time(nullptr);
|
||||
|
||||
sample_t tmp[RINGBUF_SIZE];
|
||||
ringbuf_copy(rb, tmp);
|
||||
@@ -49,6 +51,7 @@ static void sender_task(void* arg)
|
||||
out_values[count * 2 + 0] = delta;
|
||||
out_values[count * 2 + 1] = tmp[i].value;
|
||||
count++;
|
||||
if (count >= RINGBUF_SIZE) break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -87,12 +90,24 @@ static void sender_task(void* arg)
|
||||
|
||||
void sender_task_start()
|
||||
{
|
||||
xTaskCreate(
|
||||
sender_task,
|
||||
"sender",
|
||||
4096,
|
||||
NULL,
|
||||
5,
|
||||
NULL
|
||||
);
|
||||
if (sender_task_handle == nullptr)
|
||||
{
|
||||
xTaskCreate(
|
||||
sender_task,
|
||||
"sender",
|
||||
4096,
|
||||
nullptr,
|
||||
5,
|
||||
&sender_task_handle
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
void sender_task_stop()
|
||||
{
|
||||
if (sender_task_handle != nullptr)
|
||||
{
|
||||
vTaskDelete(sender_task_handle);
|
||||
sender_task_handle = nullptr;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user