任务名称
2007年_H题:信号发生器【高职高专组】
任务要求
难度

一、任务
设计并制作一台信号发生器,使之能产生正弦波、方波和三角波信号,其系统框图如图 1 所示。

二、要求
1.基本要求
(1)信号发生器能产生正弦波、方波和三角波三种周期性波形;
(2)输出信号频率在 100Hz~100kHz 范围内可调, 输出信号频率稳定度优于 10-3;
(3)在 1k负载条件下,输出正弦波信号的电压峰-峰值 Vopp在 0~5V 范围内可调;
(4)输出信号波形无明显失真;
(5)自制稳压电源。
2.发挥部分
(1)将输出信号频率范围扩展为 10Hz~1MHz,输出信号频率可分段调节:在 10Hz~1kHz 范围内步进间隔为 10Hz;在 1kHz~1MHz 范围内步进间隔为 1kHz。输出信号频率值可通过键盘进行设置;
(2)在 50负载条件下,输出正弦波信号的电压峰-峰值 Vopp在 0~5V 范围内可调,调节步进间隔为 0.1V,输出信号的电压值可通过键盘进行设置;
(3)可实时显示输出信号的类型、幅度、频率和频率步进值;
(4)其他。

三、说明
设计报告正文应包括系统总体框图、核心电路原理图、主要流程图和主要的测试结果。完整的电路原理图、重要的源程序和完整的测试结果可用附件给出。

评审标准

参考答案

GPT-4o给出的设计方案:


一、设计思路

  1. 信号生成

    • 采用DDS(直接数字合成)技术或使用函数发生器IC(如AD9833)产生正弦波、方波和三角波。
    • 参数调整电路和频率控制电路用于设置信号频率和幅度。
  2. 信号输出

    • 使用缓冲放大器保证信号的驱动能力。
    • 使用功率放大电路提高负载能力,以确保在1kΩ负载下满足输出要求。
  3. 稳压电源

    • 设计稳定可靠的电源电路,为系统提供稳定的工作电压。

二、简单论证

使用AD9833作为核心信号发生芯片,它能够产生正弦波、方波和三角波信号,并支持频率及幅度的调整。通过MCU控制AD9833,使用缓冲电路输出信号并具备足够的驱动能力和稳定性。稳压电源提供稳定的工作电压,确保误差和噪音最小。

三、重要的指标和理论分析

  1. 信号频率范围

    • 要求频率范围100Hz~100kHz,且频率稳定度优于10^-3。
    • 在发散频率范围10Hz1MHz时,步进频率为10Hz(10Hz1kHz时)及1kHz(1kHz~1MHz时)
  2. 信号幅度

    • 输出信号的峰-峰值在0~5V范围内可调,调节步进间隔为0.1V。
  3. 负载能力

    • 在1kΩ和50Ω负载条件下,确保输出波形质量。

四、重要电路原理图设计要点

  1. AD9833信号发生电路

    • AD9833芯片通过SPI接口与MCU连接;
    • 输出的波形信号通过运算放大器进行缓冲放大和调节。
  2. 缓冲放大电路

    • 运算放大器(如OPA2350)用于信号放大和缓冲。
    • 输出信号通过可调电位器调节电压幅度。
  3. 稳压电源电路

    • 使用稳压芯片(如LM7805)提供5V稳定电压。

五、核心器件设计要点

  1. AD9833 函数发生器IC

    • 提供多种波形输出:正弦波、方波、三角波;
    • 通过SPI接口进行编程和控制;
    • 频率稳定度高,适用于高精度信号生成。
  2. OPA2350 运算放大器

    • 具有高精度、低噪声的特点;
    • 用于缓冲和放大AD9833输出的信号。
  3. MCU(如STM32F103)

    • 控制AD9833,通过按键输入实现频率和幅度的调整;
    • 提供SPI接口与AD9833通信。

六、MCU重要功能的C代码

以下为实现基本控制逻辑的示例代码:

#include "stm32f1xx_hal.h"
#include "ad9833.h"

// 初始化AD9833
void AD9833_Init(void) {
    HAL_GPIO_WritePin(AD9833_CS_GPIO_Port, AD9833_CS_Pin, GPIO_PIN_RESET);
    HAL_Delay(1);
    HAL_GPIO_WritePin(AD9833_CS_GPIO_Port, AD9833_CS_Pin, GPIO_PIN_SET);
    HAL_Delay(1);
    // 复位
    AD9833_Write(0x0100);  
}

void AD9833_SetFrequency(uint32_t frequency) {
    uint32_t freq_reg = (uint32_t)((frequency * (uint64_t)268435456) / 25000000);
    AD9833_Write(0x2100);
    AD9833_Write(0x4000 | (freq_reg & 0x3FFF));
    AD9833_Write(0x4000 | ((freq_reg >> 14) & 0x3FFF));
    AD9833_Write(0x2000);
}

void AD9833_SetVolume(uint16_t volume) {
    // 控制信号输出幅度,具体设计依据电路实现
}

int main(void) {
    HAL_Init();
    SystemClock_Config();
    MX_GPIO_Init();
    MX_SPI1_Init();

    AD9833_Init();
    AD9833_SetFrequency(1000);  // 设置信号频率为1kHz
    AD9833_SetVolume(2);  // 设置信号幅度为2V

    while (1) {
        // 用户控制逻辑
    }
}

本题考察的主要知识点:

  1. 信号生成技术

    • 了解如何产生三种波形信号(正弦波、方波、三角波)。
    • 应用DDS(直接数字合成)技术或函数发生器IC(如AD9833)来生成稳定的信号。
  2. 频率和幅度调节

    • 信号频率范围100Hz~100kHz以及在10Hz~1MHz范围内的细化控制。
    • 电压峰-峰值范围0~5V可调,并实现0.1V的步进调节。
  3. 负载特性

    • 在1kΩ和50Ω负载条件下如何保证信号无明显失真。
  4. 电路设计与稳定性

    • 器件选择和偏置设计以实现稳定性和性能。
    • 设计稳压电源以确保系统稳定工作。
  5. MCU与外围电路

    • 编程控制AD9833等器件,实现参数调节。
    • 使用运算放大器做缓冲放大,提升信号的驱动能力。
硬禾服务号
关注最新动态
0512-67862536
info@eetree.cn
江苏省苏州市苏州工业园区新平街388号腾飞创新园A2幢815室
苏州硬禾信息科技有限公司
Copyright © 2024 苏州硬禾信息科技有限公司 All Rights Reserved 苏ICP备19040198号