使用ESP-IDF 4.3.1和ESP-IDF 4.0.2测试过,一个ESP32作为主机,一个ESP32作为从机进行I2S
通信,主机接收数据,从机发送数据。现在问题是从机设置
Code:
Select all
i2s_config_t i2s_config = {
.mode = I2S_MODE_SLAVE | I2S_MODE_RX,
.sample_rate = SAMPLE_RATE,
.bits_per_sample = 32,
.channel_format = I2S_CHANNEL_FMT_RIGHT_LEFT, //2-channels
.communica
tion_format = I2S_COMM_FORMAT_STAND_MSB,
.dma_buf_count = 6,
.dma_buf_len = 60,
.use_apll = false,
.intr_alloc_flags = ESP_INTR_FLAG_LEVEL1 //Interrupt level 1
};
从机设置bits_per_sample 为32的情况下,从机是无法向主机发送数据的(我用逻辑分析仪抓取过数据取验证确实没有数据)。我查乐鑫的技术参考手册,手册说ESP32是支持32bit位深的数据的。谁实际用过,给点指导。