AD9850的简易信号发生器.docx
《AD9850的简易信号发生器.docx》由会员分享,可在线阅读,更多相关《AD9850的简易信号发生器.docx(28页珍藏版)》请在冰豆网上搜索。
AD9850的简易信号发生器
1ad9850任意波形发生器的设计
1.设计思想
信号发生器广泛应用于电子电路、自动控制和科学试验等领域。
是一种为电子测量和计量工作提供符合严格技术要求的电信号设备,也是应用最广泛的电子仪器之一,几乎所有的电参量的测量都需要用到信号发生器。
本设计研究的信号发生器的基本思路是:
基于DDS芯片AD9850基础的任意波形发生器。
系统是基于AD9850芯片产生的波形。
它是由相位累加器、正弦查询表、D/A转换器组成的集成芯片。
其中相位累加器的位数N=32位,寻址RAM用14位,舍去18位,采用高速10位数模转换,DDS的时钟频率为125MHz,输出信号频率分辨率可达0.0291Hz;系统的微处理器采用8051,外围电路主要是接口电路、调幅电路、滤波电路和积分电路的设计。
同时还包括键盘接口。
系统的软件主要是启动和初始化8051,然后处理键盘输入的频率控制字和相位控制字,并将其转换为32位的二进制数的控制字,最后并行递交给AD9850并启动AD9850,让它实现从正弦查询表中取数产生波形再输出。
.1选题背景
在电子技术领域中,经常要用一些信号作为测量基准信号或输入信号,也就是所谓的信号源。
信号源有很多种,包括正弦波信号源、函数发生器、脉冲发生器、扫描发生器、任意波形发生器、合成信号源等。
作为电子系统必不可少的组成部分的信号源,在很大程度上决定了系统的性能,因而常称之为电子系统的“心脏”。
随着电子技术的发展,对信号源的要求越来越高,要求其输出频率高达微波频段甚至更高,频率范围从零Hz到几GHz频率分辨率达到mHz甚至更小,相应频点数更多;频率转换时间达到ns级:
频谱纯度越来越高。
同时,对频率合成器功耗、体积、重量等也有更高的要求。
而传统的信号源采用振荡器,只能产生少数几种波形,自动化程度较低,且仪器体积大、灵活性与准确度差。
而现在要求信号源能产生波形的种类多、频率高,而且还要体积小、可靠性高、操作灵活、使用方便及可由计算机控制。
所以要实现高性能的信号源,必须在技术手段上有新的突破。
当今高性能的信号源均通过频率合成技术来实现,随着计算机、数字集成电路和微电子技术的发展,频率合成技术有了新的突破,直接数字频率合成技术(DirectDigitalSynthesisDDS),它是将先进的数字信号处理理论与方法引入到信号合成领域的一项新技术,它的出现为进一步提高信号的频率稳定度提供了新的解决方法。
同时,随着微电子技术的迅速发展,尤其是单片机技术的发展,智能仪器也有了新的进展,功能更加完善,性能也更加可靠,智能程度也不断提高直接数字式频率合成技术的出现导致了频率合成领域的一次重大革命。
直接数字频率合成器问世之初,构成DDS元器件的速度的限制和数字化引起的噪声这两个主要缺点阻碍了DDS的发展与实际应用。
近几年超高速数字电路的发展以及对DDS的深入研究,DDS的最高工作频率以及噪声性能已接近并达到锁相频率合成器相当的水平。
随着微电子技术的迅速发展,直接数字频率合成器得到了飞速的发展,它以有别于其他频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。
具体体现在相对带宽宽、频率转换时间短、频率分辨率高、输出相位连续、可产生宽带正交信号及其他多种调制信号、可编程和全数字化、控制灵活方便等方面,并具有极高的性价比。
现已广泛应用于通讯、导航、雷达、遥控遥测、电子对抗以及现代化的仪器仪表工业等领域。
信号发生器是一种常用的信号源,广泛应用于电子测量、自动控制和工程设计等领域。
随着电子技术的发展,对信号源频率的稳定度、准确度以及频谱纯度的要求越来越高。
DDS(直接数字合成)技术是从相位概念出发直接合成所需波形的一种新的频率合成技术,与传统的模拟式波形产生法相比,它具有相位变换连续、频率转换速度快、分辨率高、稳定度高、相位噪声小、便于集成、易于调整及控制灵活等多种优点。
基于DDS技术的信号发生器是一类新型信号源,它已成为众多电子系统中不可缺少的组成部分
2DDS概要
2.1DDS结构
1971年,美国学者J.Tierney等人撰写的“ADigitalFrequencySynthesizer”-文首次提出了以全数字技术,从相位概念出发直接合成所需波形的一种新组成原理。
限于当时的技术和器件产,它的性能指标尚不能与已有的技术相比,故没受到重视。
近几年间,随着微电子技术的迅速发展,直接数字频率合成器(DirectDigitalFrequencySynthesis简称DDS或DDFS)得到了飞速的发展,它以有别于其它频率合成方法的优越性能和特点成为现代频率合成技术中的佼佼者。
具体体现在相对带宽、频率转换时间短、频率分辨率高、输出相位连续、可产生宽带正交信号及其他多种调制信号、可编程和全数字化、控制灵活方便等方面,并具有极高的性价比。
DDS是直接数字式频率合成器(DirectDigitalSynthesizer)的英文缩写。
与传统的频率合成器相比,DDS具有低成本、低功耗、高分辨率和快速转换时间等优点,广泛使用在电信与电子仪器领域,是实现设备全数字化的一个关键技术。
直接数字频率合成器(DirectDigitalSynthesizer)是从相位概念出发直接合成所需波形的一种频率合成技术。
一个直接数字频率合成器由相位累加器、加法器、波形存储ROM、D/A转换器和低通滤波器(LPF)构成。
DDS的原理框图如下所示:
图2.1DDS原理框图
其中K为频率控制字、P为相位控制字、W为波形控制字、fc为参考时钟频率,N为相位累加器的字长,D为ROM数据位及D/A转换器的字长。
相位累加器在时钟fc的控制下以步长K作累加,输出的N位二进制码与相位控制字P、波形控制字W相加后作为波形ROM的地址,对波形ROM进行寻址,波形ROM输出D位的幅度码S(n)经D/A转换器变成阶梯波S(t),再经过低通滤波器平滑后就可以得到合成的信号波形。
合成的信号波形形状取决于波形ROM中存放的幅度码,因此用DDS可以产生任意波形。
这里我们用DDS实现正弦波的合成作为说明介绍。
2.1.1频率预置与调节电路
K被称为频率控制字,也叫相位增量。
DDS方程为:
f0=fCLK/2n,f0为输出频率,fc为时钟频率。
当K=1时,DDS输出最低频率(也即频率分辨率),为fc/2n,而DDS的最大输出频率由Nyquist采样定理决定,即fc/2,也就是说K的最大值为2N-1。
因此,只要N足够大,DDS可以得到很细的频率间隔。
要改变DDS的输出频率,只要改变控制字K即可。
2.1.2累加器
图2.2累加器框图
相位累加器由N位加法器与N位寄存器级联构成。
每来一个时钟脉冲fc,加法器将频率控制字K与寄存器输出的累加相位数据相加,再把相加后的结果送至寄存器的数据输入端。
寄存器将加法器在上一个时钟作用下继续与频率控制字进行相加。
这样,相位累加器在时钟的作用下,进行相位累加。
当相位累加器累加满时就会产生一次溢出,完成一个周期性的动作。
2.2.3控制相位的加法器
通过改变相位控制字P可以控制输出信号的相位参数。
令相位加法器的字长为N,当相位控制字由0跃变到P(P≠0)时,波形存储器的输入为相位累加器的输出与相位控制字P之和,因而其输出的幅度编码相位会增加P/2N,从而使最后输出的信号产生相移。
2.2.4控制波形的加法器
通过改变波形控制字W可以控制输出信号的波形。
由于波形存储器中的不同波形是分块存储的,所以当波形控制字改变时,波形存储器的输入为改变相位后的地址与波形控制字W(波形地址)之和,从而使最后输出的信号产和相移。
2.2.5波形存储器
用相位累加器输出的数据作为波形存储器的取样地址,进行波形的相位一幅值转换,即可在给定的时间上确定输出的波形的抽样幅值。
N位的寻址ROM相当于把0°~360°的正弦信号离散成具有2N个采样值的序列,若波形ROM有D位数据位,则2N个样值的幅值D位二进制数值固化在ROM中,按照地址的不同可以输出相应相位的正弦信号的幅值。
相位—幅度变换原理图如下图所示:
图2.3相位—幅度变换原理图
2.2.6D/A转换器
D/A转换器的作用是把合成的正弦波数字量转换成模拟量。
正弦幅度量化序列S(n)经D/A转换后变成了包络为正弦波的阶梯波S(t)。
需要注意的是,频率合成器对D/A转换器的分辨率有一定的要求,D/A转换器的分辨率越高,合成的正弦波S(t)台阶数就越多,输出的波形的精度也就越高。
2.2.7低通滤波器
对D/A输出的阶梯波S(t)进行频谱分析,可知S(t)中除主频fo外,还存在分布在fc,2fc等等的两边±fo处的非谐波分量,幅值包络为辛格函数。
因此,为了取出主频f0,必须在D/A转换器的输出端接入截止频率为fc/2的低通滤波器。
2.2DDS数学原理
设有一频率为
的余弦信号
:
现在以采样频率
对
进行采样,得到的离散序列为:
其中
为采样周期。
对应的相位序列为
从上式可以看出相位序列呈线性,即相邻的样值之间的相位增量是一个常数,而且这个常数仅与信号的频率
有关,相位增量为:
因为信号频率
与采样频率
之间有以下关系:
其中
与
为两个正整数,所以相位的增量也可以完成:
由上式可知,若将
的相位均匀的分为
等份,那么频率为
的余弦信号以频率
采样后,它的量化序列的样品之间的量化相位增量为一个不变值
。
根据上述原理可以构造一个不变量
为量化相位增量的量化序列:
然后完成从
到另一个序列
的映射,由
构造序列:
公式(2—1)
公式(2-1)是连续信号
经采样频率为
采样后的离散时间序列,根据采样定理,当
时,
经过低通滤波器平滑后,可唯一恢复出
。
可见,通过上述变换不变量
将唯一的确定一个单频率模拟余弦信号
:
该信号的频率为:
公式(2—2)
公式(2—2)就是直接数字频率合成(DDS)的方程式,在实际的DDS中,一般取
,于是DDS方程就可以写成:
公式(2—3)
根据公式(2—3)可知,要得到不同的频率只要通过改变
的具体数值就可以了,而且还可以得到DDS的最小频率分辨率(最小频率间隔)为当
时的输出频率:
可见当参考频率
始终一定是,其分辨率由相位累加器的位数
决定,若取
,
,则
,即分辨率可以达到
,这也是最低的合成频率,输出频率的高精度DDS的一大优点。
由奈奎斯特准则可知,允许输出的最高频率
,即
,但实际上在应用中受到低通滤波器的限制,通常
,以便于滤波镜像频率,一般:
由此可见DDS的工作频率带较宽,可以合成从直流到
的频率信号,同时它的输出相位连续,频率稳定度高。
3总体设计方案
3.1系统设计原理
本文提出的采用DDS作为信号发生核心器件的全数控函数信号发生器设计方案,根据输出信号波形类型可设置、输出信号幅度和频率可数控、输出频率宽等要求,选用了美国A/D公司的AD9850芯片,并通过单片机程序控制和处理AD9850的32位频率控制字,再经放大后加至以数字电位器为核心的数字衰减网络,从而实现了信号幅度、频率、类型以及输出等选项的全数字控制。
本系统主要由单片机、DDS直接频率信号合成器、数字衰减电路、真有效值转换模块、A/D转换模块、数字积分选择电路等部分组成。
单片机AT89S52是整个系统关键部分,通过对键盘进行扫描读入相位信息,经转换后输出到芯片AD9850,输出波形。
键盘输入的数字信息经AT89S52控制的LCD1602显示
3.2总体设计框图
系统构成如下图3.1所示。
图3.1系统框图
4系统硬件模块的组成
4.1键盘控制模块
图4.1键盘控制电路
通过键盘对波形的频率进行控制
4.2单片机控制模块
主控电路中,以单片机为主体,通过分析键盘输入的数字值,对AD9850写入相应的控制字。
它是系统的大脑。
单片机(MICROCONTROLLER,又称微控制器)是在一块硅片上集成了各种部件的微型机算计,这些部件包括中央处理器CPU、数据存贮器RAM、程序存贮器ROM、定时器/计数器和多种I/O接口电路
4.2.1AT89S52主要性能
单片机AT89S52的主要性能分别为:
与MCS-51单片机产品兼容;8K字节在系统可编程Flash存储器;1000次擦写周期;全静态操作:
0Hz~33Hz、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器、八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、11掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。
[1]
4.2.2AT89S52功能特性描述
AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。
使用ATMEL公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。
片上Flash允许程序存储器在系统可编程,亦适于常规编程器。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、有效的解决方案[2]。
AT89S52具有以下标准功能:
8k字节Flash、256字节RAM、32位I/O口线、看门狗定时器、2个数据指针、三个16位定时器/计数器、一个6向量2级中断结构、全双工串行口、片内晶振及时钟电路。
另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。
空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。
掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止[3]。
AT89S52的引脚结构如图:
图4.2单片机AT89S52引脚结构图
P0口:
P0口是一个8位漏极开路的双向I/O口。
作为输出口,每位能驱动8个TTL逻辑电平。
对P0端口写“1”时,引脚用作高阻抗输入。
当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。
在这种模式下,P0具有内部上拉电阻。
在flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。
程序校验时,需要外部上拉电阻。
P1口:
P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。
对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。
此外,P1.0和P1.2分别作定时器/计数器2的外部计数输入(P1.0/T2)和时器/计数器2的触发输入(P1.1/T2EX),在flash编程和校验时,P1口接收低8位地址字节。
P2口:
P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器。
能驱动4个TTL逻辑电平。
对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。
作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流。
在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址。
在这种应用中,P2口使用很强的内部上拉发送1。
在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容。
在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号[4]。
随着计算机技术的高速发展,单片机以其自身的特点,已广泛应用于智能仪器、工业控制、家用电器、电子玩具等各个领域。
4.2.3时钟电路
图4.3时钟电路
XTAL1是片内振荡器的反相放大器输入端,XTAL2则是输出端,使用外部振荡器时,外部振荡信号应直接加到XTAL1,而XTAL2悬空。
内部方式时,时钟发生器对振荡脉冲二分频,如晶振为12MHz,时钟频率就为6MHz。
晶振的频率可以在1MHz-24MHz内选择。
电容取30PF左右。
AT89C51中有一个用于构成内部振荡器的高增益反相放大器,引脚XTAL1和XTAL2分别是该放大器的输入端和输出端。
这个放大器与作为反馈元件的片外石英晶体或者陶瓷谐振器一起构成自激振荡器[5]。
片外石英晶体或者陶瓷谐振器及电容C1、C2接在放大器的反馈回路中构成并联振荡电路。
对外接电容C1、C2虽然没有十分严格的要求,但电容容量的大小会轻微影响振荡频率的高低、振荡器工作的稳定性、起振的难易程序及温度稳定性,这里采用电容30pF,晶振采用11.0592MHz。
4.2.4复位电路
AT89C51的外部复位电路有上电自动复位和手动按键复位。
上电复位电容充电来实现。
手动按键复位又分为按键电平复位和按键脉冲复位。
按键电平复位电路是在普通RC复位电路的基础上接一个有下拉电阻10K、上拉电容10μf接VCC,电源由开关经串接的1K限流电阻至复位脚(和上拉电容并联),上拉电容支路负责在“上电”瞬间实施复位;开关通过1K上拉电阻和10K下拉电阻分压器,保证对单片机实施按键电平复位。
电路图如下图所示:
图4.4复位电路
4.3LCD显示模块
现在的字符型液晶模块已经是单片机应用设计中最常用的信息显示器件了。
1602型LCD显示模块具有体积小,功耗低,显示内容丰富等特点。
4.3.1LCD1602的主要性能
1602型LCD可以显示2行16个字符,有8位数据总线D0~D7和RS,R/W,EN三个控制端口,工作电压为5V,并且具有字符对比度调节和背光功能[6]。
1602型LCD的接口信号说明,如表4.1所示:
表4.1LCD1602接口说明
编号
符号
引脚说明
编号
符号
引脚说明
1
VSS
电源地
9
D2
DataI/O
2
VDD
电源正极
10
D3
DataI/O
3
VL
液晶显示偏压信号
11
D4
DataI/O
4
RS
数据/命令选择端(H/L)
12
D5
DataI/O
5
R/W
读写选择端(H/L)
13
D6
DataI/O
6
E
使能信号
14
D7
DataI/O
7
D0
DataI/O
15
BLA
背光源正极
8
D1
DataI/O
16
BLK
背光源负极
基本操作程序
读状态:
输入:
RS=L,RW=H,E=H输出:
D0~D7=状态字
读数据:
输入:
RS=H,RW=H,E=H输出:
无
写指令:
输入:
RS=L,RW=L,D0~D7=指令码,E=高脉冲输出:
D0~D7=数据
写数据:
输入:
RS=H,RW=L,D0~D7=数据,E=高脉冲输出:
无
4.3.2LCD1602与单机的连接
图4.5LCD与单片机的接口电路
在实际的接线中,1602的DB0—DB7与89S52的P0口相接,RS与P1.3相接,R/W与P1.2相接,E与P1.1相接。
VL与地之间接一个10K的滑动变阻器来到1602初始显示的调节。
4.4AD9850与单片机连接模块
4.4.1AD9850简介
随着数字技术的飞速发展,用数字控制方法从一个参考频率源产生多种频率的技术,即直接数字频率合成(DDS)技术异军突起。
美国AD公司推出的高集成度频率合成器AD9850便是采用DDS技术的典型产品之一。
AD9850采用先进的CMOS工艺,其功耗在3.3V供电时仅为155mW,扩展工业级温度范围为-40~80℃,采用28脚SSOP表面封装形式。
AD9850的引脚排列如图4.6所示,图4.7为其组成框图。
中层虚线内是一个完整的可编程DDS系统,外层虚线内包含了AD9850的主要组成部分[7]。
图4.6AD9850管脚排列图
图4.7AD9850组成框图
AD9850内含可编程DDS系统和高速比较器,能实现全数字编程控制的频率合成。
可编程DDS系统的核心是相位累加器,它由一个加法器和一个N位相位寄存器组成,N一般为24~32。
每来一个外部参考时钟,相位寄存器便以步长M递加。
相位寄存器的输出与相位控制字相加后可输入到正弦查询表地址上。
正弦查询表包含一个正弦波周期的数字幅度信息,每一个地址对应正弦波中0°~360°范围的一个相位点。
查询表把输入地址的相位信息映射成正弦波幅度信号,然后驱动DAC以输出模拟量。
相位寄存器每过2N/M个外部参考时钟后返回到初始状态一次,相应地正弦查询表每经过一个循环也回到初始位置,从而使整个DDS系统输出一个正弦波。
输出的正弦波周期T0=Tc2N/M,频率fout=Mfc/2N,Tc、fc分别为外部参考时钟的周期和频率。
AD9850采用32位的相位累加器将信号截断成14位输入到正弦查询表,查询表的输出再被截断成10位后输入到DAC,DAC再输出两个互补的电流[8]。
DAC满量程输出电流通过一个外接电阻RSET调节,调节关系为:
Rset的典型值是3.9kΩ。
将DAC的输出经低通滤波后接到AD9850内部的高速比较器上即可直接输出一个抖动很小的方波。
其系统功能如图3-3所示。
图4.8AD9850系统功能图
AD9850在接上精密时钟源和写入频率相位控制字之后就可产生一个频率和相位都可编程控制的模拟正弦波输出,此正弦波可直接用作频率信号源或经内部的高速比较器转换为方波输出。
在125MHz的时钟下,32位的频率控制字可使AD9850的输出频率分辨率达0.0291Hz;并具有5位相位控制位,而且允许相位按增量180°、90°、45°、22.5°、11.25°或这些值的组合进行调整。
4.4.2AD9850的控制字与控制时序
AD9850有40位控制字,32位用于频率控制,5位用于相位控制,1位用于电源休眠(Powerdown)控制,2位用于选择工作方式。
这40位控制字可通过并行方式或串行方式输入到AD9850,图4.9是控制字并行输入的控制时序图,在并行装入方式中,通过8位总线D0…D7将可数据输入到寄存器,在重复5次之后再在FQ-UD上升沿把40位数据从输入寄存器装入到频率/相位数据寄存器(更新DDS输出频率和相位),同时把地址指针复位到第一个输入寄存器。
接着在W-CLK的上升沿装入8位数据,并把指针指向下一个输入寄存器,连续5个W-CLK上升沿后,W-CLK的边沿就不再起作用,直到复位信号或FQ-UD上升沿把地址指针复位到第一个寄存器[9]。
图4.9控制字并行输入的时序图
图4.10控制字串行输入的时序图
在串行输入方式,W-CLK上升沿把25引脚的一位数据串行移入,当移动40位后,用一个FQ_UD脉冲即可更新输出频率和相位。
图4.10是相应的控制字串行输入的控制时序图。
AD9850的复位(RESET)信号为高电平有效,且脉冲宽度不小于5个参考时钟周期。
AD9850的参考时钟频率一般远高于单片机的时钟频率,因此AD9850的复位(RESET)端可与单片机的复位端直接相连。
表4.2AD9850串行装载的数据结构
位代号
功能
位代号
功能
位代号
功能
位代号
功能
W0
Freq-b0
(LSB)
W10
Freq-b10
W20
Freq-b20
W30
Freq-b30
W1
Freq-b1
W11
Freq-b11
W21
Freq-b21
W31
Freq-b31
(MSB)
W2
Freq-b2
W12
Freq-b12
W22
Freq-b22
W32
Control
W3
Freq-b3
W13
Freq-b13
W23
Freq-b23
W33
Control
W