首 页文档资料下载资料维修视频包年699元
请登录  |  免费注册
当前位置:精通维修下载 > 文档资料 > 家电技术 > 单元电路介绍 > 其它电路
基于DDS芯片AD9833的音源发生器设计
来源:本站整理  作者:佚名  2010-04-08 18:53:53



在2008年浙江省大学生电子设计竞赛中,有一个题目是“音乐演奏器设计”,要求用12个键盘演奏音乐,其中有一个关于音阶的技术指标要求频率误差小于±0.1%。本题目的关键在于产生一个高精度的音源。一般采用的单片机定时器中断产生信号的方法勉强能达到这个要求。本题目有一个音阶对应频率的附表,描述了各音阶对应频率的精确值,如音阶6频率为739.99 Hz,采用51系列单片机定时器中断方法无法达到该表数据所描述频率精度要求。而采用DDS技术,则能达到这一频率精度的要求。与采用51单片机定时器产生的信号相比,通过DDS产生的音阶信号除了频率精度高的优点外,产生的是正弦波,具有“纯”音的特点,听觉效果较好。基于上述原因,采用DDS+MCU是实现音乐演奏器的一种较好设计方案。其技术核心为可控的音阶的发生,构成一个音源发生器。本文介绍的音源发生器可用于钢琴的校音,具有一定实用价值。
1 音源产生原理
  Tierney J和Tader C M等人于1971年首次提出了DDS或DDFS(Direct Digital Frequency Synthesis)的概念,通常将DDS视为第三代频率合成技术。DDS突破了以往频率合成法的原理,从“相位”的概念出发进行频率合成。这种方法不仅可以产生不同频率的正弦波,而且可以控制波形的初始相位。另外,可以采用DDS方法产生任意波形(AWG)。
    DDS的基本结构如图1所示,包括主频、同步加法器、频率字寄存器、ROM、D/A、LPF等。主频产生主时钟,同步加法器按照主时钟进行同步加法运算。同步加法器的一个加数是存储于频率字寄存器中的频率字,另一个加数是同步加法器的上次加法运算结果(和)。同步加法器的加法运算结果(和)作为ROM的地址,ROM内存储有波形数据,ROM的数据输出由D/A转换成模拟量,经过LPF滤波,输出ROM内存储的波形。

    基本的DDS芯片,主频fMCLK=1 MHz,频率字FREQREG=1,同步加法器的位数为8,则同步加法器相当于进行0~255(0x00~0xFF)的计数过程,该过程循环重复,其循环频率为fMCLK/256。若ROM存储有正弦波数据,则经过D/A转换和LPF滤波后,输出频率为fMCLK/256的正弦波信号;当频率字FREQREG=2,则同步加法器相当于进行步长为2的0~255(0x00~0xFF)的累加过程,该过程的频率为2×fMCLK/256,也就是输出频率为2×fMCLK/256的正弦波信号。
  由此类推,基本型DDS芯片的输出频率为:
  f0=fMCLK/28×FREQREG
    对于基本型DDS芯片,一般,主频fMCLK通过晶体振荡电路产生,相对固定,因此DDS的输出频率取决于频率字,频率字一般通过串行或并行接口进行设置。
    DDS芯片的输出频率的变化间隔(分辨率)为fMCLK/28(当同步加法器的位数是8时)。输出频率的稳定度主要取决于晶体振荡的稳定度,输出波形则取决于ROM中的波形数据,根据奈奎斯特定理,最高输出频率小于fMCLK/2。
    由于同步加法器结果是改变输出波形的相位,在有关DDS芯片的资料中[1],该同步加法器通常称为相位累加器。
    实际应用时,DDS的结构会复杂得多,同步加法器的位数远大于8,加入相位加法器,ROM、D/A数据宽度在10位以上,主频也会较高。因此通常采用专用芯片,也有少量采用FPGA来实现的(特别当需要实现AWG时)。
    Qualcomm公司、ADI公司等推出一系列DDS专用芯片。比较典型的有AD9850、AD9851、AD9852、AD9853、AD9833等。当前的信号发生器广泛使用DDS专用芯片作为电路核心[1]。历年的大学生电子竞赛均有涉及DDS芯片应用的题目。
    AD9833是ADI公司生产的一款低功耗、可编程波形发生器,能够产生正弦波、三角波、方波输出,输出频率和相位都可通过软件编程,调节比较方便。采用28位的频率寄存器,当主频时钟为25 MHz时,频率分辨率为0.1 Hz;主频时钟为1 MHz时,频率分辨率可以达到0.004 Hz[2]。
    AD9833采用10个引脚的MSOP封装形式,采用SPI接口进行控制寄存器和频率寄存器的设置,功能简洁,使用方便,故选用AD9833芯片作为音阶频率发生器。AD9833芯片的引脚图如图2所示。

 


    在主频合适的条件下,通过SPI接口设置频率寄存器和控制寄存器,即能得到理想的信号输出。其输出频率为:
   
2 硬件设计
    AD9833芯片有3根串行接口线,与SPI、QSPI、MI-CROWIRE和DSP接口标准兼容,在串口时钟SCLK的作用下,数据以16位的方式加载到设备上,其时序图如图3所示,FSYNC引脚是使能引脚,电平触发方式,低电平有效。进行串行数据传输时,FSYNC引脚必须置低。


   

[1] [2]  下一页

关键词:

文章评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分)

推荐阅读

图文阅读

热门阅读

Copyright © 2007-2017 down.gzweix.Com. All Rights Reserved .
页面执行时间:98,628.91000 毫秒