微笑男孩 发表于 2014-3-8 17:02

求教用AD采集的声音信号转换成分贝值的问题

我有一个带MIC的模块和一个NUC140的板子,现在我能通过板子的AD,采集到声音的电压信号,但怎么显示出DB值呢,我看过一些说是经过FFT变换,但是我给一个声音,采集到的只有一个电压信号。。。怎么才能实现给一个声音信号时时显示出DB值

欧阳中华 发表于 2014-3-8 21:03

.
    这个你应该看看dB的定义,根据参考值得到一个参考值对应采集电压信号,然后根据定义计算就可以得到了. . .

westrongmc 发表于 2014-3-9 10:48


可以参考matlab central 中的file exchange里面的程序:
Continuous Sound and Vibration Analysis
                                                                        
                        http://www.chinaksi.com/wp-content/uploads/2014/03/KSI-VLZ-01.png

链接地址如下:http://www.mathworks.com/matlabcentral/fileexchange/21384-continuous-sound-and-vibration-analysis


TestGuru 发表于 2014-3-30 15:39

本帖最后由 TestGuru 于 2014-3-30 15:42 编辑

声压是由声波引起的介质中的压力变化。在空气中,它可用话筒来测量;在水中,它可用水听器来测量。声压水平(SPL)由下式定义:

SPL (dB) = 20lg(Prms/P0)

其中P0是参考声压,Prms是被测声压的有效值(RMS)。在空气中,通常参考声压定为20uPa(rms);在水中,定为1uPa(rms)。将声压通过传感器及电路转化为电压信号后,计算公式变为:

SPL (dB) = 20lg(Vrms/V0)   其中V0是0dB声压所对应的参考声压(rms),可通过声压校准器测得,也可通过传感器的灵敏度及放大器的放大倍数推算得出。Vrms是所要计算的频带内的电压的有效值(rms)。若是求
总的声压只需求电压总有效数值即可,无需FFT。只有在求某频段的声压是才需要做FFT求该频段的电压有效值。
页: [1]
查看完整版本: 求教用AD采集的声音信号转换成分贝值的问题