6 通道射频遥控器采用 CC2500 射频收发器模块和 microchip 的 PIC16F1847 微控制器设计。发射器配有 6 个轻触开关、4 个...
如何设计数字调频收音机
接线图
2024年10月20日 19:20 20
admin
机和平板电脑等移动设备即将取代传统电脑。FM 收音机是发展中国家最受欢迎的娱乐渠道之一。这一被遗忘的事实,加上互联网收音机的出现,可能会扼杀 FM 收音机的存在。通常,OEM 会考虑在平板电脑或移动设备上不安装 FM 收音机。然而,大多数大城市仍然有 FM 收音机,而且没有计划在不久的将来淘汰它。
有一种微型插件设备,当连接到手机或平板电脑时,可以为移动设备提供 FM 广播服务。即插即用的 FM 接收器可以使用带有微控制器或 SOC(片上系统)的 FM 接收器芯片构建。微控制器在与平板电脑/移动设备上的 USB 主机通信时充当 USB 设备,并接收频道扫描、频道更改或设置输出功率水平等操作的命令。这种总线供电的即插即用 FM 接收器配件可以收听本地 FM 频道,同时消耗的电量远低于移动宽带收音机(互联网收音机)所需的电量。
FM 收音机接收器
FM 收音机接收器芯片提供 70-108 MHz 的全球覆盖范围,适用于美国/欧盟 (87.5-108 MHz)、日本 (76-90 MHz) 和中国 (76- 108 MHz)。通常,FM 收音机接收器能够以 50、100 或 200 kHz 的步长调谐频率。FM 收音机还可以支持无线电数据系统 (RDS)/无线电广播数据系统 (RBDS) 功能,这些功能完全由主机编程。
除了传输音频外,RDS 还用于接收文本信息。这可能包括歌曲名称、正在播出的节目名称或要显示的快讯。在紧急情况下,RDS 可用于传输关键信息。
频段扫描是一种方法,通过这种方法,FM 收音机芯片会扫描整个 FM 频段以查找可用的收音机频道。然后,收音机会将最强的频道频率存储在其内部存储器中,主机微控制器或 SOC 可以读取这些频率。
存储频道后,有三种方法可以调到特定频道:
预设调谐:在此方法中,FM 接收器的调谐频率设置为主机定义的某个频道。
搜索调谐:在此方法中,接收器自动以增加(向上搜索)或减少(向下搜索)频率方向搜索下一个可用的有效频道。
步进调谐:在此方法中,接收器简单地以频率增加的顺序(向上)或减少的顺序(向下)逐个频道地步进。
目前大多数无线电接收器芯片都使用标准协议(如 I2C和SPI)与主机通信。无线电接收器芯片还会在关键事件发生时生成中断,以引起主机注意,例如:
当 RSSI(接收信号强度指示器)值低于阈值水平时,信号质量较差
单声道到立体声的转换(反之亦然)
已获取 RDS 同步
RDS 同步丢失
RDS 缓冲区已满
由于此嵌入式系统在电池供电的设备上运行,因此高效的电源管理至关重要。无线电接收器芯片支持由 SOC 控制的各种电源模式,以延长电池寿命。因此,接收器芯片支持以下电源模式:
关机:在此模式下,电源关闭,所有内部调节器均被禁用。
断电:电源打开,但内部调节器仍被禁用。
待机:调节器正常工作,无线电模式保持不变。
FM 收音机配件实现 图 2
当 FM 收音机收到锁定特定频率的命令时,它会在特定引脚上输出模拟音频。来自 FM 收音机接收器的模拟输出由 SOC 进一步处理,数字化音频通过 USB 传输到平板电脑。FM 收音机芯片运行所需的电源来自 USB 总线。大多数 FM 收音机芯片所需的电流通常为几毫安甚至更少,电压为 1.8V。这完全在 USB 总线的能力范围内,也是便携式设备可以接受的水平。
SOC 中需要以下资源来实现无线电配件:
放大器
ADC(模数转换器)
通信协议 (I2C / SPI)
USB 接口
过滤块
通常,FM 收音机芯片输出的音频信号的幅度约为 100mV。放大器用于放大从 FM 接收器获得的模拟音频,然后将其馈送到 SOC 中的 ADC。模拟音频输出在通过 PGA(可编程增益放大器)后强度会增加,如框图所示。这确保了 ADC 的整个输入范围都得到利用,从而在 FM 收音机芯片的输出端忠实地再现音频。也可以使用输入范围较小的 ADC 将信号数字化。但是,信号的幅度越小,就越容易受到系统噪声的影响。
ADC
(模拟数字转换器)以 44.1 kHz 的速率对放大器的模拟输出进行采样,并将其转换为 16 位数字值。采样率选择为 44.1 kHz,这符合奈奎斯特原理,该原理规定采样频率必须至少为最大工作频率的两倍。
通信协议
是一种标准协议,例如 I 2 C 或 SPI,用于将 SOC 与 FM 接收器连接起来。如果使用 I 2 C,SOC 将充当主机,而无线电接收器芯片将充当从机,数据速率为 100/400 kHz。可以通过 I 2 C 总线从 I 2 C 主机向 FM 接收器芯片发出更改频道或扫描 FM 波段的命令。FM 接收器芯片能够解码预定义命令以执行各种任务。如果使用 RDS,则控制器可以使用 I 2 C接口从 FM 接收器读取接收到的数字信息。可以通过 I 2 C从 FM 无线电接收器读取其他状态信息(例如 RSSI),并将其显示在平板电脑或 PC 上。
DMA
(直接内存访问)在许多微控制器中,DMA 是一项强大的功能,有助于卸载内存位置之间的数据传输以提高性能。当 CPU 处理其他关键任务时,DMA 可用于将转换后的数字值从 ADC 传输到内存或直接传输到 USB。
USB
用于将主机平板电脑与 SOC 连接起来。USB 中断端点用于接收来自主机的各种命令,例如频道扫描、频道增加、频道减少等。请注意,如果命令大小较小,则可以使用 USB 设备上的控制端点来传输命令。可以使用控制端点本身来发送命令。命令可以作为供应商定义的命令发送;但是,在控制端点上,一个 USB 数据包最多可以发送 8 个字节的数据。从 ADC 获得的 44.1 kHz 数字数据使用等时 USB 传输模式传输到主机。等时传输是这种传输的理想选择,因为它能够保持一致的交付时间,因为它具有保证的延迟、分配的总线带宽以及缺乏错误校正和握手。请注意,错误是通过 CRC 字段检测到的,但不会被纠正。偶尔的数据错误或传输丢失不会被人耳察觉;需要频繁停止才能达到注意的程度。由于没有错误校正,即使存在包含错误的数据包,数据传输也不会停止。微控制器支持同步端点的最大数据包大小为 1023 字节。
提高音频质量
在移动操作系统中,通常有一个专用的媒体服务器或媒体引擎用于播放音频。如果用户需要,可以使用同一个媒体引擎来增强或修改音频的特性。在某些移动处理器中,有专用的 DSP 硬件来实现这一点。
使用媒体引擎或 DSP 会消耗额外的电量、降低性能,并可能对用户体验产生负面影响。另一种方法是在 SOC 中处理音频,然后通过 USB 将处理后的音频传输到主机平板电脑。平板电脑只需在其扬声器上播放此音频即可。
可以使用 SOC 中的资源以“低音”和“高音”控制的形式为用户提供对音频质量的更精细控制。这可以通过在 Cypress Semiconductor 生产的 PSoC 3 等设备中使用 DFB(数字滤波器块)来实现。DFB 块接收数字输入数据并输出处理后的数字数据。在此应用中,可以使用 DMA 将数据流式传输到 DFB,根据所需的音频质量进行过滤,然后通过 USB 发送以进行播放。
音频所需的质量由 GUI(图形用户界面)控制。GUI 将提供类似于音乐播放器中均衡器的界面。整个音频频率范围可以分为离散频带。更改 GUI 上控件的位置后,一组新系数将加载到 DFB 上。这些系数将改变每个频带的增益,从而改变输出音频的质量。
主机应用程序
主机运行一个应用程序,作为控制无线电接收器的前端。如果主机运行的是 Android 操作系统,则可以使用标准 Java 和 Android 库创建一个简单的 GUI。在 Windows 平板电脑上,一个简单的 C# GUI 就可以完成这项工作。提供按钮等控制对象来选择频道、增加或减少频道位置等。
Microsoft Windows 操作系统中的 DirectSound 驱动程序与 USB 的同步传输模式配合使用,将音频传输到扬声器。此功能在 Windows 7 操作系统上也可用。专为平板电脑设计的 Windows 8 操作系统的演进支持 GUI 和音频驱动程序,没有任何变化。Android 平板电脑目前不支持同步传输。Apple 的 iPad 和其他一些 iOS 设备具有内置 USB 主机,可以使用同步传输进行音频播放。
Windows 中的前端主机应用程序/Windows 窗体应用程序用于根据用户请求生成事件,例如:
请求频道扫描
渠道增值请求
请求通道减量
向接收器请求 RSSI
现代 SOC(如 PSoC 3)可用作即插即用 FM 收音机配件的单芯片实现。模拟音频的放大、数字化、滤波、传输到主机以及 FM 接收器的控制均可高效处理。这种总线供电设备可在不使用时以低功耗模式运行,例如 FM 接收器和 SOC 均支持的待机和断电模式,从而证明在平板电脑等电池供电的主机中非常高效。
有一种微型插件设备,当连接到手机或平板电脑时,可以为移动设备提供 FM 广播服务。即插即用的 FM 接收器可以使用带有微控制器或 SOC(片上系统)的 FM 接收器芯片构建。微控制器在与平板电脑/移动设备上的 USB 主机通信时充当 USB 设备,并接收频道扫描、频道更改或设置输出功率水平等操作的命令。这种总线供电的即插即用 FM 接收器配件可以收听本地 FM 频道,同时消耗的电量远低于移动宽带收音机(互联网收音机)所需的电量。
FM 收音机接收器
FM 收音机接收器芯片提供 70-108 MHz 的全球覆盖范围,适用于美国/欧盟 (87.5-108 MHz)、日本 (76-90 MHz) 和中国 (76- 108 MHz)。通常,FM 收音机接收器能够以 50、100 或 200 kHz 的步长调谐频率。FM 收音机还可以支持无线电数据系统 (RDS)/无线电广播数据系统 (RBDS) 功能,这些功能完全由主机编程。
除了传输音频外,RDS 还用于接收文本信息。这可能包括歌曲名称、正在播出的节目名称或要显示的快讯。在紧急情况下,RDS 可用于传输关键信息。
频段扫描是一种方法,通过这种方法,FM 收音机芯片会扫描整个 FM 频段以查找可用的收音机频道。然后,收音机会将最强的频道频率存储在其内部存储器中,主机微控制器或 SOC 可以读取这些频率。
存储频道后,有三种方法可以调到特定频道:
预设调谐:在此方法中,FM 接收器的调谐频率设置为主机定义的某个频道。
搜索调谐:在此方法中,接收器自动以增加(向上搜索)或减少(向下搜索)频率方向搜索下一个可用的有效频道。
步进调谐:在此方法中,接收器简单地以频率增加的顺序(向上)或减少的顺序(向下)逐个频道地步进。
目前大多数无线电接收器芯片都使用标准协议(如 I2C和SPI)与主机通信。无线电接收器芯片还会在关键事件发生时生成中断,以引起主机注意,例如:
当 RSSI(接收信号强度指示器)值低于阈值水平时,信号质量较差
单声道到立体声的转换(反之亦然)
已获取 RDS 同步
RDS 同步丢失
RDS 缓冲区已满
由于此嵌入式系统在电池供电的设备上运行,因此高效的电源管理至关重要。无线电接收器芯片支持由 SOC 控制的各种电源模式,以延长电池寿命。因此,接收器芯片支持以下电源模式:
关机:在此模式下,电源关闭,所有内部调节器均被禁用。
断电:电源打开,但内部调节器仍被禁用。
待机:调节器正常工作,无线电模式保持不变。
通电:这是正常运行模式,其中所有调节器均已启用,无线电完全正常工作。
第一级是模拟信号处理级,将 RF 天线信号转换为低 IF(中频)数字信号。AGC(自动增益控制)单元将 LNA(低噪声放大器)保持在其线性工作范围内。混频器用于将接收到的 RF 信号下变频为低 IF 信号。ADC 将信号转换为数字格式。FM 解调在数字域中完成。数字信号处理器还处理 RDS 数据。FM 收音机配件实现 图 2
显示了使用通用 FM 收音机芯片简单实现的完整 FM 系统的框图:
随着现代可编程 SOC 的出现,除了一些无源元件外,无需任何其他外部元件即可实现完整的设计。SOC 通过 I 2 C 端口发送命令并接收来自 FM 收音机芯片的状态消息。SOC 通过现有的 USB 接口连接到平板电脑。平板电脑上的前端使用应用程序来访问 FM 收音机以扫描和选择频道。当 FM 收音机收到锁定特定频率的命令时,它会在特定引脚上输出模拟音频。来自 FM 收音机接收器的模拟输出由 SOC 进一步处理,数字化音频通过 USB 传输到平板电脑。FM 收音机芯片运行所需的电源来自 USB 总线。大多数 FM 收音机芯片所需的电流通常为几毫安甚至更少,电压为 1.8V。这完全在 USB 总线的能力范围内,也是便携式设备可以接受的水平。
SOC 中需要以下资源来实现无线电配件:
放大器
ADC(模数转换器)
通信协议 (I2C / SPI)
USB 接口
过滤块
通常,FM 收音机芯片输出的音频信号的幅度约为 100mV。放大器用于放大从 FM 接收器获得的模拟音频,然后将其馈送到 SOC 中的 ADC。模拟音频输出在通过 PGA(可编程增益放大器)后强度会增加,如框图所示。这确保了 ADC 的整个输入范围都得到利用,从而在 FM 收音机芯片的输出端忠实地再现音频。也可以使用输入范围较小的 ADC 将信号数字化。但是,信号的幅度越小,就越容易受到系统噪声的影响。
ADC
(模拟数字转换器)以 44.1 kHz 的速率对放大器的模拟输出进行采样,并将其转换为 16 位数字值。采样率选择为 44.1 kHz,这符合奈奎斯特原理,该原理规定采样频率必须至少为最大工作频率的两倍。
通信协议
是一种标准协议,例如 I 2 C 或 SPI,用于将 SOC 与 FM 接收器连接起来。如果使用 I 2 C,SOC 将充当主机,而无线电接收器芯片将充当从机,数据速率为 100/400 kHz。可以通过 I 2 C 总线从 I 2 C 主机向 FM 接收器芯片发出更改频道或扫描 FM 波段的命令。FM 接收器芯片能够解码预定义命令以执行各种任务。如果使用 RDS,则控制器可以使用 I 2 C接口从 FM 接收器读取接收到的数字信息。可以通过 I 2 C从 FM 无线电接收器读取其他状态信息(例如 RSSI),并将其显示在平板电脑或 PC 上。
DMA
(直接内存访问)在许多微控制器中,DMA 是一项强大的功能,有助于卸载内存位置之间的数据传输以提高性能。当 CPU 处理其他关键任务时,DMA 可用于将转换后的数字值从 ADC 传输到内存或直接传输到 USB。
USB
用于将主机平板电脑与 SOC 连接起来。USB 中断端点用于接收来自主机的各种命令,例如频道扫描、频道增加、频道减少等。请注意,如果命令大小较小,则可以使用 USB 设备上的控制端点来传输命令。可以使用控制端点本身来发送命令。命令可以作为供应商定义的命令发送;但是,在控制端点上,一个 USB 数据包最多可以发送 8 个字节的数据。从 ADC 获得的 44.1 kHz 数字数据使用等时 USB 传输模式传输到主机。等时传输是这种传输的理想选择,因为它能够保持一致的交付时间,因为它具有保证的延迟、分配的总线带宽以及缺乏错误校正和握手。请注意,错误是通过 CRC 字段检测到的,但不会被纠正。偶尔的数据错误或传输丢失不会被人耳察觉;需要频繁停止才能达到注意的程度。由于没有错误校正,即使存在包含错误的数据包,数据传输也不会停止。微控制器支持同步端点的最大数据包大小为 1023 字节。
提高音频质量
在移动操作系统中,通常有一个专用的媒体服务器或媒体引擎用于播放音频。如果用户需要,可以使用同一个媒体引擎来增强或修改音频的特性。在某些移动处理器中,有专用的 DSP 硬件来实现这一点。
使用媒体引擎或 DSP 会消耗额外的电量、降低性能,并可能对用户体验产生负面影响。另一种方法是在 SOC 中处理音频,然后通过 USB 将处理后的音频传输到主机平板电脑。平板电脑只需在其扬声器上播放此音频即可。
可以使用 SOC 中的资源以“低音”和“高音”控制的形式为用户提供对音频质量的更精细控制。这可以通过在 Cypress Semiconductor 生产的 PSoC 3 等设备中使用 DFB(数字滤波器块)来实现。DFB 块接收数字输入数据并输出处理后的数字数据。在此应用中,可以使用 DMA 将数据流式传输到 DFB,根据所需的音频质量进行过滤,然后通过 USB 发送以进行播放。
音频所需的质量由 GUI(图形用户界面)控制。GUI 将提供类似于音乐播放器中均衡器的界面。整个音频频率范围可以分为离散频带。更改 GUI 上控件的位置后,一组新系数将加载到 DFB 上。这些系数将改变每个频带的增益,从而改变输出音频的质量。
主机应用程序
主机运行一个应用程序,作为控制无线电接收器的前端。如果主机运行的是 Android 操作系统,则可以使用标准 Java 和 Android 库创建一个简单的 GUI。在 Windows 平板电脑上,一个简单的 C# GUI 就可以完成这项工作。提供按钮等控制对象来选择频道、增加或减少频道位置等。
Microsoft Windows 操作系统中的 DirectSound 驱动程序与 USB 的同步传输模式配合使用,将音频传输到扬声器。此功能在 Windows 7 操作系统上也可用。专为平板电脑设计的 Windows 8 操作系统的演进支持 GUI 和音频驱动程序,没有任何变化。Android 平板电脑目前不支持同步传输。Apple 的 iPad 和其他一些 iOS 设备具有内置 USB 主机,可以使用同步传输进行音频播放。
Windows 中的前端主机应用程序/Windows 窗体应用程序用于根据用户请求生成事件,例如:
请求频道扫描
渠道增值请求
请求通道减量
向接收器请求 RSSI
对于 Windows,可以使用 Visual Studio 中的 C# 开发应用程序。可以使用标准库或 SOC 制造商提供的自定义库访问 USB 设备及其端点。该库提供通过 USB 接口访问 SOC 的方法和对象。可以创建 Windows 窗体来发送命令并显示状态信息,如下所示。
可以添加按钮等控制对象来实现各种操作,例如频道扫描、下一频道、上一频道和音量控制。除此之外,还可以以 .WAV 文件的形式录制数字音频。可以为 Android OS 和 Apple 的 iOS 开发类似的应用程序。现代 SOC(如 PSoC 3)可用作即插即用 FM 收音机配件的单芯片实现。模拟音频的放大、数字化、滤波、传输到主机以及 FM 接收器的控制均可高效处理。这种总线供电设备可在不使用时以低功耗模式运行,例如 FM 接收器和 SOC 均支持的待机和断电模式,从而证明在平板电脑等电池供电的主机中非常高效。
相关文章
发表评论