基于DDS的多路任意波形发生器的设计与实现

发布者:BlossomBeauty最新更新时间:2016-03-17 来源: 21ic关键字:信号发生器  DDS  AD9854  上位机  串口通信 手机看文章 扫描二维码
随时随地手机看文章
本文采用单片机控制DDS专用芯片(AD9854)设计了信号发生器。以AD9854芯片为核心,详细分析了该信号发生器的系统结构、软硬件设计和具体电路实现,并介绍了使用单片机STC12LE5A56S2对AD9854的控制方法。信号发生器利用计算机串口通信技术,使用上位机通过串口对下位机控制,通过人机交互的控制方法产生正弦单频信号、扫频信号、FSK调制信号等波形。本信号发生器的优点是硬件电路简单,软件功能完善,人机界面友好,控制方便,性价比较高等特点,具有一定的使用和参考价值。

任意波形发生器是一种常用信号源,是现代电子测试领域内应用最为广泛的常用仪器之一,广泛用于电子电路、通信、雷达、导航、宇航等领域。输出信号的灵活性使之成为系统综合测试中不可缺少的组成部分。

直接数字频率合成(DDS)技术采用全数字的合成方法,其主要优点是体积小、功耗小、成本低且易于程控,输出相位噪声低和可以产生任意波形等,是任意波形发生器研究的一个重要方向。本项目从工程应用角度出发,深入研究基于单片机系统、以DDS技术为核心的一种结构简单、性能优良的多路任意信号发生器。并且通过PC机与单片机之间的串行通讯、数据的发送和接收,实现上位机方便快捷地控制产生需要的波形。在Windows系统下利用Visual Basic语言编写上位机控制软件,可实现PC机与单片机之间的通讯及控制电路,操作简单方便,从而让任意波形发生器可为用户最大限度地提供最方便有效的测试环境。

1 系统原理

系统结构组成如图1所示,主要由单片机控制模块、键盘与液晶显示模块、数字合成模块、滤波模块、DDS波形发生器上位机模块组成。其中,信号产生由单片机控制模块和数字合成模块实现,键盘与液晶显示模块以及DDS波形发生器上位机模块则用来实现人机交互的功能,滤波模块用来对信号进行后期处理。对于波形的控制有两种途径,一种是用户从仪器面板上通过按键输入命令,其命令的内容将显示在液晶屏幕上,并将命令传输到单片机,再由单片机控制DDS芯片输出信号,并通过后级信号调理电路,最后输出所需的信号;另一种是利用上位机通过串口通信对下位机的控制,下位机的单片机再控制液晶显示以及DDS芯片的工作。两种方法可以同时使用,灵活地通过控制单片机,来控制DDS芯片产生相应波形。

a.jpg

2 信号发生器的硬件设计

2.1 信号发生器电源设计

如图2所示的电源设计,信号发生器的电源模块需要从外部提供5 V的电源,根据AD9854的参考资料可知AD9854电源供电是3.3 V,单片机STC12LE5A56S2所需电压也为3.3 V,两者之间就不需要进行电平转换,从而精简了一大部分电路,只需接入5 V外部电源,再通过117_3.3 V稳压芯片,将电压转换成3.3 V来为AD9854和单片机供电。由于AD98 54电源有数字电源和模拟电源部分,需要分开进行供电,因而需要两个稳压模块来给AD9854这两部分进行供电。

b.jpg

2.2 信号产生的设计与实现

信号的产生与控制部分电路由单片机STC12LE5A56S2与DDS芯片AD9854组成,用户通过键盘输入的信号被STC12LE5A56S2接收,并经其处理后将计算出的控制字传送给AD985 4,由AD9854产生频率幅度可控的信号。还可以通过PC机上的DDS波形发生器上位机发送命令来控制单片机来选择AD9854的工作模式,在其模式下,完成相应的命令并输出波形。

AD9854的内部没有滤波器,因此需在其信号输出端接~个低通滤波器。滤波器的设计如图3所示。

c.jpg

系统设定最高60MHz时能够最低程度的降低AD9854内部系统时钟200MHz的干扰,采用了具有较窄过渡带特性的椭圆滤波器。查找椭圆滤波器LC元件值表得出归一化的元件值,然后再转化为去归一化的元件值便是本文所用滤波器中的元件值。去归一化公式为:

d.jpg

其中,L’、C’为去归一化的元件值,fFS为频率标度系数,可以直接用2πfc表示。Z为阻抗标度系数,即Z=50。代入计算后各个元件值如表1所示。

e.jpg

2.3 人机交互电路设计

人机交互电路以单片机STC12LE5A56S2为核心,通过其控制液晶显示模块和键盘输入模块以及与PC机进行串口通信。通过键盘输入命令给单片机 STC12LE5A56S2,从而来控制AD9854芯片工作,选择相应的工作模式。也可以通过串口利用PC机上的DDS波形发生器上位机给单片机发送命令来控制AD9854芯片相关工作。如图4所示为在PC机上的DDS波形发生器上位机,单片机STC12LE5A56S2具有串口通信的功能,使用时需连上其对应管脚,打开串口,直接修改上位机内所想要修改的参数,即能控制单片机发送命令来控制DDS芯片工作。此上位机可修改当前模式下的频率相关参数以及扫频控制。该上位机软件还可以根据需要进行功能扩展。

f.jpg

3 信号发生器硬件实现

3.1 印刷电路板设计

整个系统所用的元器件都安排在一块印刷电路板(PCB)上,芯片既有直插式,也有贴片式,采用手动布局,布线采用最短路径规则。混合信号电路PCB的设计很复杂,元器件的布局、布线以及电源和地线的处理将直接影响到电路性能和电磁兼容性能。本板采用双面走线,所以两面的线尽量垂直,以防止总线间的电磁串扰。系统既有数字器件又有模拟器件,器件的布局上,遵循数字器件和模拟器件分开摆放,输出模拟信号线最短输出、输入模拟信号线最短输入、模拟器件的模拟地以最短距离到地的原则。

3.2 测试结果

下列图形是本设计产生的几种波形,测量仪器为固纬示波器,型号为GDS-2000A-CN。

本设计所产生的正弦波的频率范围是2 Hz~60 MHz,图5所示为频率为20 MHz的正弦波。从波形可以看出频率准确度可以达到0.0005%,稳定度可以达到10—4,基本满足要求。

g.jpg

图6所示为扫频信号某一瞬间图形图,扫频范围为500 Hz~10 000 Hz,扫频步长为150 Hz。

h.jpg

图7所示为FSK调制信号,载波频率为100kHz,调制信号频率为1 kHz,从图中可以看出频率切换时波形的相位是连续的。

4 结论

本文采用DDS芯片AD9854为信号产生芯片,单片机STC12LE5A56S2为控制器,外接IO器件,配合上位机的使用,实现人机交互控制的方法,设计出一种结构简便,性能优良的信号发生器。能够极大方便地在上位机上输入参数以控制产生各种需要的波形。

关键字:信号发生器  DDS  AD9854  上位机  串口通信 引用地址:基于DDS的多路任意波形发生器的设计与实现

上一篇:基于单片机空气质量检测系统
下一篇:基于STC单片机智能探测机器车的设计

推荐阅读最新更新时间:2024-03-16 14:47

MSP430单片机串口通信详解
#include"msp430G2553.h" #include "in430.h" void UartPutchar(unsigned char c); unsigned char UartGetchar(); unsigned char temp=0; unsigned char number ={0}; void main( void ) { WDTCTL = WDTPW + WDTHOLD; // Stop WDT BCSCTL1 = CALBC1_1MHZ; // Set DCO DCOCTL = CALDCO_1MHZ; P1DIR|=BIT6;
[单片机]
MSP430单片机<font color='red'>串口通信</font>详解
基于TCP/IP协议实现上位机对UR机器人的远程控制
1、引言   2010年,德国学术界和产业界提出“工业4.0”的概念,即是以智能制造为主导的第四次工业革命,或革命性的生产方法。该战略旨在通过充分利用信息通讯技术和网络空间虚拟系统—信息物理系统相结合的手段,将制造业向智能化转型。所以,近些年许多工业自动化厂商将自己的产品研发所考虑的一个重要方向定在是否能被远程控制。另一方面,随着国内人工成本的不断上升以及工厂人员流动的不确定性,机器人产业是近几年,相信也是未来几年的朝阳产业。所以对于工业机器人在工厂生产中的远程控制,是一个机器人集成方面比较不错的课题。我们知道,在工业机器人的队伍中,UR机器人是第一家在工业环境下工作的人机协作机器人,它以轻便、简单、安全著称。下面我们就来了解一下如
[嵌入式]
C语言dsPIC / PIC24 serial bootloader和C#语言bootloader PC端串口通信
  新dsPIC/PIC24 Bootloader   PhsBoot_v4.0是我最新用C语言实现的PIC bootloader, 采用串口通信,适用于dsPIC30, dsPIC33和PIC24, 并为其用C#写了PC端通信程序PhsLoader_v4.0。PhsLoader_v4.0通过串口按照自定义的通信协定发送数据PhsBoot_v4.0, PhsBoot_v4.0接收数据,按照通信协定解读数据,解读出其中Hex数据,并将其烧录到正确的位置。   通信协定   dsPIC/PIC24单片机端PhsBoot_v4.0和PC端PhsLoader_v4.0之间的通信数据包采用以下协定 STX CMD ADDRL ADDRH
[单片机]
C语言dsPIC / PIC24 serial bootloader和C#语言bootloader PC端<font color='red'>串口通信</font>程
串口通信的帧同步问题
封装STM32串口的底层时,遇到了串口帧同步的问题。虽然以前也遇到类似场合,写出来的代码基本能够解决问题,但是在逻辑上总是不能彻底的解释一些细节。 当前的工作环境: 由于代码想用在一个简单的PID闭环上,做在线的参数整定。假设当前PID解算周期是1ms,即每1ms,做一次串口的收包,解包,Pid解算,数据采集,然后打包,发包。也就是说是固定步长的解包。 串口的方案是开启收发的DMA以及DMA的中断。(坚决不考虑直接使用串口中断。一个字节中断一次太费资源)。DMA数组作为串口的FIFO队列(并不是真正意义上的队列)。 当前的需求: 1、时间节拍到来时,检查是否有收到数据。没有则跳出,有则进入下一步 2、检查数据中的包格式,比如包头是
[单片机]
C51单片机与PC串口通信的单片机部分程序
注意波特率是9600 功能:电脑通过串口给单片机发一个字节,单片机收到后又给电脑发回去 、#include #define uchar unsigned char #define uint unsigned int uint temp; bit flag; void init_ser1(); main() { init_ser1(); while(1) { if(RI==1) { P1=SBUF; RI=0; } if(flag==1) { ES=0;//暂时关闭接收 flag=0; SBUF=temp; while(!TI);//等待发送完毕 TI=0; ES=1; } } } void sel() interrup
[单片机]
基于AVR单片机的实验加载闭环控制系统
分离式液压千斤顶在生产建设、科学实验等各类工程结构加载工作中具有广泛的用途。 该设备一般由电动高压油泵+压(拉)千斤顶组成,本文论及的加载系统规格如表1所示。 油泵电机直接带动泵轴旋转,柱塞作往复运动,进油阀/排油阀工作,液压油通过高压油管进入千斤顶。用户可通过泵站上的手柄,人工转动泵内卸荷阀处于不同位置,实现系统的加载/卸载、推力/拉力及加载速率和稳压作业。 在对力和位移数值或稳压时间等精度要求较高的科研实验加载场合,显然这种仅靠手工操作的方式难以胜任。给该设备增设电脑测控系统就成为一项与时俱进的技术革新,也是提高此类设备性价比的最佳方案。 1 下位机 由ATmega128构成下位机控制核心(见图1),其
[单片机]
基于AVR单片机的实验加载闭环控制系统
STM32与上位机发送和接收数据
(1)首先要配置USART1相关的GPIO(PA9,PA10),和USART1的初始化参数配置 (2)然后在配置中断向量控制器 (3)写发送数据的函数 注释:main()函数在写入数据赋值时,单个的数据或字符的发送根据ASCII码表进行换算; http://www.96yx.com/tool/ASC2.htm(ASCII对照表)
[单片机]
STM32与<font color='red'>上位机</font>发送和接收数据
基于DSP和DDS的商品防窃监视器扫频信号源
摘要:提出一种基于数字信号处理器(DSP)和直接数字信号合成器(DDS)技术的高精度扫频信号源的实现方法,着重讨论AD9834型DDS的基本工作原理、扫频波信号源的硬件结构和软件流程。关键词:商品防窃监视器(EAS);TMS320VC5410;AD9834;扫频信号源 1 引言 商品防窃监视器(Electronic Article Surveillance)简称EAS,是目前超市普遍使用的安检防窃设备。其原理是由发射电路产生7.8MHz"8.8MHz的扫频信号,该信号由近场天线发射,当天线附近有标签存在时(标签为高Q值的LC振荡回路,谐振中心频率为7.8MHz),标签发出谐振电磁波信号,该信号被EAS接收天线接收,经解调、放大和数字
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved