一、任务
设计并制作一个可控放大器,其组成框图如图 1 所示。放大器的增益可设置;低通滤波器、高通滤波器、带通滤波器的通带、截止频率等参数可设置。
二、要求
1.基本要求
(1)放大器输入正弦信号电压振幅为 10mV,电压增益为 40dB,通频带为 100Hz~40kHz,放大器输出电压无明显失真。
(2)滤波器可设置为低通滤波器,其-3dB 截止频率 fc在 1kHz~20kHz 范围内可调,调节的频率步进为 1kHz,2fc 处放大器与滤波器的总电压增益不大于30dB,RL=1k。
(3)滤波器可设置为高通滤波器,其-3dB 截止频率 fc在 1kHz~20kHz 范围内可调,调节的频率步进为 1kHz,0.5fc处放大器与滤波器的总电压增益不大于 30dB, RL=1k。
(4)截止频率的误差不大于 10%。
(5)有设置参数显示功能。
2、发挥部分
(1)放大器电压增益为 60dB,输入正弦信号电压振幅为 10mV,增益 10dB 步进可调,通频带为 100Hz~100kHz。
(2)制作一个带通滤波器,中心频率 50kHz,通频带 10kHz,在 40kHz 和 60kHz频率处,要求放大器与带通滤波器的总电压增益不大于 45dB。
(3)上述带通滤波器中心频率可设置,设置范围 40kHz~60kHz,步进为 2kHz。
(4)电压增益、截止频率误差均不大于 5%。
(5)其他。
三、说明
1. 正弦输入信号由信号源提供。
2. 放大器输出端应留测试端子。
3.设计报告正文应包括系统总体框图、核心电路原理图和主要的测试结果。完整的电路原理图、重要的源程序和完整的测试结果可用附件给出。
GPT-4o给出的设计方案:
设计并制作一个可控放大器,包含放大器、低通滤波器、高通滤波器和带通滤波器。放大器的增益可调,滤波器的截止频率和增益均可设置。
放大器增益与误差:
滤波器性能:
可变增益放大器:
有源滤波器:
控制电路:
PGA103 可变增益放大器:
OPA2350 运算放大器:
STM32 MCU:
以下为用STM32实现控制逻辑的C代码示例:
#include "stm32f1xx_hal.h"
#include "lcd.h"
#include "pga103.h"
#define NUM_STEPS 6 // 对应增益步进(10dB一个步进)
// 增益数组
const int gain_steps[NUM_STEPS] = {0, 10, 20, 30, 40, 50};
void set_pga_gain(int step) {
if (step >= 0 && step < NUM_STEPS) {
int gain = gain_steps[step];
PGA103_SetGain(gain); // 调用PGA103的接口函数设置增益
}
}
void set_lowpass_filter(int freq) {
// 根据设计设置低通滤波器的截止频率
}
void set_highpass_filter(int freq) {
// 根据设计设置高通滤波器的截止频率
}
void setup() {
HAL_Init();
SystemClock_Config();
MX_GPIO_Init();
MX_LCD_Init();
PGA103_Init();
LCD_Clear();
LCD_DisplayString("Gain: 0dB");
}
int main(void) {
setup();
int gain_step = 0;
while (1) {
if (button_pressed()) {
gain_step = (gain_step + 1) % NUM_STEPS;
set_pga_gain(gain_step);
char disp_str[16];
sprintf(disp_str, "Gain: %ddB", gain_steps[gain_step]);
LCD_Clear();
LCD_DisplayString(disp_str);
}
HAL_Delay(100); // 延迟,以免按钮频繁触发
}
}
本题考察的主要知识点:
信号放大
滤波器设计
控制系统
精度与误差
电源管理