APP下载

三波段广播接收机的研究及软件实现

2023-02-10王京袁三男

电子设计工程 2023年3期
关键词:调频接收机串口

王京,袁三男

(上海电力大学电子与信息工程学院,上海 200000)

近几年来,随着科学技术的进步及无线通信技术的快速发展[1],在通信领域,各种新型产品以其低成本、高集成度、通信高覆盖、性能稳定等特点,不断冲击着国内外市场[2]。无线广播作为一种重要的通信手段,依靠自身各方面的优越性能,被应用于多个领域[3]。在信息及网络化时代的背景下,无线广播的使用,极大地方便和改善了人民的生活[4]。在无线广播通信技术发展的同时,其自身也具有接收弱信号能力差[5]、多径效应衰落、信号易受干扰等缺点[6]。因此,无线广播通信对接收设备的性能具有很高的要求,需要达到灵敏度高、选择性强、高保真等性能指标要求[7]。

该文对Silicon Labs 公司的无线广播接收芯片SI4735 展开研究,通过软件设计实现FM、AM、SW 信号的接收[8],在PC 端通过串口助手可以设置接收机的频率,读取频率值、信号强度、信噪比等性能参数,工作稳定可靠,可以达到接收信号能力强、不易受干扰、信噪比高等性能要求。

1 整体设计方案

如图1 所示,系统以STM32f405 处理器为主控芯片[9],以SI4735 为无线广播接收芯片,实现对FM、AM、SW 广播信号的接收功能。

图1 系统框架图

系统工作流程:在PC 端,通过串口调试助手向主控制器发送设置频率或读取当前频率状态参数信息的命令,主控制器收到相关命令后通过IIC 总线向接收机发送有关命令字,接收机执行完成后将状态响应相关参数发送给主控制器,主控制器收到参数后再发送到PC 端,同时所接收到的广播通过音频播放器进行播放。

2 无线广播接收机的设计方案

2.1 SI4735 芯片简介

SI4735 是一款数字无线接收、模拟调谐芯片,集成了完整的广播调谐器和从天线输入到数字音频输出的接收机功能。该芯片利用了Silicon Labs 广播已验证的数字低中频架构,为消费者提供了一个性价比高的数字音频平台,具有较高的TDMA 抗噪声能力[10],以及优良的无线电性能和高保真的优质音频输出功能。SI4735 芯片具有很高的集成度,在开发板中所占空间很小,外围设备电路设计也非常简单,极大地降低了成本[11]。

SI4735 芯片内部集成了优越的算法,提供了可靠的控制接口,包括数字调谐、自动校准、搜索频率算法、高级音频处理算法等。该芯片支持FM、AM、SW 信号的接收,具备数字调谐、2 总线/3 总线控制接口、立体声处理、数字信号/模拟信号输出等功能[12]。

2.2 SI4735工作原理

SI4735 芯片可以工作在FM、AM、SW 的接收模式下。工作在FM 接收模式时,通过FM 接收天线捕捉有用的频段信号,通过FMI 引脚接入低声放大器(LNA)减小噪声,提高输出信号的信噪比。内部集成AGC 电路用来控制LNA 的增益,优化感知有效信号的灵敏度,提高抗干扰能力和信号传输质量,然后信号传输到乘法器,模数转换后进入DSP 数字信号处理器,处理完成后选择数字信号输出,或选择数模转换进行模拟信号输出。工作在AM 接收模式时,通过AM 回路天线捕捉有用的频段信号,信号处理流程与FM 接收模式相同,最后以模拟或数字的方式进行信号输出[13]。工作在SW 接收模式时,SI4735 使用FM 天线捕捉短波信号,然后这些信号以宽带配置方式直接引入AMI 引脚,信号处理流程与FM 接收模式相同,最后以模拟或数字的方式进行信号输出。工作原理如图2 所示。

图2 SI4735原理图

2.3 SI4735接收模式

SI4735 无线广播接收机集成度高,具有多种不同信号的接收模式,接收模式主要有FM 接收模式、AM 接收模式、SW 接收模式。

1)FM 接收模式:SI4735 的FM 接收功能是基于Silicon Labs 验证的SI4700/01 调频调谐器,采用数字低中频架构,可以进行信道选择、FM 解调和立体声音频处理,从而实现比传统模拟体系结构更好的性能,支持全球FM 广播频段(64~108 MHz)[14]。

2)AM 接收模式:SI4735 采用数字低中频体系结构,可以实现高精度滤波,提供优异的选择性和信噪比,在调幅波段变化最小。此外,该芯片还提供1 kHz的可调步长,可以实现软静音和通道带宽滤波的功能,能更好地接收较弱的信号,支持全球AM 广播频段(520~1 710 kHz)。

3)SW 接收模式:SI4735 提供了广泛的短波功能,支持SW 广播频段(2.3~26.1 MHz)[15]。

2.4 SI4735总线控制模式

SI4735 提供三种不同类型的总线控制模式:2 线模式、3 线模式、SPI 模式,通过对RST 上升沿上的GPO1 和GPO2/INT 引脚的状态进行采样来选择总线模式。GPO1 引脚连接1 MΩ上拉电阻,GPO2/INT 引脚连接1 MΩ下拉电阻,对两个引脚赋不同的值以选择不同的总线模式,需注意选择完总线模式后芯片会处于下电模式。总线模式选择如表1 所示。

表1 总线模式选择

该方案中三波段广播接收机采用的是2 线模式,2 线模式仅使用SCLK 和SDIO 引脚进行数据传输。如图3 所示,当SDIO 下降而SCLK 高时,主控制器在SDIO 上先发送一个8 位控制字,当SCLK 处于上升边缘时,该控制字被SI4735 捕获,控制字由一个7 位的设备地址和一个读/写位(读=1,写=0)组成,在下一个SCLK 的下降沿时,SI4735 芯片通过驱动SDIO 为低电平确定控制字。在一次2 线事务中,主控制器最多写入8 个数据字节,第一个字节是一个命令,接下来的7个字节是参数,最多读取16个数据字节,这些字节包含来自SI4735 的状态字节和响应数据。当SDIO上升且SCLK为高电平时,2线事务结束。

图3 IIC时序图

SI4735 芯片只响应一个设备地址,但是这个地址可以通过SEN 引脚来改变,当SEN=0 时,7 位设备地址为0010001b;当SEN=1 时,地址为1100011b。

2.5 SI4735控制指令集解析

SI4735 内部集成了强大的软件接口,主控制器通过发送命令字、参数字节、设置属性对接收芯片进行寄存器配置,从而实现SI4735 对广播信号的接收功能。命令字用来控制接收芯片的动作,如上电、下电或调优到某个频率,大小为一个字节,参数是特定于给定命令的,用于修改命令,属性是用于修改设备操作的特殊命令参数的,通常在上电后立即进行配置。

如表2 所示FM_TUNE_FREQ 命令,主控制器向接收芯片发送0x20 命令字、0x00、0x27、0xF6、0x00 参数字节,接收芯片收到命令字以及参数字节后进行调频,接收芯片将接收频率调到102.3 MHz,并使用电容自动调谐,调频完成后向主控芯片发送0x80 的状态响应字节,至此接收芯片调频命令执行完毕。

表2 调频参数配置

3 广播接收机的软件设计方案

三波段广播接收机的软件开发采用比较流行的Keil C51。Keil 提供了包括C 编译器、宏汇编、链接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,通过一个集成开发环境(μVision)将这些部分组合在一起[16]。软件初次安装时需要添加STM32F4xx_DFP 及STM32F4xxFlash 数据包,在程序调试上还需要JTAG 下载器以及若干根杜邦线等。

3.1 主程序工作流程

根据三波段广播接收机需要实现的功能以及SI4735 芯片手册的软件设计要求,在硬件的基础上对程序进行设计,从而完成系统设计的功能。软件设计需要达到的系统功能主要包括三波段广播的接收、通过串口实现频率的更改以及性能参数信息的获取。

主程序流程图如图4 所示,在系统初始化中,主要完成主控芯片STM32f405 的系统时钟初始化、GPIO 引脚初始化、串口初始化、IIC 初始化以及SI4735 芯片初始化等工作;三波段广播接收功能中完成了对FM、AM、SW 广播的接收;串口功能实现了对三波段广播接收机频率的更改以及获取当前频率的状态参数信息。可根据串口返回的状态参数评估接收机的工作性能,以此来修改信噪比、信号强度、软静音等参数的设计,从而达到提高接收机工作性能的目的。

图4 主程序流程图

3.2 SI4735接收机工作流程

如图5、图6 所示,详细介绍了SI4735 接收机的软件设计,设计流程包括FM、AM 以及SW 广播的收听。广播的接收方式有两种,一种是选择默认参数配置,另一种是按照实际工作环境进行寄存器参数配置设计,以提高接收机的工作性能。

图5 FM广播软件设计流程

图6 AM、SW广播软件设计流程

3.2.1 SI4735接收机的上电设计

SI4735 接收机上电具有严格的时序要求,需要根据芯片的供电、复位、提供时钟信号的顺序写入上电命令,否则上电失败。

如图7 所示,首先,提供电压时,需要保证复位管脚一直为低电平;其次,选择总线的工作方式,该方案选择IIC 通信;之后,使复位管脚为高电平;最后写入POWER_UP(0x01)命令并输入时钟信号。上电成功后,SI4735 芯片会通过IIC 发送0x80 的状态字响应。

图7 上电时序图

SI4735 的上电工作同时包括了中断引脚、时钟信号、接收模式及音频输出相关参数的配置。即中断引脚使能化、外部晶振或内部时钟信号的选择、芯片的接收模式、数字音频或模拟音频的输出选择。

3.2.2 SI4735接收机的信噪比参数设计

去加重技术是在信号的接收端将高频分量进行去加重,恢复原来的信号功率分布,同时减小了噪声的高频分量,有效地提高了输出信噪比。SI4735 芯片的设计集成了去加重技术,主控芯片通过发送FM_DEEMPHASIS(0x1100)/AM_DEEMPHASIS(0x3100)命令,启用SI4735 芯片的去加重功能。

SI4735 芯片具有信号滤波器的功能,可以将有用信号与噪声分离,提高了输出信噪比。主控芯片通过发送命令FM_CHANNEL_FILTER(0x1102)/AM_CHANNEL_FILTER(0x3102)启用SI4735 芯片的信号滤波功能。

3.2.3 SI4735接收机的接收信号强度参数设计

基于RSSI 设置立体声与单声道的阈值,以及立体声、单声道的攻击率和释放率。根据实际工作环境中RSSI 的大小,较小值提供较小的攻击或释放,较大值提供较大的攻击或释放,接收机以此来提高接收信号的质量。主控芯片通过发送相关命令字来配置SI4735 接收机接收信号强度的性能。

3.2.4 SI4735接收机的软静音参数设计

配置SI4735 芯片的软静音参数,包括软静音的衰减斜率、最大衰减值以及基于信噪比的阈值。当SI4735 接收频率的信噪比低于所设置的阈值时,SI4735 芯片就会启用软静音功能以提高接收频率的信噪比。

3.2.5 SI4735接收机的调频参数设计

当接收机的有关性能参数配置好后,开始对接收机的调频参数进行配置,包括频率值的大小、调频方式等,该设计方案采用自动调频。在调频过程中,会对调频中断标志位进行轮回检查,当检测到标志位为1,则代表调频完成,此时SI4735 接收机可以正常收听广播。

3.3 串口通信功能设计

PC 端与SI4735 接收机的主控芯片通过RS232串口进行通信,在PC 端可以实现设置三波段某一频率的广播接收功能,以及读取当前频率性能参数信息的功能,包括信噪比、信号强度、频率偏移、频率值等参数信息。

工作流程:SI4735 接收机供电后,在PC 端通过串口调试助手发送设置频率的报文,接收机收到报文后,设置某一频率的广播进行收听,设置成功后将报文发送到PC 端。读取当前频率性能参数信息的功能流程与上述工作流程相同。

4 系统功能测试及结果分析

4.1 上电测试

SI4735 芯片上电成功后,会将上电成功的标志信息位(0x80)通过IIC 总线发送给主控芯片。在Keil 仿真界面的watch window 功能里,可以读取到0x80,从而判断上电成功。

4.2 IIC通信测试

主控芯片与SI4735 芯片之间通过IIC 进行通信,SI4735 芯片收到主控芯片的数据后,会进行ACK=0的状态响应,主控芯片收到了ACK=0 的状态响应,即判断通信成功。

4.3 接收机调频调优测试

当SI4735 接收机完成调频的工作后,会将当前频率的性能参数信息返回给主控芯片,以此来判断当前接收机的工作性能,同时音频播放器播出当前接收广播的节目信息。

4.4 串口功能实现测试

在SI4735接收机收听广播时,PC可以通过串口发送报文,更改波段和频率,在发送的报文中,buf[3]=0x53 代表设置频率功能,buf[4]的0、1、2 分别对应AM、FM、SW 波段的接收,buf[5]、buf[6]分别对应频率的高八位和低八位。当频率更改成功后,串口界面会收到来自主控芯片的报文,0xF5 为接收报文的开始,‘S’(0x53)代表频率更改成功。

对SI4735 接收到的频率广播,PC 还可以通过串口发送报文读取性能参数,buf[3]=0x76 代表读取性能参数功能,主控芯片接收到来自PC 端的报文后,将接收广播的性能参数信息发送到PC 端。

5 结论

文中对三波段广播接收机进行了深入的研究并提出了软件设计方案,通过对系统功能进行测试,接收机不仅实现了三波段广播的接收功能,在PC 端还可以通过串口助手更改频率或读取性能参数,且接收信号的信噪比高、频率稳定、抗干扰性强,提高了广播接收机的工作性能,具有很高的实际使用价值。

猜你喜欢

调频接收机串口
考虑频率二次跌落抑制的风火联合一次调频控制
浅谈AB PLC串口跟RFID传感器的通讯应用
一种宽带低功耗四合一接收机设计
一种面向ADS-B的RNSS/RDSS双模接收机设计
数字接收机故障维修与维护
基于多接收机的圆周SAR欺骗干扰方法
数字电源内部数据传输的串口通信方法实现
USB接口的多串口数据并行接收方法探索
调频发射机技术改造
调频激励器干扰的排除方法