基于STC12C5A60S2的函数信号发生器的设计

嵌入式设计应用

132人已加入

描述

  摘要:本文研究了一种函数信号发生器。该信号发生器由单片机STC12C5A60S2、DDS芯片AD9851、以及高频运放AD603等组成,实现了幅度和频率可调的多种波形(三角波、方波、正弦波)输出的功能。通过实物制作,其性能指标达到了设计要求,具有一定的应用和推广价值。

  1、系统的结构

  整个系统由单片机STC12C5A60S2、DDS芯片AD9851、液晶LCD12864、模拟开关、积分电路、放大电路和4*4矩阵按键这几部分组成。其中单片机负责整个系统的控制;按键作为菜单控制的选择按钮;AD9851负责产生波形;LCD12864负责显示;积分电路用于生成三角波;模拟开关用于选通输出波形的形式;放大电路用于幅度的调节。其系统结构框图如图1所示。

信号发生器

  2、系统的硬件设计

  2.1DDS芯片AD9851的简介

  AD9851是美国AD公司生产的DDS芯片。DDS具有频率转换速度快、输出频率高等优点。AD9851主要由倍频器、数据输入寄存器、D/A转换器、内部高速比较器等几部分组成,输出频率可达到70MHz。

  2.2单片机与AD9851的接口电路设计

  通过单片机STC12C5A60S2控制AD9851产生稳定的方波和正弦波,再通过积分电路、程控放大电路等实现幅度和相位的调节以及三角波、锯齿波、斜波等的生成。

  单片机的P2.0-P2.7口接到AD9851模块的D0-D7口,作为数据传输接口。P3.4作为AD9851的系统时钟频率输出,P3.5接FQ_UD引脚,用于数据更新位,P3.6控制DDS内部DAC的输出电流。输出信号有两路,分别为0-70MHz的正弦波sine和方波信号square1、square2,这些信号再通过信号处理电路处理后,即可输出所需求的信号。电路图如图2所示。

信号发生器

  2.3信号处理电路设计

  AD9851的输出频率能达到70MHz,为了能在后级输出比较高的频率,使用高带宽的AD603放大器,该芯片的带宽可以达到90MHz,能够满足设计要求[6]。U3是一种双四选一模拟开关芯片TC4052,开关控制引脚由单片机U4的P0.4和P0.5来控制。

  信号处理电路中,U3的1脚、2脚和U1的3脚分别接AD9851产生的正弦波sine,square1和square2。U1积分电路所产生的三角波由7脚输出送U3的5脚。U3的3脚输出信号送程控放大电路AD603的3脚信号输入端。通过单片机U4的P3.7输出PWM信号去控制AD603的放大倍数,放大后的信号再由信号输出端输出。信号处理电路如图3所示。

信号发生器

  2.4键盘与显示接口电路的设计

  4×4矩阵键盘的K0-K7分别接单片机的P1.0-P1.7口,12864液晶的数据口接单片机的P0.0-P0.3口(由于I/O口不够用,所以采用四线驱动,四线驱动就是液晶数据线只接低4位,程序里面先发送一次8位数据,取出低4位移到高4位,然后再发送一次8位数据,取出低4位,与之前的高4位相或,即可完成8位数据的传输),RS接单片机的P3.0,R/W接单片机的P3.1,EN接单片机的P3.2。输出波形的各项参数及波形图可以直接在液晶上显示出来。液晶及键盘电路图如图4所示。4*4距阵键盘功能图如图5所示。

信号发生器
信号发生器

  3、软件设计

  3.1系统总流程图

  控制菜单主要通过4*4距阵按键实现,其16个按钮分别控制0-9、正弦波、方波、三角波、上一页、下一页、主菜单这几个功能(见图5),具体的系统总流程图如图6所示。

信号发生器

  3.2频率设置子程序的设计

  设置频率的时候先复位一下AD9851,然后向其写入频率设置命令,再调用键盘扫描程序输入频率值,完成频率的设置,最后输出所设置的频率值,见图7。

信号发生器

  4、结论

  采用先进的DDS芯片AD9851、单片机STC12C5A60S2以及高带宽的AD603放大器,完成了函数信号发生器的设计,实现了频率和幅度可调的多种信号(正弦波、方波、三角波)的输出。通过硬件调试,输出波形最高频率可达50MHz,但在高频率段存在一定的相位噪声和杂散信号。该信号发生器使用方便快捷,外观小巧,性能优越,具有一定的应用和推广价值。

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分