ESP32音频数字信号处理项目实践
1. 软件增益提升
在将音频样本发送到放大器之前,可以通过软件来增加增益。具体做法是将音频样本乘以一个恒定的增益因子,这是对原有程序的简单修改。
以下是原始的DigAmp程序示例:
{
bytesIn = 0;
bytes_read = i2s_read(I2S_PORT0,&i2s_Buffer,buffer_Len,&bytesIn,portMAX_DELAY);
if(bytesIn > 0)
{
i2s_write(I2S_PORT1,&i2s_Buffer,bytesIn,&bytesWritten,portMAX_DELAY);
}
}
若要将增益提高3倍,需要修改 loop() 函数内的代码,修改后的程序名为DigAmp2:
void loop()
{
bytesIn = 0;
bytes_read = i2s_read(I2S_PORT0,&i2s_Buffer,buffer_Len,&bytesIn,portMAX_DELAY);
if(bytesIn > 0)
{
for(int i=0; i < bytesIn; i++)i2s_Buffer[i]=3*i2s_Buffer[i];
i2s_write(I2S_PORT1,&i2s_Buffer,bytesIn,&byt
超级会员免费看
订阅专栏 解锁全文
3333

被折叠的 条评论
为什么被折叠?



