This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

320VC5509A的板子采集声音信号

我现在用的板子是320VC5509A的板子:

    处理器是320VC5509A,16位,6个DMA,I2C总线,3个McBSP接口(McBSP0配置成IIS接口,与CODEC接口),最高主频200MHZ!

    CODEC芯片是TLV320AIC23B(想配置成16位,16KAD与DA)!

    外扩4MB SDRAM,通过EMIF接口完成!

现在我想用它来进行实时的语音处理,就是插上麦克和耳机就能实时听取环境中语音那种,请问我具体应该怎么做呢?

  • 5509的开发板例程里有的,好像是第27个,然后把里面的模拟通道那一行(原本是注释掉)解除注释,接线就mic接  mic口, 耳机接 喇叭口 就可以实现你的上述功能,但不是通过SDRAM和EMIF接口完成的

  • 非常感谢您的答复,我按照你说的试了一下还是不行啊。就是第二十七个例子,我用手机耳机的麦克风,在喇叭里听不到,但有一种长鸣的噪音好像,请问怎么办呢,怎么配置的没关系,只要能完成我的需求就行

  • //Uint16 power_down_control[2] ={0x0c,0x03}; //原程序,改成如下
    Uint16 power_down_control[2] ={0x0c,0x01}; // 打开设备电源 时钟 振荡器 输出 打开DAC ADC 麦克风输入 线性输入关闭

    /*AIC23模拟音频的控制
    DAC使能,ADC输入选择为Line*/
    //Uint16 analog_aduio_path_control[2] ={0x08,0x10};//原程序,0x10代表模拟输入为line,所以如果用mic输入则听不到输出,改成如下
    Uint16 analog_aduio_path_control[2] ={0x08,0x14}; //DAC选择麦克风输入,而非line,麦克风增益选择0db,随你要求

    /*设置AIC23模拟通路*/  [反注释]
    i2c_status = I2C_write( analog_aduio_path_control,//pointer to data array
    2, //length of data to be transmitted
    1, //master or slaver
    CODEC_ADDR, //slave address to transmit to
    1, //transfer mode of operation
    30000 //time out for bus busy
    );

  • 感谢!我都您说的改了,可运行的时候我发声还是没反应呢?那些大括号里面的十六进制的数代表什么意思呢

  • 16进制你去查看aic23的说明书,这个你需要自己去看了,再来弄程序吧。。。。另外你不是说要实时听环境信号吗?那么需要有个外置mic接入 mic口。 最简单的就是找一个耳麦,耳机麦克都有。

  • 我也是刚学这个,我都按你说的改了,mic口我接了个手机耳机上的麦克风,耳机也接了,我的目的就是用麦克风采集外部的声音信号,再用耳机发出来,最好在电脑上还有图能看到这个声音信号,您看我现在的情况该怎么完成呢,请你帮帮忙我非常感谢

  • 我也是刚学这个,我都按你说的改了,mic口我接了个手机耳机上的麦克风,耳机也接了,我的目的就是用麦克风采集外部的声音信号,再用耳机发出来,最好在电脑上还有图能看到这个声音信号,您看我现在的情况该怎么完成呢,请你帮帮忙我非常感谢

  • 你好,如果方便的话可以加我qq吗?你是我在网上遇到的第一个热心朋友,这一块我想向你好好的学习

  • 你好,我想请问一下,我在调麦克风增益的时候,按照aic23的数据手册上改,但是麦克风采集的时候没什么变化,只有对着麦克风吹气或者贴着嘴才能采集到,如果不对着麦克风说话根本采集不到信号,我想请问,我要把麦克风增益参数调到哪个值才是最大?

  • 我也是按照aic23的说明书来调的,你看aic23的寄存器说明,里面有设置为哪个数为最大,则为最大的增益。如果还不够,只能你自己增加运放了

  • 这个解决了,我把倒数第二句的前面乘个系数,现在离麦克风远一点对一边说话也能采集到声音了,我还想问一下如果我想把这个采集到的声音信号经过一个处理在发出来,那么我是不是就得找到这个数据存在哪然后再对其处理,再写给hmcbsp,如果是这样的话,这个声音信号存在什么地方呢,还有那个aic23data代表的是什么意思啊?它就是存储数据的变量吗?

  • 您好,有开发的例程可以发我一份吗?873511507@qq.com
  • 您好,不知道您是否还能看到这条回复,我遇到了和你一样的问题,我也是准备做实时的语音处理,你能否发一份你后面解决的程序给我呢?是否感谢,期待您的回复!