矿石收音机论坛

 找回密码
 加入会员

QQ登录

只需一步,快速开始

搜索
查看: 1382|回复: 4

STM32-F407VG-SDR-(2)滤波优化

[复制链接]
     
发表于 2023-10-14 16:50:50 | 显示全部楼层 |阅读模式
本帖最后由 LoveVirus 于 2023-10-14 16:52 编辑

workflow.png
在上期的视频中,我制作了一款中波直采的SDR收音机,结构简陋,并未进行过多的滤波处理,噪音较大,在后面的一段时间里我一直尝试降噪处理,虽尚未达到理想目标,但已有初步成效。
***************************************************************************************************
滤波优化点.png

主要改进有以下几点:

1、LNA电路优化

2、改进LO生成算法

3、增加DAC循环缓冲区

4、增加FIR-DEC滤波器

5、DAC后增加LPF滤波器

***************************************************************************************************

LNA2.png

这是我重新设计的LNA电路,相对于上次的电路有几点改进

1、减少2级放大为1级放大

2、S9014偏置电路改为分压偏置

3、射级增加103电容

4、电源部分增加47欧姆的限流电阻,后面增加LC-PI型滤波器

***************************************************************************************************
草稿2.JPG

这是我设计覆铜板的草稿图

***************************************************************************************************

覆铜板2.JPG

这是焊接好的覆铜板

***************************************************************************************************
LPF.png

这是DAC后的低通滤波器

***************************************************************************************************
compte-lo.png

上次的数字振荡器是一个固定表,这个固定表有个问题,信号采样必须是完整周期的整数倍才可以,如果不是整数倍,会造成振荡器波形不连续,这个不连续在混频后会引入噪声。

***************************************************************************************************
nco.png

由于采样率是2.4M,我创建了一个2400点的正弦波表,然后对这个lut表进行步进抽取,当步进为1时抽取,频率是1K,如果步进为2时抽取那么频率是2K,以此类推,这是根据这个算法生成的测试波形图

***************************************************************************************************

dac循环缓冲区.png

上个视频中我只是在ADC时用到了循环缓冲区,现在我把DAC也加上了循环缓冲区,循环缓冲区我是通过转换一半中断来实现的,这里我用了一个小技巧,就是把2维数组当1维数组来了用。

***************************************************************************************************

2维数组.png

实际2维数组存储就是用多个1维数据串联起来的进行存储的。

***************************************************************************************************

增加fir.png

在上次数字混频后我只用了滑动求和抽取滤波器,有效果但不理想,这次我先用25点的滑动求和过滤器把2.4M的采样率降低到96K,然后再通过61阶2倍抽取的FIR过滤器降低到48K,效果有所增强。

***************************************************************************************************

MATLAB.png

FIR滤波系数我是用matlab进行的设计,这是设计时的参数设置。

***************************************************************************************************

组装2.png

经过以上改进,我们来重新试听一下效果,感觉改进还是蛮明显的。

***************************************************************************************************

项目地址:direct-rf-v2分支

https://gitee.com/zhuxianguo/stm32-f407vg-sdr

视频地址:

【STM32-F407VG-SDR-(2)滤波优化】 https://www.bilibili.com/video/BV1vw411c7vw/

评分

1

查看全部评分

     
发表于 2023-10-14 18:24:16 | 显示全部楼层
羡慕你能搞数字收音机,我也要往你这个方向走了
回复 支持 反对

使用道具 举报

     
发表于 2023-10-14 18:33:41 来自手机 | 显示全部楼层
太厉害了,我也有这个想法但是没有动手
回复 支持 反对

使用道具 举报

     
 楼主| 发表于 2023-10-14 18:35:47 | 显示全部楼层
分立元件 发表于 2023-10-14 18:24
羡慕你能搞数字收音机,我也要往你这个方向走了

我也是算用算学,不过业余搞在专业人员很简单的问题,因为没人指导沟通需要个人踩很多坑才能有一点儿进展
回复 支持 反对

使用道具 举报

发表于 2023-10-15 12:03:49 | 显示全部楼层
仔细没看完,只是好奇 LO直接方波行不行
FIR可以考虑8、32位机的通用的实时技巧提高反速度,不用做实际25移动平均



回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入会员

本版积分规则

小黑屋|手机版|矿石收音机 ( 蒙ICP备05000029号-1 )

蒙公网安备 15040402000005号

GMT+8, 2025-5-5 01:37

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表