arduino-audio-tools
Loading...
Searching...
No Matches
PWMConfigAVR.h
Go to the documentation of this file.
1#pragma once
2
3namespace audio_tools {
10struct PWMConfigAVR : public AudioInfo {
12 // default basic information
13 sample_rate = 8000u; // sample rate in Hz
14 channels = 1;
15 bits_per_sample = 16;
16 }
17
22
24 uint32_t pwm_frequency = 0; // audable range is from 20 to
29
32
35
36
37 void logConfig() {
38 LOGI("sample_rate: %d", (int) sample_rate);
39 LOGI("channels: %d", channels);
40 LOGI("bits_per_sample: %u", bits_per_sample);
41 LOGI("buffer_size: %u", buffer_size);
42 LOGI("buffer_count: %u", buffers);
43 LOGI("pwm_frequency: %u", (unsigned)pwm_frequency);
44 LOGI("resolution: %d", resolution);
45 LOGI("dead_time_us: %u", dead_time_us);
46 // LOGI("timer_id: %d", timer_id);
47 }
48
49 protected:
51};
52
54
55}
#define LOGI(...)
Definition AudioLoggerIDF.h:28
#define PWM_BUFFER_COUNT
Definition AudioToolsConfig.h:174
#define PWM_MAX_SAMPLE_RATE
Definition AudioToolsConfig.h:299
#define PWM_BUFFER_SIZE
Definition avr.h:17
Generic Implementation of sound input and output for desktop environments using portaudio.
Definition AudioCodecsBase.h:10
size_t writeData(Print *p_out, T *data, int samples, int maxSamples=512)
Definition AudioTypes.h:508
Basic Audio information which drives e.g. I2S.
Definition AudioTypes.h:51
sample_rate_t sample_rate
Sample Rate: e.g 44100.
Definition AudioTypes.h:53
uint16_t channels
Number of channels: 2=stereo, 1=mono.
Definition AudioTypes.h:55
uint8_t bits_per_sample
Number of bits per sample (int16_t = 16 bits)
Definition AudioTypes.h:57
Configuration data for PWM audio output.
Definition PWMConfigAVR.h:10
uint8_t resolution
Only used by ESP32: must be between 8 and 11 -> drives pwm frequency // 20,000Hz (not used by ESP32)
Definition PWMConfigAVR.h:26
uint8_t timer_id
Timer used: Only used by ESP32 must be between 0 and 3.
Definition PWMConfigAVR.h:28
PWMConfigAVR()
Definition PWMConfigAVR.h:11
uint32_t pwm_frequency
additinal info which might not be used by all processors
Definition PWMConfigAVR.h:24
void logConfig()
Definition PWMConfigAVR.h:37
Pins pins_data
Definition PWMConfigAVR.h:50
uint16_t dead_time_us
Dead time in microseconds for symmetric PWM (ESP32 only)
Definition PWMConfigAVR.h:31
uint32_t max_sample_rate
max sample sample rate that still produces good audio
Definition PWMConfigAVR.h:34
uint16_t buffer_size
size of an inidividual buffer
Definition PWMConfigAVR.h:19
uint8_t buffers
number of buffers
Definition PWMConfigAVR.h:21