基于AD9834的波形发生器的设计.docx
- 文档编号:12206728
- 上传时间:2023-04-17
- 格式:DOCX
- 页数:41
- 大小:607.29KB
基于AD9834的波形发生器的设计.docx
《基于AD9834的波形发生器的设计.docx》由会员分享,可在线阅读,更多相关《基于AD9834的波形发生器的设计.docx(41页珍藏版)》请在冰豆网上搜索。
基于AD9834的波形发生器的设计
基于AD9834的波形发生器的设计
基于AD9834的波形发生器的设计
【摘要】:
本设计核心问题是设计信号发生器,使之输出不同频率的正弦波、三角波和方波,并通过按键切换输出的波形,也可以改变频率和输出的幅度。
本方案选择了AD9834作为核心芯片,并与单片机STC89C52结合,设计一款简易的高精度频率信号发生器,具有体积小功耗低等优点。
AD9834是ADI公司生产的一款采用DDS技术、低功耗、可编程波形发生器。
本文介绍了用AD9834设计信号发生器的基本框架,详细阐述了该芯片的基本性能和使用方法,分析了它与单片机结合产生波形的具体措施。
并且对DDS这一技术做了比较详细的分析,也展望它的发展前景。
此外,本文还介绍了单片机STC89C52,它是一种低功耗、高性能CMOS8位微控制器,一种带8K字节闪烁可编程可擦除只读存储器,并且也详细地阐述了单片机的内部结构、各个引脚的说明以及此芯片的特点。
【关键词】:
STC89C52;AD9834;DDS
[Abstract]:
Thisdesignisacoreproblemdesignsignalgenerator,theoutputofdifferentfrequencysinewave,triangularwaveandsquarewave,andthroughthekeyswitchoutputwaveform,alsocanchangethefrequencyandamplitudeoftheoutput.ThisschemeselectionAD9834asthecorechip,andsinglechipmicrocomputerandSTC89C52combination,designonesimplehighprecisionfrequencysignalgenerator,hassmallpowerconsumptionadvantages.AD9834ADIcompanyistheproductionofoneusingDDStechnology,lowpowerconsumption,programmablewaveformgenerator.ThispaperintroducesthedesignofsignalgeneratorwithAD9834thebasicframework,elaboratedonthechipofthebasicperformanceandusage,itanalysesthesinglechipmicrocomputerandcombinedwiththeconcretemeasuresofproducewaveform.AndtheDDSthistechnologymadecomparativelydetailedanalysis,andprospectsthedevelopmentprospect.
Inaddition,thispaperalsointroducestheSTC89C52MCU,itisakindoflowpowerconsumption,highperformanceCMOS8amicrocontroller,azone8kbytesscintillationprogrammablereadonlymemorycanbeerased.Andalsoindetailtheinternalstructureofthesinglechipmicrocomputer,eachpinandthedescriptionofthecharacteristicsofthechip.
[Keywords]:
STC89C52;AD9834;DDS
前言
单片机是一种集成在电路芯片,它是采用超大规模集成电路技术,把具有数据处理能力的中央处理器CPU、只读存储器ROM、随机存储器RAM、多种I/O接口和中断系统、定时器/计时器等功能(可能还包括驱动显示电路、模拟多路转换器、脉宽调制电路、A/D转换等电路)集成到一块硅片上,从而构成一个小而完善的计算机系统。
波形发生器是一种数据信号发生器,在调试硬件时常常需要加入一些信号,以观察电路工作是否正常。
而一般的信号发生器,不但笨重,而且只发生一些简单的波形,不能满足需要。
例如用户要调试串口通信程序时,必须先在计算机上写好一段程序,之后再用数据线连接计算机和实验板,如果不能正常使用,不知道是数据线还是程序出现问题。
用E2000/L的波形发生器功能,可以定义串口数据。
通过逻辑探勾输出,调试起来简单快捷。
直接数字频率合成(DDS)技术是继1971年问世以来[1],由于它低成本、低功耗、高分辨率、频率切换时间短、相位连续、结构简单、体积小等诸多优点,在电信和电子仪器领域得到了越来越广泛的应用。
AD9834是ADI公司生产的一款采用DDS技术、低功耗、可编程波形发生器,器件采用MSOP封装,非常小巧,外围电路简单,通过SPI接口和单片机相连,编程可生成方波、三角波、正弦波,输出频率和相位都可通过软件编程,易于调节。
本设计主要是基于AD9834的一款简易信号发生器[2],由STC89C52单片机通过3个SPI接口控制DDS芯片AD9834产生各种频率的正弦波、三角波、方波,经放大整形电路后输出,并通过独立的按键切换输出的波形,也可改变频率和输出幅度。
该系统以简易为出发点,用熟悉的单片机STC89C52作为主控芯片,选用低功耗芯片AD9834为信号产生芯片。
且使用DDS器件,具有体积很小,电路简单的优点,整个系统可以做得很小,甚至可以作为手持设备使用,这就正好满足了当前技术的需要。
这也是这次设计的两个创新点。
第1章绪论
第1.1节研究的背景和意义
波形发生器亦称函数发生器,作为实验时使用的信号源,是当代各种电子电路实验设计应用中必不或缺的仪器设备之一。
目前,市场上常见的波形发生器大多数是纯硬件的搭接而成,且波形的种类有限的,多为方波、正弦波、锯齿波、三角波等波形。
信号发生器作为一种常见的应用电子仪器设备,传统的信号发生器可以完全由硬件电路搭接而成,如采用555振荡电路发生方波、正弦波和三角波的电路便是可取的路经之一,不用依靠单片机。
但是这种电路存在波形质量差,难以控制,可调节的范围小,电路过于复杂和体积大等缺点。
在科学研究和生产实践中,如工业过程控制,地震模拟机械振动,生物医学等领域常常需要用低频信号源。
但是由硬件电路构成的低频信号其性能难以令人满意,而且由于低频信号源所需的RC很大,电阻大,电容大在制作上有困难,参数的精度也难以保证;体积大、漏电和损耗大更是致命的弱点。
一旦工作需求功能有增加,则电路复杂程度会大大增加。
现代电子领域中,单片机的应用正在不断地走向深入,这必将导致传统控制于检测技术的日益更新。
单片机构成的仪器具有高可靠性、高性价比,在智能仪表系统和办公自动化等诸多领域得以极为广泛的应用,并走入家庭,从洗衣机、微波炉到音响和汽车,处处可见其应用。
因此,单片机技术开发和应用水平已逐步成为一个国家工业发展水平的标志之一。
一块单片机芯片就是一台计算机,由于单片机这种特殊的结构形式,在某些应用领域中,它承担了大中型计算机和通用微型计算机无法完成的一些工作,使其具有很多显著的优点和特点,因此在各个领域中都得到了迅猛的发展。
第1.2节波形发生器的发展状况
波形发生器是能够产生大量的标准信号和用户定义信号的,并可以保证高稳定性、高精度、易操作性和可重复性的电子仪器。
波形发生器具有频率稳定性和连续的相位变换等优点,它不仅可以模拟各种复杂的信号,还可对波形、频率、相移、幅值进行动态、及时的控制,它还可以与其它仪器通讯组成自动测试系统,因此它被广泛用在震动激励、自动控制系统、通讯和仪器仪表等领域。
在70年代以前,信号发生器主要有两类:
脉冲波和正弦波,而波形发生器介于两类之间,能够提供正弦波、方波、三角波等几种常用标准波形,如果产生其它波形时,则需要采用较复杂的电路和机电结合的方法。
这个时期的波形发生器多采用模拟电子技术,而且模拟器件构成的电路存在着价格贵、功耗大、尺寸大等缺点,并且要产生较为复杂的信号波形,则电路结构十分复杂。
同时,主要体现在两个较为突出的问题上,一是通过电位器的调节来实现输出频率的调节,因此很难将频率调到某一个固定值;二是脉冲的占空比不可调节。
在70年代以后,微处理器的出现,可以通过用处理器、D/A和A/D,硬件和软件使波形发生器的功能变大,从而产生更加复杂的波形。
这个时期的波形发生器大多数以软件为主,它的实质就是采用微处理器对DAC的程序控制,就能够得到各种简单的波形。
90年代末,出现几种真正高价格、高性能的波形发生器、但是HP公司推出了型号为HP770S的信号模拟装置系统,它是由HP1776A波形发生软件和HP8770A任意波形数字化组成。
实际上HP8770A也仅可以产生8种波形,而且价格十分昂贵。
不久以后,LeCroy公司生产的型号为9100的任意波形发生器,Analogic公司推出了型号为Data-2020的多波形合成器等。
到了二十一世纪,随着集成电路技术的高速发展,出现了很多种工作频率可以超过GHz的DDS芯片,同时也推动了函数波形发生器的发展,在2003年,Agilent的产品33220A就能够产生17种波形,最高频率可达到20M,在2005年,产品N6030A已经能够产生高达500MHz的频率,采样的频率可以达到1.25GHz。
第2章系统方案设计
本系统以STC89C52单片机为控制核心,对系统进行初始化,主要完成对键盘的响应、液晶的显示、AD9834频率和波形的设定等功能的控制,起到总控和协调各模块之间工作的作用。
图2-1系统结构框图
本系统结构如图2-1所示,本设计可分为以下模块:
单片机主控模块、键盘模块、DDS模块、液晶模块、增益可控模块。
下面对各个模块的设计方案逐一进行论证分析。
第2.1节单片机主控模块
STC89C52是一种带8K字节闪烁可编程可擦除只读存储器(FPEROM-FlashProgrammableandErasableReadOnlyMemory)的低电压,高性能CMOS8位微处理器,俗称单片机。
在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。
STC89C52有40个引脚,4个8位并行I/O口,1个全双工异步串行口,同时内含5个中断源,2个优先级,2个16位定时/计数器。
STC89C52的存储器系统由4K的程序存储器(掩膜ROM),和128B的数据存储器(RAM)组成。
它的内部结构如图2-2所示:
图2-2单片机内部结构框图
STC89C52具有以下标准功能:
8k字节Flash,512字节RAM,32位I/O口线,看门狗定时器,内置4KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。
另外STC89052可以降到0Hz静态逻辑操作,它支持2种软件也可以选择节电模式。
在空闲模式下,CPU停止工作,允许RAM、串口、定时器/计数器、中断继续工作。
2.1.1.STC89C52单片机主要特性
1、一个8位的微处理器(CPU)。
2、片内程序存储器ROM(4KB),用以存放一些原始数据、程序和表格。
但也有一些单片机内部不带ROM/EPROM,如8031,8032,80C31等。
3、片内数据存储器RAM(128B),用以存放可以读/写的数据,如运算的中间结果、最终结果以及显示的数据等,SST89系列单片机最多提供1K的RAM。
目前单片机的发展趋势是将RAM和ROM都集成在单片机里面,这样既方便了用户进行设计又提高了系统的抗干扰性。
SST公司推出的89系列单片机分别集成了16K、32K、64KFlash存储器,可供用户根据需要选用。
4、两个定时器/计数器,每个定时器/计数器都可以设置成计数方式,用以对外部事件进行计数,也可以设置成定时方式,并可以根据计数或定时的结果实现计算机控制。
为方便设计串行通信,目前的52系列单片机都会提供3个16位定时器/计数器。
5、四个8位并行I/O接口P0~P3,每个接口既可以用作输入,也可以用作输出。
6、一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单机与微机之间的串行通信。
7、片内振荡器和时钟产生电路,但石英晶体和微调电容需要外接。
最高允许振荡频率为12MHz。
SST89V58RD最高允许振荡频率达40MHz,因而大大的提高了指令的执行速度。
8、五个中断源的中断控制系统。
现在新推出的单片机都不只5个中断源,例如SST89E58RD就有9个中断源。
2.1.2.STC89C52的引脚图如图2-3所示:
图2-3STC89C52的引脚图
STC89C52部分引脚说明:
时钟电路引脚XTAL1和XTAL2:
XTAL1(19脚):
接外部晶体和微调电容的另一端;在片内它是振荡电路反相放大器的输入端。
在采用外部时钟时,该引脚必须接地。
XTAL2(18脚):
接外部晶体和微调电容的一端;在8051片内它是振荡电路反相放大器的输出端,振荡电路的频率就是晶体固有频率。
若需采用外部时钟电路时,该引脚输入外部时钟脉冲。
要检查8051/8031的振荡电路是否正常工作,可用示波器查看XTAL2端是否有脉冲信号输出。
控制信号引脚RST,PSEN,ALE和EA:
RST/VPD(9脚):
RST是复位信号输入端,高电平有效。
当此输入保持备用电源的输入端。
当主电源VCC发生故障,降低到低电平规定值时,将+5V电源自动两个机器周期(24个时钟振荡周期)的高电平时,就可以完成复位操作。
RST引脚的第二功能是VPD,即接入RST端,为RAM提供备用电源,以保证存储在RAM中的信息不丢失,从而合复位后能继续正常运行。
PSEN(29脚):
程序存储允许输出信号端。
在访问片外程序存储器时,此端定时输出负脉冲作为读片外存储器的选通信号。
此引脚接EPROM的OE端。
PSEN端有效,即允许读出EPROM/ROM中的指令码。
PSEN端同样可驱动8个LS型TTL负载。
要检查一个8051/8031小系统上电后CPU能否正常到EPROM/ROM中读取指令码,也可用示波器看PSEN端有无脉冲输出。
如有则说明基本上工作正常。
ALE/PROG(30脚):
地址锁存允许信号端。
当8051上电正常工作后,ALE引脚不断向外输出正脉冲信号,此频率为振荡器频率f的1/6。
CPU访问片外存储器时,ALE输出信号作为锁存低8位地址的控制信号。
平时不访问片外存储器时,ALE端也以振荡频率的1/6固定输出正脉冲,因而ALE信号可以用作对外输出时钟或定时信号。
如果想确定8051/8031芯片的好坏,可用示波器查看ALE端是否有脉冲信号输出。
如有脉冲信号输出,则8051/8031基本上是好的。
ALE端的负载驱动能力为8个LS型TTL(低功耗甚高速TTL)负载。
此引脚的第二功能PROG在对片内带有4KBEPROM的8751编程写入(固化程序)时,作为编程脉冲输入端。
EA/VPP(31脚):
外部程序存储器地址允许输入端/固化编程电压输入端。
当EA引脚接高电平时,CPU只访问片内EPROM/ROM并执行内部程序存储器中的指令,但当PC(程序计数器)的值超过0FFFH(对8751/8051为4K)时,将自动转去执行片外程序存储器内的程序。
当输入信号EA引脚接低电平(接地)时,CPU只访问外部EPROM/ROM并执行外部程序存储器中的指令,而不管是否有片内程序存储器。
对于无片内ROM的8031或8032,需外扩EPROM,此时必须将EA引脚接地。
此引脚的第二功能是VPP是对8751片内EPROM固化编程时,作为施加较高编程电压(一般12V~21V)的输入端。
输入/输出端口P0/P1/P2/P3:
P0口(P0.0~P0.7,39~32脚):
P0口是一个漏极开路的8位准双向I/O口。
作为漏极开路的输出端口,每位能驱动8个LS型TTL负载。
当P0口作为输入口使用时,应先向口锁存器(地址80H)写入全1,此时P0口的全部引脚浮空,可作为高阻抗输入。
作输入口使用时要先写1,这就是准双向口的含义。
在CPU访问片外存储器时,P0口分时提供低8位地址和8位数据的复用总线。
在此期间,P0口内部上拉电阻有效。
P1口(P1.0~P1.7,1~8脚):
P1口是一个带内部上拉电阻的8位准双向I/O口。
P1口每位能驱动4个LS型TTL负载。
在P1口作为输入口使用时,应先向P1口锁存地址(90H)写入全1,此时P1口引脚由内部上拉电阻拉成高电平。
P2口(P2.0~P2.7,21~28脚):
P2口是一个带内部上拉电阻的8位准双向I/O口。
P口每位能驱动4个LS型TTL负载。
在访问片外EPROM/RAM时,它输出高8位地址。
P3口(P3.0~P3.7,10~17脚):
P3口是一个带内部上拉电阻的8位准双向I/O口。
P3口每位能驱动4个LS型TTL负载。
P3口与其它I/O端口有很大的区别,它的每个引脚都有第二功能,如下:
P3.0:
(RXD)串行数据接收
P3.1:
(RXD)串行数据发送
P3.2:
(INT0#)外部中断0输入
P3.3:
(INT1#)外部中断1输入
P3.4:
(T0)定时/计数器0的外部计数输入
P3.5:
(T1)定时/计数器1的外部计数输入
P3.6:
(WR#)外部数据存储器写选通
P3.7:
(RD#)外部数据存储器读选通
2.1.3.STC89C52单片机的中断系统
STC89C52系列单片机的中断系统有5个中断源,2个优先级,可以实现二级中断服务嵌套。
由片内特殊功能寄存器中的中断允许寄存器IE控制CPU是否响应中断请求;由中断优先级寄存器IP安排各中断源的优先级;同一优先级内各中断同时提出中断请求时,由内部的查询逻辑确定其响应次序。
2.1.4.STC89C52单片机的定时/计数器
在单片机应用系统中,常常会有定时控制需求,如定时输出、定时检测、定时扫描等;也经常要对外部事件进行计数。
89C52单片机内集成有两个可编程的定时/计数器:
T0和T1,它们既可以工作于定时模式,也可以工作于外部事件计数模式,此外,T1还可以作为串行口的波特率发生器。
第2.2节液晶模块
液晶显示器(LCD)英文全称为LiquidCrystalDisplay,它一种是采用了液晶控制透光度技术来实现色彩的显示器。
和CRT显示器相比,LCD的优点是很明显的。
由于通过控制是否透光来控制亮和暗,当色彩不变时,液晶也保持不变,这样就无须考虑刷新率的问题。
显示接口用来显示系统的状态,命令或采集的电压数据。
本系统显示部分用的是LCD液晶模块,采用一个16×1的字符型液晶显示模块。
LCD1602液晶模块采用HD44780控制器,HD44780具有简单而功能较强的指令集,可以实现字符移动,闪烁等功能,LM016L与单片机MCU通讯可采用8位或4位并行传输两种方式,HD44780控制器由两个8位寄存器,指令寄存器(IR)和数据寄存器(DR)忙标志(BF),显示数RAM(DDRAM),字符发生器ROM(CGOROM)字符发生器RAM(CGRAM),地址计数器RAM(AC)。
IR用于寄存指令码,只能写入不能读出,DR用于寄存数据,数据由内部操作自动写入DDRAM和CGRAM,或者暂存从DDRAM和CGRAM读出的数据,BF为1时,液晶模块处于内部模式,不响应外部操作指令和接受数据,DDTAM用来存储显示的字符,能存储80个字符码,CGROM由8位字符码生成5*7点阵字符160中和5*10点阵字符32种.
LCD1602液晶模块的引脚图如图2-4所示:
图2-4LCD1602引脚图
LCD1602引脚介绍:
VSS(1脚):
一般接地。
VDD(2脚):
接电源。
VEE(3脚):
液晶显示器对比度调整端,接电源时对比度最弱,接地时对比度最高(对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度)。
RS(4脚):
RS为寄存器选择,高电平1时选择数据寄存器、低电平0时选择指令寄存器。
R/W(5脚):
R/W为读写信号线,高电平
(1)时进行读操作,低电平(0)时进行写操作。
E(6脚):
E(或EN)端为使能(enable)端,下降沿使能。
DB0(7脚):
低4位三态、双向数据总线0位(最低位)
DB1(8脚):
低4位三态、双向数据总线1位
DB2(9脚):
低4位三态、双向数据总线2位
DB3(10脚):
低4位三态、双向数据总线3位
DB4(11脚):
高4位三态、双向数据总线4位
DB5(12脚):
高4位三态、双向数据总线5位
DB6(13脚):
高4位三态、双向数据总线6位
DB7(14脚):
高4位三态、双向数据总线7位(最高位)
寄存器选择控制如表2-1:
表2-1寄存器选择控制
RS
R/W
操作说明
0
0
写入指令寄存器(清除屏等)
0
1
读busyflag(DB7)以及读取位地址计数器(DB0~DB6)值
1
0
写入数据寄存器(显示各字型等)
1
1
从数据寄存器读取数据
第2.3节DDS模块
2.3.1.DDS技术简介
直接数字合成技术是美国学者于1971年提出的,即以全数字技术,从相位概念出发直接合成所需波形的一中新的频率合成原理,称之为直接数字频率合成器(DirectDigitalSynthesis)。
它的基本原理就是利用采样原理,通过查表法产生波形。
但是限于当时微电子技术和数字信号处理技术的限制,DDS并没有被足够的重视,随着现代超大规模集成电路的高速发展,使数字频率合成技术得到了质的飞跃,它在频率转换时间、相位连续性、相对带宽、高分辨率、正交输出以及集成化等一系列性能指标方面,已经远超过了传统的频率合成技术所能达到的水平。
但是由于DDS数字化实现的固有特点,决定了其输出频谱杂散较大。
从20世纪80年代末,通过深入的研究认识了DDS杂散的原因及其分布规律后,对DDS相位累加器进行了改进,ROM数据进行了压缩,使用了抖动注入技术以及对DDS系统结构和工艺结构进行了改进。
DDS技术建立在采样定理的基础上,它首先对需要产生的信号波形进行采样和量化,然后存入存储器作为待产生信号波形的数据表。
输出信号波形时,电路在一个高稳定时钟控制下从数据表中依次读出信号波形的数据,产生过数字化的信号,这个信号再通过DAC转换成所需的模拟信号波形。
具体原理框图如图2-5所示。
它的核心是相位累加器,由N位加法器与N位相位寄存器构成,类似一个简单的计数器。
加法器将频率控制字与累加寄存器输出的累加相位数据相加,把相加后的结果送至累加寄存器的数据输入端。
这样,相位累加器在时钟作用下,不断对频率控制字进行线性相位累加。
由此可以看出,相位累加器输出的数据就是合成信号的相位,相位累加器的溢出频
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 AD9834 波形 发生器 设计