Sound Byte Libs 0.5.1-121-g3358a44
C++ firmware library for audio applications on 32-bit ARM Cortex-M processors
Loading...
Searching...
No Matches
input.hpp File Reference

CV Input component — smoothed ADC reading with su output (FDP-072) More...

Detailed Description

CV Input component — smoothed ADC reading with su output (FDP-072)

CvInput is a source adapter (L1/L2): it takes raw ADC counts, applies EWMA smoothing in the raw domain, and emits normalized signal units at its output — the transport contract of ADR-011 D2. The jack's musical role (unipolar / bipolar / V/Oct) is a structural parameter with a sensible default; conditioning constants live in one code-owned struct with named presets. Per-mode runtime remapping is a first-class pattern.

Acquisition is owned by the component: feed values with update(), or read straight from a DMA scan buffer with update_dma() (ISR-safe).

Usage: sbl::components::cv::CvInput jack{sbl::components::cv::Smoothing::Light}; jack.set_conditioning(CvConditioning::from(sbl::hw::electrical::cv_5)); // Board::init() does this for you jack.set_mapping(CvMapping::VOct); jack.update_dma(adc_buf, 4); float pitch_offset = jack.value(); // su

Definition in file input.hpp.

#include <cstdint>
#include <sbl/hw/util/ewma.hpp>
#include <sbl/hw/hal/adc/electrical.hpp>

Go to the source code of this file.

Classes

struct  sbl::components::cv::CvConditioning
 Conditioning constants — one code-owned home (ADR-011 D2) More...
 
struct  sbl::components::cv::CvInputConfig
 
class  sbl::components::cv::CvInput
 Smoothed CV input emitting normalized signal units. More...
 

Namespaces

namespace  sbl
 Root namespace for all Sound Byte Libs code.
 
namespace  sbl::components
 Functional hardware components.
 
namespace  sbl::components::cv
 CV and gate inputs.
 

Enumerations

enum class  sbl::components::cv::Smoothing : uint8_t { sbl::components::cv::None = 0 , sbl::components::cv::Light = 1 , sbl::components::cv::Medium = 3 , sbl::components::cv::Heavy = 5 }
 Smoothing presets for the raw-domain EWMA filter. More...
 
enum class  sbl::components::cv::CvMapping : uint8_t { sbl::components::cv::Unipolar , sbl::components::cv::Bipolar , sbl::components::cv::VOct }
 Musical interpretation of the jack — a structural parameter. More...