10#ifndef PIN_AUDIO_KIT_SD_CARD_CS
11#define PIN_AUDIO_KIT_SD_CARD_CS 13
12#define PIN_AUDIO_KIT_SD_CARD_MISO 2
13#define PIN_AUDIO_KIT_SD_CARD_MOSI 15
14#define PIN_AUDIO_KIT_SD_CARD_CLK 14
19using namespace audio_driver;
22#if !defined(AUDIO_DRIVER_USE_NEW_API)
134 virtual size_t write(
const uint8_t *data,
size_t len) {
135 LOGD(
"I2SStream::write: %d", len);
140 virtual size_t readBytes(uint8_t *data,
size_t len)
override {
154 return p_board->setVolume(vol * 100.0);
159 if (
p_board ==
nullptr)
return 0.0f;
160 return static_cast<float>(
p_board->getVolume()) / 100.0f;
167 if (
p_board ==
nullptr)
return false;
172 if (
p_board ==
nullptr)
return false;
173 return p_board->setMute(mute, line);
178 if (
p_board ==
nullptr)
return false;
179 return p_board->setPAPower(active);
185 return p_board->setInputVolume(100.0 * vol);
200 return p_board->getPins().getPinID(function);
206 return p_board->getPins().getPinID(function, pos);
219 p_board->getPins().getGPIO().digitalWrite(pin, value);
224 return p_board->getPins().getGPIO().digitalRead(pin);
255 if (tobeVol >= 0.0f) {
265 auto i2s =
p_board->getPins().getI2SPins(PinFunction::CODEC_ADC);
268 LOGI(
"using i2s_function: CODEC_ADC");
285 PinsI2S i2s_pins =
i2s.value();
286#if defined(__zephyr__)
288 if (i2s_pins.dev !=
nullptr){
289 cfg.dev = i2s_pins.dev;
313 audio_driver_local::Optional<PinsI2S>
i2s;
323 codec_cfg.output_device = DAC_OUTPUT_NONE;
336 LOGD(
"input: %d",
info.input_device);
337 LOGD(
"output: %d",
info.output_device);
345 codec_cfg.i2s.mode =
info.is_master ? MODE_SLAVE : MODE_MASTER;
346 if (
p_board ==
nullptr)
return false;
355 LOGD(
"BIT_LENGTH_16BITS");
356 return BIT_LENGTH_16BITS;
358 LOGD(
"BIT_LENGTH_24BITS");
359 return BIT_LENGTH_24BITS;
361 LOGD(
"BIT_LENGTH_32BITS");
362 return BIT_LENGTH_32BITS;
364 LOGE(
"Unsupported bits: %d", bits);
365 return BIT_LENGTH_16BITS;
392 if (rate <= 48000 || rate > 48000) {
396 LOGE(
"Invalid rate: %d using 44K", rate);
418 LOGE(
"unsupported mode");
#define TRACEI()
Definition AudioLoggerIDF.h:32
#define TRACED()
Definition AudioLoggerIDF.h:31
#define LOGI(...)
Definition AudioLoggerIDF.h:28
#define TRACEE()
Definition AudioLoggerIDF.h:34
#define LOGD(...)
Definition AudioLoggerIDF.h:27
#define LOGE(...)
Definition AudioLoggerIDF.h:30
RxTxMode
The Microcontroller is the Audio Source (TX_MODE) or Audio Sink (RX_MODE). RXTX_MODE is Source and Si...
Definition AudioTypes.h:26
@ TX_MODE
Definition AudioTypes.h:26
@ RX_MODE
Definition AudioTypes.h:26