1. 硬件介绍及软件安装、基础实验案例
硬件介绍
FM_SDR引脚如下:
与大拇指EG4S20开发板接口引脚说明
使用的STM32引脚分布如下:
软件安装、基础实验案例
我们需要的软件有:
●STM32开发软件:
●JAVA安装包:jre-8u301-windows-x64.exe
●STM32CUBE开发工具:SetupSTM32CubeMX-6.3.0-Win.exe
●STM32CUBE库开发包:en.stm32cubeh7_v1-9-0_v1.9.0.zip
●KEIL开发工具:MDK535.EXE
●STM32H7的KEIL安装包:Keil.STM32H7xx_DFP.2.7.0.pack
●串口数据绘图软件:UARTPLOT
●示波器:本实验我们使用硬木课堂的口袋仪器产品进行测量
2. 调试整体思路
当我们使用FPGA或者STM32模块配合FMSDR模块使用的时候,需要从零开始调试这个电路,逐步完成:硬件好坏判断、8027和MSI001寄存器控制、波形采集、FM解调、滤波器设计和声音回放,这需要我们有一个清晰的调试思路:使用已知来调试未知。
很多同学一上来就调试MSI001收电台,几乎都收到的都是杂音,看到毫无规律的IQ信号无从下手,因为这里可能出错的地方很多:SPI时序错误,寄存器配置错误,ADC配置错误,解调算法错误,滤波算法错误,抽取算法错误,DAC程序错误等等,任意一步出问题都会导致最终结果不对。
更难受的是,即使是正常解调的电台,无论是IQ波形,解调后波形,还是滤波后波形,都是杂乱无章的(如下图),这对指导我们逐步调试没有任何帮助,因为错误的操作导致的波形有可能也是类似的杂乱无章的信号:
正常解调电台的输出波形
正常解调电台的输出波形
因此,我们需要一个已知正确的波形来指导我们逐步完成调试和解调过程,例如解调一个单音调制的FM信号,就可以在每一步都有已知正确的波形作为参考。
解调单音调制的FM信号
单音调制的FM信号
下面,我们使用STM32和口袋仪器m302对FMSDR进行调试示例,给出调试思路。使用肉眼就能够判断正确与否的正弦信号进行调制和解调,步步为营。
1使用8027发出单音FM信号(创建已知待解调信号)
a验证I2C接口:确保操作8027的I2C时序正确,硬件正常工作
a设置寄存器,使8027将DAC_L输入的1KHz正弦波调制到98.5MHz上
b使用频谱仪或者商用收音机确定98.5MHz上存在1KHz的FM调制信号
2使用MSI001解调8027发出的已知单音信号(和已知正确波形逐步对比)
a验证SPI接口:确保操作MSI001的SPI时序正确,硬件正常工作
b验证ADC采集:设置MSI001寄存器,查看单音输入时采集的IQ信号,对比本文中IQ采样的波形,看是否正常,可以调整MSI001的衰减倍数使IQ输出不饱和
c验证FM解调算法:对单音输入的IQ信号进行解调,对比本文中解调后的波形,看解调算法是否正确
d验证DAC播放程序:将滤波后的信号进行抽取以匹配DAC的刷新率,同时从DAC输出观察是否是一个连续的正弦信号,观察噪声情况
e验证数字滤波器:将抽取后的信号经过数字滤波器,对带有噪声的正弦信号进行低通滤波,并从DAC发出,看是否得到一个毛刺较少的连续的正弦信号
3更换频点使用MSI001解调电台(利用第2步得到的正确控制方法和算法解调电台)
a更换MSI001频点为已知电台的频点
b收听广播声音是否正常
c观察采集的IQ信号,调整MSI001的衰减倍数
d调整滤波器参数,听一下是否对声质有改善
-
寄存器
+关注
关注
31文章
5342浏览量
120325 -
数字滤波器
+关注
关注
4文章
270浏览量
47023 -
STM32
+关注
关注
2270文章
10900浏览量
355916 -
频谱仪
+关注
关注
7文章
340浏览量
36039 -
FPGA开发板
+关注
关注
10文章
122浏览量
31505
发布评论请先 登录
相关推荐
评论