三关白马 发表于 2018-11-21 10:48

AIC23采集声音,能够清晰听到,但得到的数据却都是负的

本帖最后由 三关白马 于 2018-11-21 10:50 编辑

AIC23采集声音并回放,能够清晰听到,但得到的数据却都是负的,这是什么原因?
AIC23采集到的数据,如下图:
https://e2echina.ti.com/resized-image/__size/1230x0/__key/communityserver-discussions-components-files/42/4064._E06507689898_.png


程序部分,数据长度为16位,数据用int类型存储。如下所示:
/*数字音频接口格式设置
AIC23为主模式,数据为DSP模式,数据长度16位*/
Uint16 digital_audio_inteface_format={0x0e,0x53};

int data;
while(!MCBSP_rrdy(hMcbsp)){};
data = MCBSP_read16(hMcbsp);
MCBSP_write16(hMcbsp,data);
一般情况下,音频采集到的数据不是都正负交替的么?如下图。那么采集到的都是负数,是什么意思呢?
https://e2echina.ti.com/resized-image/__size/1230x0/__key/communityserver-discussions-components-files/42/u_3D00_3672260202_2C00_1835840745_2600_fm_3D00_26_2600_gp_3D00_0.jpg

zhangmangui 发表于 2018-11-21 22:35

对ADC来讲采集到的数据都是正数      回放送到DA上   也是同样的数据

zhangmangui 发表于 2018-11-22 22:53

AIC其实就是可以可配置的AD和DA    接口和MCU能够无缝连接
声音是模拟量    采集完数字量    数字量回放又是模拟量
你看到的交流信号可能是被隔直的   也就是去掉了直流分量

xch 发表于 2018-11-26 12:07

电路问题。找硬件工程师解救

airwill 发表于 2018-11-27 22:21

对于 16 位的音频数据, 其实就是采样到的幅度值, 是 0 为参考点的有符号数据. 平均值应该为0

AIC23采集声音,能够清晰听到,但得到的数据却都是负的?
那信号源里有偏移,可以用电容隔离掉偏置量.
页: [1]
查看完整版本: AIC23采集声音,能够清晰听到,但得到的数据却都是负的