一、 系统方案
1、信号发生部分
方案一:采用单片压控函数发生器,如MAX038。MAX038可以方便地产生频率(0.1Hz~20MHz)可变的正弦波、方波、三角波及实现数控频率调整。但是,其输出频率的稳定度低,频率的步长控制难以达到理想的结果。
方案二:采用DDS波形发生技术,采用FPGA和单片机相结和的方式实现频率控制,由于本信号源只产生三种常见波形,不需要大规模的FPGA。浅谈童鞋鞋样设计
方案三:采用专用的DDS芯片,因为AD9834可以直接产生正弦波等常见波形用单片机的控制字可以方便地进行控制输出不同的波形,故本方案采用DDS专用芯片AD9834来实现。
2、信号输出部分本文来自优.文~论^文·网原文请找腾讯3249.114
方案一:采用单一增的电压放大电路,要改变放大倍数时,则需采用切换外部电阻的方式,这种方式每一种增益都需要一套不同的电阻,因此只能有有限的几种增益,电路结构和切换过程都较复杂,而且切换速度慢,使用也不方便,切换不同的电阻还可能使放大器的输入阻抗发生变化,从而影响精度。
方案二:采用可编程的放大器AD603,AD603是一种低噪声且由电压控制的增益放大器。提供精确的、可由管脚选择的增益,且是线性变化的,在温度和电源电压变化时有很高的稳定性,完全可以满足本方案的要求。
3、显示部分
方案一:数码管显示,由于本题要求实时显示输出信号的类型、幅度、频率和频率步进值等,而数码管不能显示字符。
方案二:LED点阵显示,LED点阵显示虽然能显示字符和数字,但显示效果不好,且不易编程。
方案三:LCD液晶显示,LCD液晶不但能显示字符和数字,而且显示效果较好,容易编程实现。
二、系统设计
1、总体设计思路
根据题目的要求,经过仔细分析,充分考虑各种因素,制定了整体设计方案:以凌阳单片机SPCE061A为核心,完成四方面的功能:采用DDS专用芯片AD9834产生正弦波、方波和三角波,可编程控制放大器AD603控制幅度输出,串口液晶显示,键盘并口控制输入,其系统如图1所示。
图12、各模块具体实现原理分析和说明
(1)波形产生模块
DDS基本原理:正弦波形一个周期离散样点的幅值数字量存于ROM(或RAM)中,按一定的地址间隔(相位增量)读出,由D/A转换成模拟正弦信号,经过低通滤波,滤除D/A带来的小台阶和数字电路产生的毛刺,即可获得所需要的正弦信号。AD9834可以产生正弦波、三角波、方波,输出幅度为0.5V。AD9834内部的相位累加器的字宽为32位,SIN函数表有4096样点值,因此32位的相位累加器输出仅截取12位用于查表。
图2本文来自优.文~论^文·网原文请找腾讯3249.114
AD9834有2个频率寄存器和4个相位寄存器,通过控制码实现频率和波形的切换。单片机通过SPI总线向片内各个寄存器写入控制字,控制DDS的输出信号,其中频率寄存器存储相位增量信息,他用于决定输出频率。AD9834的外围电路如图2所示。FPGA跨时钟域信号设计
(2)幅度控制模块
AD603是AD公司推出的一种低噪声且由电压控制的增益放大器。它提供精确的、可由管脚选择的增益,它的增益是线性变化的,且在温度和电源电压变化时有很高的稳定性,增益变化的范围40dB,增益控制转换比例25mV/dB,响应速度为40dB,变化范围所需时间小于1μs。AD603内部包含一个七级R-2R梯形网络组成的0dB到-42.14dB的可变衰减器和一个固定增益的放大器,此固定增益放大器的增益可通过外接不同反馈网络的方式改变,以选择AD603不同的增益变化范围。AD603程控放大电路的外围电路如图3所示。
图3(3)频率选择模块2416