「Geek生活指南」系列是以记录极客生活为主题
达到向大众推广极客文化,普及技术知识的目的

难度指数:**

SDR是什么?

SDR为英文Software-Defined Radio的简写,直译为“软件定义无线电”.基本的SDR系统可以由装备有声卡或其他模数转换器的个人计算机组成.大量的信号处理被交给通用处理器,而不是在专用硬件(电子电路)中完成.它可以仅仅基于所使用的软件来接收和发送广泛不同的无线电协议.

如何用sdr设备听广播

一般的sdr设备是比较昂贵的,但是基于Realtek RTL2832U的电视棒是可以用作简易的SDR的.像下面这个,不到50元.

DAT

rtl_fm是我们将用的工具, 它是rtl-sdr项目中的一个工具. 可以用个人电脑来接受fm的信号.同时可以很有效的在基于ARM的开发板上运行,例如树莓派.所以,可以用一个200元的计算机和50块的电视棒来搭建一个简易SDR设备.而对计算能力更强的Mac或Windows来说,更是不在话下.

这篇指南,我将用Soxplay命令来播放电台.Sox可以在Linux,OSX,Windows平台运行良好.Sox会自动处理数据,使声卡畅快运行,同时调整输出声音,保持声音清晰.

指南最后会附上如何在Mac上安装rtl_fm和sox这两个工具

在开始之前,先确定你的电视棒正常运行.rtl_test是用来测试硬件状态的,会返回一些硬件信息,确保没有错误返回.

这里提示一点,rtl_fm和sox必须使用同一频率的数据,这是最容易出错的地方.[其实所有过程的很简单]

这是系统搭建完的样子:

IMG_2099

FM97.4

FM974是北京音乐广播的频率,输入到rtl_fm-f参数下,在命令行中输入一下命令即可听到974音乐广播:

rtl_fm -M wbfm -f 97.4M | play -r 32k -t raw -e s -b 16 -c 1 -V1 -

结尾

这是SDR指南的第一个,其实电视棒可接受的频率范围已经很广了,可以做很多有意思的事,后续会提供更多关于SDR的指南.
相关代码和链接

·END·

觉得本文有帮助?请分享给更多人