diff options
| author | jacqueline <me@jacqueline.id.au> | 2023-06-07 13:19:45 +1000 |
|---|---|---|
| committer | jacqueline <me@jacqueline.id.au> | 2023-06-07 13:19:45 +1000 |
| commit | 1f903accd95361735c841c87fdc6494ad3331b40 (patch) | |
| tree | 5b69bd0548c06a93852a576fa90a170fa303a15e /src/drivers/include | |
| parent | 2a568846bd8f1c9e23e86e7570557eed6f18cf9f (diff) | |
| download | tangara-fw-1f903accd95361735c841c87fdc6494ad3331b40.tar.gz | |
Flesh out audio state machine for playback
Also fix mono playback
Diffstat (limited to 'src/drivers/include')
| -rw-r--r-- | src/drivers/include/display.hpp | 4 | ||||
| -rw-r--r-- | src/drivers/include/i2s_dac.hpp | 6 |
2 files changed, 9 insertions, 1 deletions
diff --git a/src/drivers/include/display.hpp b/src/drivers/include/display.hpp index b394dd9e..4b63e1c4 100644 --- a/src/drivers/include/display.hpp +++ b/src/drivers/include/display.hpp @@ -43,6 +43,10 @@ class Display { const lv_area_t* area, lv_color_t* color_map); + // Not copyable or movable. + Display(const Display&) = delete; + Display& operator=(const Display&) = delete; + private: GpioExpander* gpio_; spi_device_handle_t handle_; diff --git a/src/drivers/include/i2s_dac.hpp b/src/drivers/include/i2s_dac.hpp index 42c094b1..388d09fa 100644 --- a/src/drivers/include/i2s_dac.hpp +++ b/src/drivers/include/i2s_dac.hpp @@ -40,6 +40,10 @@ class I2SDac { auto Start() -> void; auto Stop() -> void; + enum Channels { + CHANNELS_MONO, + CHANNELS_STEREO, + }; enum BitsPerSample { BPS_16 = I2S_DATA_BIT_WIDTH_16BIT, BPS_24 = I2S_DATA_BIT_WIDTH_24BIT, @@ -56,7 +60,7 @@ class I2SDac { SAMPLE_RATE_192 = 192000, }; - auto Reconfigure(BitsPerSample bps, SampleRate rate) -> void; + auto Reconfigure(Channels ch, BitsPerSample bps, SampleRate rate) -> void; auto WriteData(const cpp::span<const std::byte>& data) -> void; auto SetSource(StreamBufferHandle_t buffer) -> void; |
