设计并制作一台简易自动接收机,自动搜索并接收 88MHz~108MHz 频率范围内的调频或调幅信号。接收机接收的信号由射频信号源产生,载波频率调节步进为 100kHz,调制信号的频率范围为 300Hz~3400Hz。接收机输出端接 8Ω 负载电阻。自动识别调制方式,解调输出信号用示波器观察,波形应无明显失真。
1. 基本要求
射频信号源载波电平范围为-85dBm~-60dBm。
(1)搜索并解调调频信号。调频信号最大频偏 Δfmax满足 5kHz≤Δfmax≤75kHz,自动搜索解调一个调频信号,要求输出信号电压峰峰值≥0.9V。
(2)搜索并解调调幅信号。调幅信号调制度 m 满足 30%≤m≤60%,自动搜索解调一个调幅信号,要求输出信号电压峰峰值≥0.9V。
(3)解调输出信号幅度自动控制。当调制信号为正弦波时,在基本要求(1)和(2)的测试中,要求输出信号电压峰峰值自动控制在 1V±0.1V。
(4)要求接收机响应时间≤10s。
2. 发挥部分
接收机整机必须采用 5V 单电源供电,工作时供电电流≤500mA。
(1)自动识别单频载波、调频或调幅信号,显示识别结果,并解调出调频或调幅信号。
(2)在基本要求(2)基础上,提高接收机灵敏度,要求搜索并解调载波电平≤-95dBm 的调幅信号。
(3)要求接收机响应时间≤5s。
(4)其他。
(1)接收机输入端采用 SMA 母座接口,用 50Ω 电缆连接至射频信号源。射频信号源应具有射频输出开关功能,以方便测量接收机响应时间。接收机应注意采取屏蔽措施,抑制空间干扰。8Ω 负载电阻及引腿应裸露在外,便于示波器测量。
(2)响应时间是指射频信号源输出开关开启后,接收机搜索解调输出稳定解调信号的时间。
(3)按键启动接收机,自动搜索接收指定频率范围内的信号。
(4)在发挥部分,接收机整机必须采用具有“恒流/恒压”模式自动切换的直流电源单电源供电,供电电压设置为 5V,最大供电电流设置为 500mA;接收机只用一个端口输出解调信号;接收机必须具有一键启动功能,启动后接收机应自动完成全部功能并显示结果,不得人为操控接收机。不满足要求不进行测试。
GPT-4o给出的建议
以下是针对2025年全国大学生电子设计竞赛本科组 F 题:简易自动接收机的完整分析与建议,包括设计平台、注意要点、考查知识点等,适用于3人小组在4天内完成:
任务目标:设计一台能够在 88MHz~108MHz 频段自动搜索、识别并接收调频(FM)或调幅(AM)信号的简易接收机。
功能项目 | 要求说明 |
---|---|
自动搜索信号 | 100kHz 步进搜索调幅/调频信号 |
自动识别调制方式 | 判断为 AM/FM,自动显示 |
自动解调 | 输出正弦波信号,Vp-p ≥ 0.9V,幅度自动控制至 1V±0.1V |
响应时间 | 基本要求:≤10s;发挥部分:≤5s |
输入接口 | SMA,50Ω |
输出接口 | 单端8Ω裸露负载,用于示波器观察 |
模块 | 推荐平台/器件 | 理由 |
---|---|---|
主控 MCU | STM32(如F103)、MSPM0、RP2040 | 控制逻辑简单、ADC丰富、SPI控制外设 |
射频前端 | SI4732(FM/AM接收模块)或 RDA5807 + 外接 AM 电路 | 可自动搜索 + 解调,支持I²C控制 |
音频处理 | LM386 放大 + 自动增益 AGC 电路 | 保证输出波形幅度 |
解调模块 | 模拟频率鉴频/包络检波 或集成式输出 | FM 可用鉴频;AM 可用检波器或芯片集成 |
显示模块 | OLED / 数码管 | 显示频率、识别结果(FM/AM) |
操作接口 | 按键 ×1 | 一键启动搜索与解调流程 |
电源模块 | LDO + 恒压恒流源 + 电源屏蔽 | 满足5V/500mA限制;防干扰 |
[SMA输入]
│
▼
[RF接收模块]
├─ AM 检波(包络检测)
├─ FM 鉴频输出
│
▼
[MCU 控制识别]
├─ 控制搜索频率
├─ 自动判断调制类型
├─ 调整AGC/音量输出
│
▼
[音频处理 + AGC]
│
▼
[8Ω负载输出] ── 示波器
MCU 控制接收芯片频率步进(如 RDA5807 → I²C控制);
每步监测信号强度(RSSI)或音频幅值变化,判断是否有信号;
若检测到信号,继续解调识别是否为FM/AM。
方案A(音频频谱分析):
FM 解调输出为连续音频;
AM 解调输出为幅度变化音频,包络规律性更强;
可用 ADC + FFT 识别频率特征;
方案B(信号特征):
FM 输出带有频偏特征;
AM 输出信号具有调制度变化特征;
可通过峰峰值与平均值之比判断。
调制类型 | 解调方式 |
---|---|
FM | 斜率检波 / PLL鉴频 / 芯片集成输出 |
AM | 包络检波 + 滤波 / 芯片解调输出 |
使用 AGC(自动增益控制)电路,或 MCU 动态调节输出增益(如控制LM386放大倍数);
MCU 检测音频峰值,并微调输出幅度至 1V ± 0.1V。
要点 | 建议说明 |
---|---|
射频信号匹配 | 使用 50Ω输入,屏蔽接收器外壳,避免串扰 |
输出负载 | 裸露8Ω电阻,安装稳固防接触不良 |
MCU采样频率 | 音频ADC ≥8kHz以上,保障 FFT 精度 |
音频滤波 | 解调后使用低通(3.4kHz)+高通(300Hz)滤波器 |
软件结构 | 主循环状态机:启动→搜索→识别→锁定→输出 |
响应时间控制 | 全流程≤10s(发挥要求为≤5s),频率步长与判断时间平衡 |
类型 | 技能点内容 |
---|---|
模拟电路 | 包络检波、斜率检波、放大电路设计 |
数字控制 | MCU频率步进控制、模式识别逻辑 |
通信技术 | AM/FM调制解调原理、频谱分析 |
信号处理 | ADC采样、FFT谱分析(用于调制识别) |
嵌入式系统 | MCU与射频芯片I²C/SPI通信、按键与显示控制 |
电源管理 | 5V恒压+500mA限流+单端供电系统 |
EMC设计 | 射频接收器屏蔽、接地、信号隔离 |
工艺规范 | SMA接头、裸露输出端、外壳布局合理 |
成员 | 主要任务 |
---|---|
成员A | 射频电路设计、AM/FM检波与调制识别 |
成员B | MCU程序开发、自动搜索流程控制、ADC音频采集与分析 |
成员C | 音频放大与AGC、测试方案设计与报告撰写 |
天数 | 工作内容 |
---|---|
第1天 | 明确功能 → 选择芯片 → 射频/音频电路搭建 |
第2天 | MCU控制 → 搜索逻辑实现 → 显示测试 |
第3天 | 音频放大与AGC → 自动识别调试 |
第4天 | 联调测试 → 响应时间优化 → 报告撰写 |
以下是适用于**简易自动接收机(F题)**的 MCU 控制代码框架(以 STM32 为例,MSPM0 可类似移植),实现 自动搜索频率 → 检测信号 → 解调识别 AM/FM → 输出音频控制 的完整主流程:
功能 | 实现方式 |
---|---|
搜索频率 | MCU 通过 I²C 控制接收芯片(如 RDA5807) |
检测有无信号 | 读取 RSSI/音频幅度判断信号存在性 |
解调 | 芯片集成解调或外部模拟电路(FM/AM) |
调制识别 | 分析音频信号包络 / 高频成分判断 |
AGC控制 | 可调放大器+ADC反馈调节音频幅度 |
输出控制 | 到扬声器或负载,波形受控在1V±0.1V |
int main(void) {
System_Init(); // 初始化时钟/GPIO/ADC/I2C/Timer
RF_Module_Init(); // 初始化接收模块(RDA5807/SI4732)
while (1) {
if (Button_Pressed()) {
AutoScanAndDetect(); // 主流程控制
}
}
}
void AutoScanAndDetect(void) {
uint32_t freq;
for (freq = START_FREQ; freq <= END_FREQ; freq += STEP_FREQ) {
RF_SetFrequency(freq); // 设置频率
Delay_ms(100); // 等待锁相
if (IsSignalDetected()) { // 判断是否有信号
if (IsAMSignal()) {
Display("AM: %.1f MHz", freq / 1e6);
SetOutputPath(AM_MODE);
} else {
Display("FM: %.1f MHz", freq / 1e6);
SetOutputPath(FM_MODE);
}
break; // 找到即停止搜索
}
}
}
bool IsSignalDetected(void) {
uint8_t rssi = RF_GetRSSI(); // 读取接收信号强度
return (rssi > RSSI_THRESHOLD);
}
方式一:通过 ADC 分析输出音频包络
bool IsAMSignal(void) {
int peak = 0, average = 0;
for (int i = 0; i < SAMPLE_COUNT; i++) {
int val = ADC_Read();
if (val > peak) peak = val;
average += val;
}
average /= SAMPLE_COUNT;
float mod_index = (float)(peak - average) / average;
// AM信号包络调制度更明显
return mod_index > 0.5;
}
方式二:使用 FFT 计算频谱能量分布(如需更复杂判断)
void AGC_Adjust(void) {
int val = ADC_ReadPeakToPeak();
if (val > 1.2V) {
Reduce_Gain();
} else if (val < 0.8V) {
Increase_Gain();
}
// 目标控制音频幅度在 1.0±0.1V
}
void RF_SetFrequency(uint32_t freq_khz) {
uint16_t channel = (freq_khz - 87000) / 100; // 100kHz步进
Write_I2C_RDA5807(CHANNEL_REGISTER, channel);
}
#define START_FREQ 88000 // 88.0 MHz
#define END_FREQ 108000 // 108.0 MHz
#define STEP_FREQ 100 // 100 kHz
#define RSSI_THRESHOLD 30 // 接收信号强度阈值
#define SAMPLE_COUNT 128
文件名 | 功能 |
---|---|
main.c |
主流程与入口函数 |
rf_control.c/h |
RF设置、I2C通信、频率控制 |
signal_detect.c/h |
RSSI读取、调制度判断、AM/FM识别 |
audio_agc.c/h |
音频放大自动调节模块 |
ui_display.c/h |
OLED或串口输出显示频率与调制类型 |
adc.c/h |
ADC初始化与音频采样支持 |
以下是针对全国大学生电子设计竞赛 F 题“简易自动接收机”的两个关键功能模块的详细设计建议:
将音频信号的输出控制在 1.0V±0.1V(Vp-p)
保证不同频率、不同调制度、不同场强下输出一致
不影响波形失真和响应速度
模块 | 功能 |
---|---|
前置放大 | 运放(如 LM358)预放 |
检波器 | 峰值检测或整流滤波 |
控制环路 | 滤波后输出电压控制可变增益放大器(如光耦、JFET) |
放大器 | VCA(可控增益运放,如 LM13700)或 光耦式增益器 |
[音频输入] → [预放大] → [VCA] → [输出]
↑
[整流+低通滤波]
↑
[控制反馈]
响应较快,可纯模拟实现
需调节时间常数避免震荡或跟随太快
MCU 定时采样音频输出(ADC)
计算一段时间内的峰值或有效值
根据偏差判断当前信号是否过强/过弱
控制放大器增益(如改变电阻档位 / 控制数字电位器)
// 示例:AGC调节函数(简化)
void AGC_Adjust(void) {
int16_t peak = ADC_ReadPeak();
if (peak > 1.1V) {
Gain--; // 减小放大倍数
} else if (peak < 0.9V) {
Gain++; // 增大放大倍数
}
Set_Gain(Gain); // 控制数字增益元件
}
MCP41100 数字电位器(SPI控制)
DG412 多路模拟开关切换电阻档
TLC271 可调增益放大器(搭配可调电阻)
AM信号的音频是包络提取后的信号,具有明显的幅度摆动
FM信号经鉴频输出后,波形幅度较稳定(幅度小变化)
MCU 采样音频波形(ADC,建议 ≥8kHz)
采集一段时间的 N 个样本
计算峰值、均值、包络调制度
float mod_index = (peak - mean) / mean;
if (mod_index > 0.4) {
SignalType = AM;
} else {
SignalType = FM;
}
指标 | AM信号 | FM信号 |
---|---|---|
峰值 | >1.2V | ~1.0V |
均值 | 0.5~0.7V | ~0.5V |
mod_index | ≥0.4~0.6 | ≤0.2 |
对音频信号进行 FFT 分析
观察主频能量分布是否集中(FM)或多峰(AM)
更复杂但更鲁棒(适合播放音频广播时)
方式 | 精度 | 实现难度 | 推荐性 |
---|---|---|---|
幅度包络调制度 | ⭐⭐⭐ | ⭐ | ✅ 高推荐 |
频谱能量特征 | ⭐⭐⭐⭐ | ⭐⭐⭐ | 可选(需FFT支持) |
AGC推荐用 MCU + 可调电阻 或 模拟光耦反馈方式;
调制度识别推荐使用“幅度波动 + 均值”分析法;
可结合 OLED/串口输出识别结果和频率信息;
保持采样稳定性,建议用硬件 ADC 采样 + 滤波平滑处理。
以下是针对全国大学生电子设计竞赛 F 题《简易自动接收机》的项目报告模板(Word结构化),适用于3人团队在4天完成评审材料准备。内容已涵盖功能、设计方案、理论依据、测试数据等部分,便于直接填充与提交:
队伍编号:XXX
队员姓名:张三、李四、王五
所在院校:XXX大学
比赛时间:2025年7月30日~8月2日
简要描述任务背景与功能需求,如:
本项目设计一个能够在 88MHz~108MHz(可扩展至包括AM频段)范围内自动搜索、识别并解调无线调频/调幅信号的接收装置,能够将有效信号输出至示波器观察,支持自动识别调制方式(AM/FM)、自动控制音频输出幅度等功能。装置响应时间快,电路结构简单、便于复现。
(插入结构图,参考你前面生成的系统结构图)
模块 | 功能说明 |
---|---|
RF接收模块 | 接收射频信号并转换为基带音频(AM/FM) |
MCU控制模块 | 控制频率搜索、调制识别、AGC控制 |
音频处理与放大 | 放大音频并控制Vp-p稳定在1.0±0.1V |
调制识别模块 | 识别调幅或调频调制方式 |
显示模块(可选) | OLED/数码管输出频率与调制方式信息 |
操作界面 | 按键启动一次搜索并输出 |
采用模块:如 SI4732/RDA5807 模块;
频率控制方式:I²C/SPI;
选择原因:可解调 FM / AM,接口简单;
控制器型号:STM32F103 / MSPM0L1306;
接口:ADC、I²C/SPI、PWM;
功能:频率搜索控制、RSSI读取、调制识别判断;
放大器型号:LM386 / NE5532;
AGC控制方式:数字可调电阻 / 模拟反馈;
输出调节目标:Vp-p 控制在 1.0V ± 0.1V;
按键模块:启动一次搜索;
显示模块:OLED显示当前频率和调制方式(可选);
电源模块:DC 5V 输入 + 屏蔽 + 滤波 + 限流;
(插入前面生成的控制流程图)
频率步进:100kHz;
RSSI判断门限:30dB;
搜索范围:88MHz~108MHz;
搜索完成时间控制 ≤10s(发挥 ≤5s);
方式:通过音频幅度包络提取,计算调制度;
AM:mod_index ≥ 0.4;
FM:mod_index ≤ 0.2;
可选增强:FFT识别频谱结构;
音频信号采样判断幅度;
控制增益放大器调整音频输出稳定在 1V ±0.1V;
控制周期:100ms~200ms,避免震荡;
项目 | 参数 |
---|---|
输入接口 | SMA,信号源/天线输入 |
输出接口 | 单端输出至 8Ω 负载(示波器) |
电源输入 | 5V DC,最大 500mA |
测试项目 | 结果/数据 | 是否合格 |
---|---|---|
响应时间 | 3.8s(FM)、4.5s(AM) | √ |
AM识别准确率 | 100%(5次) | √ |
FM识别准确率 | 100%(5次) | √ |
输出幅度控制 | 0.95V~1.05V(自动调整) | √ |
多频点接收能力 | 正常接收5个不同频点 | √ |
使用自动调制度识别方式,可靠性高;
模拟AGC闭环设计响应快、控制简单;
系统可扩展 AM 波段接收,适配更多场景;
后续可接入扬声器模块、串口音频播放、识别广播名称等功能;
队员 | 主要负责模块 |
---|---|
张三 | MCU程序开发、频率控制与调制识别算法 |
李四 | 射频电路与AGC电路设计、模块焊接与测试 |
王五 | 项目调试、波形测量、报告整理与展示设计 |
简要回顾设计过程中的挑战、亮点、反思与收获。
本项目在4天内完整实现射频自动接收与解调,系统结构合理、模块清晰,在功能稳定性、识别准确率与响应速度上均满足要求。过程中掌握了射频信号处理、MCU信号判断与模拟电路增益控制等关键技能。
系统电路图与PCB截图
源代码与模块分布说明
波形图与FFT分析图示
BOM清单与器件来源