Firmware  0.8.0
Loading...
Searching...
No Matches
adc_task_function.cpp File Reference

ADC voltage and current task function. More...

#include <driver/gpio.h>
#include <span>
#include <ztl/fixed_string.hpp>
#include "drv/led/bug.hpp"
#include "init.hpp"
#include "log.h"
#include "mw/roco/z21/service.hpp"
#include "utility.hpp"
Include dependency graph for adc_task_function.cpp:

Namespaces

namespace  drv
namespace  drv::anlg
namespace  drv::anlg::anonymous_namespace{adc_task_function.cpp}

Functions

BaseType_t drv::anlg::anonymous_namespace{adc_task_function.cpp}::xQueueSendOverwriteOldest (QueueHandle_t xQueue, void const *pvItemToQueue)
 Send item to queue (even if full).
std::span< uint8_t const > drv::anlg::anonymous_namespace{adc_task_function.cpp}::read (std::span< uint8_t > stack)
 Read conversion from to stack.
esp_err_t drv::anlg::anonymous_namespace{adc_task_function.cpp}::detect_revision (std::span< uint8_t > stack)
 Detect hardware revision by measuring VCC channel.
template<ztl::fixed_string revision>
size_t drv::anlg::anonymous_namespace{adc_task_function.cpp}::parse (std::span< uint8_t const > conversion_frame, FilteredCurrent &filtered_current)
 Parse conversion frame.
void drv::anlg::anonymous_namespace{adc_task_function.cpp}::detect_short_circuit (uint8_t short_circuit_count)
 Detect short circuits.
void drv::anlg::handle_suspend_resume_on_notify ()
 Handles suspend/resume logic.
void drv::anlg::adc_task_notify_suspend ()
 Suspend ADC task with task notification.
void drv::anlg::adc_task_notify_resume ()
 Resume ADC task with task notification.
void drv::anlg::adc_task_function (void *)
 ADC task function.

Variables

std::atomic< uint8_t > drv::anlg::nvs_short_circuit_time
 Cached current short circuit time from NVS.
uint8_t drv::anlg::short_circuit_time {}
 Short circuit time.

Detailed Description

Author
Vincent Hamp
Date
05/07/2023