当我使用official audio recording examples编译并刷新ESP32-LYRATD-MSC时,配置ES8388编解码器驱动程序后,我收到es_write_reg错误。

从LYRA或WROVER套件到LYRATD-MSC有什么可能导致错误的变化?

最佳答案

这是带有示例的known issue。 ESP32-LYRATD-MSC随附ZL38063 DSP芯片,但从示例中可以看出,它期望配置ESP8388:

audio_hal_codec_config_t audio_hal_codec_cfg =  AUDIO_HAL_ES8388_DEFAULT(); // offending line
audio_hal_codec_cfg.i2s_iface.samples = AUDIO_HAL_16K_SAMPLES;
audio_hal_handle_t hal = audio_hal_init(&audio_hal_codec_cfg, 0);
audio_hal_ctrl_codec(hal, AUDIO_HAL_CODEC_MODE_ENCODE, AUDIO_HAL_CTRL_START);

要解决,请配置ZL38063:
audio_hal_handle_t init_audio_codec()
{
#if (CONFIG_ESP_LYRAT_V4_3_BOARD || CONFIG_ESP_LYRAT_V4_2_BOARD)
    audio_hal_codec_config_t audio_hal_codec_cfg = AUDIO_HAL_ES8388_DEFAULT();
    return audio_hal_init(&audio_hal_codec_cfg, 0);
#endif

#if (CONFIG_ESP_LYRATD_MSC_V2_1_BOARD || CONFIG_ESP_LYRATD_MSC_V2_2_BOARD)
    audio_hal_codec_config_t audio_hal_codec_cfg = AUDIO_HAL_ZL38063_DEFAULT();
    return audio_hal_init(&audio_hal_codec_cfg, 2);
#endif
}

然后,在app_main()中:
audio_hal_ctrl_codec(init_audio_codec(), AUDIO_HAL_CODEC_MODE_BOTH, AUDIO_HAL_CTRL_START);

关于c - 在Espressif ESP32-LYRATD-MSC开发板上配置音频编解码器,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55012774/

10-09 08:42