全志科技
登录
直播中
王伟
7年用户
1496经验值
私信
关注
[问答]
怎样通过配置高通滤波寄存器滤掉800hz的噪声呢
开启该帖子的消息推送
滤波
寄存器
噪声
客户使用DMIC录音,想通过配置高通滤波寄存器,滤掉800hz的噪声
与高通滤波相关的寄存器:
HPF_EN_CTR: 0x38
HPF_COEF_REG: 0x3c
HPF_GAIN_REG: 0x40
回帖
(1)
吴少杰
2021-12-29 12:14:48
解决方案
只需要更改HPF_COEF_REG中的值即可,假如效果没有达到预期,还请找出噪声来源,从源头上解决。
coef值与截止频率的关系是Fc=fs*(1-coef)/2π,其中fs是采样频率。
coef的值是3.24格式,也就是有效位是27bit,3个整数位,24个小数位,默认值为0x00FFAA45,换算成10进制就是0.99869,当采样频率是48k时,默认设置的截止频率Fc=48k *(1-0.99869)/2π = 10Hz。
下面演示如何通过配置HPF_COEF_REG寄存器滤掉100hz的正弦波。
使用audiocodec播放100hz正弦波。
HPF_COEF_REG使用默认值,DMIC使用采样频率16k录音,保存文件为100hz_default.wav。
截止频率为100Hz的话,经计算得出coef值为0.96075,因此HPF_COEF_REG修改为0x00f5f1db,DMIC使用采样频率16k录音,保存文件为100hz_setHPF.wav。
两者的音频波形如下,可见100hz_setHPF的波形中,录回正弦波的db值比100hz_default更小。
因为驱动中并没有对该寄存器进行操作,所以目前只有硬改寄存器的方式进行配置,之后会考虑在dts中添加截止频率的配置项。
解决方案
只需要更改HPF_COEF_REG中的值即可,假如效果没有达到预期,还请找出噪声来源,从源头上解决。
coef值与截止频率的关系是Fc=fs*(1-coef)/2π,其中fs是采样频率。
coef的值是3.24格式,也就是有效位是27bit,3个整数位,24个小数位,默认值为0x00FFAA45,换算成10进制就是0.99869,当采样频率是48k时,默认设置的截止频率Fc=48k *(1-0.99869)/2π = 10Hz。
下面演示如何通过配置HPF_COEF_REG寄存器滤掉100hz的正弦波。
使用audiocodec播放100hz正弦波。
HPF_COEF_REG使用默认值,DMIC使用采样频率16k录音,保存文件为100hz_default.wav。
截止频率为100Hz的话,经计算得出coef值为0.96075,因此HPF_COEF_REG修改为0x00f5f1db,DMIC使用采样频率16k录音,保存文件为100hz_setHPF.wav。
两者的音频波形如下,可见100hz_setHPF的波形中,录回正弦波的db值比100hz_default更小。
因为驱动中并没有对该寄存器进行操作,所以目前只有硬改寄存器的方式进行配置,之后会考虑在dts中添加截止频率的配置项。
举报
更多回帖
rotate(-90deg);
回复
相关问答
滤波
寄存器
噪声
TLV320AIC3104将所有输入断开在i2s输出仍然有波型,可以
通过
寄存器
设置过
滤掉
吗?
2024-10-18
231
为什么multisim12仿真
800HZ
放大威廉希尔官方网站 时失真为0%
2016-11-30
6161
怎样
使用
寄存器
去
配置
STM32的引脚
呢
2022-02-23
1970
FilterVu可变低通
滤波器
如何
滤掉
信号干扰?
2021-04-15
1203
I3G2450D在零位时有毛刺是什么原因?
2024-03-07
663
滤波器
的
噪声
分析与性能提高
2019-04-28
3197
请问matlab怎么设置一个提取直流分量的低通
滤波器
2021-02-02
39398
AD7173-8通道
寄存器
读写正常,
配置
寄存器
和
滤波
寄存器
不能写入(读出为复位值)是什么问题?
2023-12-01
332
怎样
使用stm32的外部中断去
配置
寄存器
呢
2021-11-16
580
怎样
通过
输出比较
寄存器
来调整pwm输出的占空比
呢
2021-11-16
2566
发帖
登录/注册
20万+
工程师都在用,
免费
PCB检查工具
无需安装、支持浏览器和手机在线查看、实时共享
查看
点击登录
登录更多精彩功能!
英国威廉希尔公司网站
william hill官网 版块
小组
免费开发板试用
ebook
直播
搜索
登录
×
20
完善资料,
赚取积分