高精度可编程波形发生器 AD9833中文资料
1.AD9833概述
AD9833是 ADI 公司生产的一款低功耗,可编程波形发生器,能够产生正弦波、三角波、方波
输出。波形发生器广泛应用于各种测量、激励和时域响应领域,AD9833无需外接元件,输出频
率和相位都可通过软件编程,易于调节,频率寄存器是28位的,主频时钟为25MHz 时,精度为
0.1Hz,主频时钟为1MHz 时,精度可以达到0.004Hz。可以通过3个串行接口将数据写入
AD9833,这3个串口的最高工作频率可以达到40MHz,易于与 DSP 和各种主流微控制器兼容。
AD9833的工作电压范围为2.3V-5.5V。
AD9833还具有休眠功能,可使没被使用的部分休眠,减少该部分的电流损耗,例如,若利用
AD9833输出作为时钟源,就可以让 DAC 休眠,以减小功耗,该电路采用10引脚 MSOP 型表面贴
片封装,体积很小。
AD9833的主要特点如下:
●频率和相位可数字编程;
●工作电压为3V 时,功耗仅为20mW;
●输出频率范围为0MHz-12.5MHz;
●频率寄存器为28位(在25MHz 的参考时钟下,精度为0.1Hz);
●可选择正弦波、三角波、方波输出;
●无需外界元件;
●3线 SPI 接口;
●温度范围为-40℃-+105℃。
2 AD9833的结构及功能
2.1 电路结构
AD9833是一块完全集成的 DDS(Direct Digital Frequency Synthesis)电路,仅需要1个外部参
考时钟、1个低精度电阻器和一个解耦电容器就能产生高达12.5MHz 的正弦波。除了产生射
频信号外,该电路还广泛应外于各种调制解调方案。这些方案全都用在数字领域,采用 DSP 技
术能够把复杂的调制解调算法简化,而且很精确。
AD9833的内部电路主要有数控振荡器(NCO)、频率和相位调节器、Sine ROM、数模转换
器(DAC)、电压调整器,其功能框图如图1所示。
AD9833的核心是28位的相位累加器,它由加法器和相位寄存器组成,每来1个时钟,相位寄存
器以步长增加,相位寄存器的输出与相位控制字相加后输入到正弦查询表地址中。正弦查询
表包含1个周期正弦波的数字幅度信息,每个地址对应正弦波中0°-360°范围内的1个相位点。
查询表把输入的地址相位信息映射成正弦波幅度的数字量信号,去 DAC 输出模拟量,相位寄
存器每经过228/M 个 MCLK 时钟后回到初始状态,相应地正弦查询表经过一个循环回到初始
位置,这样就输出了一个正弦波。输出正弦波频率为:
fOUT=M(fMCLK/228) (1)
其中,M 为频率控制字,由外部编程给定,其范围为0≤M≤228-1。
VDD 引脚为 AD9833的模拟部分和数字部分供电,供电电压为2.3V-5.5V。AD9833内部数字
电路工作电压为2.5V,其板上的电压调节器可以从 VDD 产生2.5V 稳定电压,注意:若 VDD 小
于等于2.7V,引脚 CAP/2.5V 应直接连接至 VDD。
2.2 功能描述
AD9833有3根串行接口线,与 SPI、QSPI、MI-CROWIRE 和 DSP 接口标准兼容,在串口时钟
SCLK 的作用下,数据是以16位的方式加载到设备上,时序图如图3所示,FSYNC 引脚是使能引
脚,电平触发方式,低电平有效。进行串行数据传输时,FSYNC 引脚必须置低,要注意 FSYNC
有效到 SCLK 下降沿的建立时间 t7的最小值。FSYNC 置低后,在16个 SCLK 的下降沿数据被
送到 AD9833的输入移位寄存器,在第16个 SCLK 的下降沿 FSYNC 可以被置高,但要注意在
SCLK 下降沿到 FSYNC 上升沿的数据保持时间 ts 的最小和最大值。当然,也可以在 FSYNC
为低电平的时候,连续加载多个16位数据,仅在最后一个数据的第16个 SCLK 的下降沿的时将
FSYNC 置高,最后要注意的是,写数据时 SCLK 时钟为高低电平脉冲,但是,在 FSYNC 刚开始
变为低时,(即将开始写数据时),SCLK 必须为高电平(注意 t11这个参数)。
当 AD9833初始化时,为了避免 DAC 产生虚假输出,RESET 必须置为1(RESET 不会复位频率、
相位和控制寄存器),直到配置完毕,需要输出时才将 RESET 置为0;RESET 为0后的8-9个
MCLK 时钟周期可在 DAC 的输出端观察到波形。
AD9833写入数据到输出端得到响应,中间有一定的响应时间,每次给频率或相位寄存器加载
新的数据,都会有7-8个 MCLK 时钟周期的延时之后,输出端的波形才会产生改变,有1个
MCLK 时钟周期的不确定性,因为数据加载到目的寄存器时,MCLK 的上升沿位置不确定。
3 AD9833的引脚功能及时序
AD9833的引脚排列如图2所示,各个引脚的功能描述见表1。
AD9833的时序特性如图3、图4和表2所示。
4 AD9833 的内部寄存器功能
AD9833 内部有 5 个可编程寄存器,其中包括 3 个 16 位控制寄存器,2 个 28 位频率寄存器和 2
个 12 位相位寄存器。
4.1 控制寄存器
AD9833 中的 16 位控制寄存器供用户设置所需的功能。除模式选择位外,其他所有控制位均
在内部时钟 MCLK 的下沿被 AD9833 读取并动作,表 3 给出控制寄存器各位的功能,要更改
AD9833 控制寄存器的内容,D15 和 D14 位必须均为 0。
4.2 频率寄存器和相位寄存器
AD9833 包含 2 个频率寄存器和 2 个相位寄存器,其模拟输出为
fMCLK/228×FREQEG (2)
其中:FREQEG 为所选频率寄存器中的频率字,该信号会被移相:
2π/4096×PHASEREC (3)
其中,PHASEREC 为所选相位寄存器中的相位字。
频率和相位寄存器的操作如表 4 所示。
5 应用设计
AD9833 可应用在 L15 型飞机控制盒配套的检测盒中,利用 AD9833 产生频率可调的正弦波,
以模拟机轮速度传感器的速度信号,从而对控制盒的刹车防滑通道能否正常的刹车防滑进行
检测。
5.1 AD9833 应用电路
检测盒设计以 TI 公司的 TMS320LF2407A 型 DSP 作为核心控制器,应用中需要 2 路速度信号,
因此需要检测盒给出 2 路可独立调节的频率,图 5 示出 TMS320LF2407A 与 AD9833 的硬件
连接。
外接有源晶体振荡器的输出送给 2 个 AD9833 作为主频时钟,DSP 的 SPI 口采用主动工作方
式,即用 SPISIMO 口发送数据,为了与 AD9833 的时序相配合,DSP 的接口时钟(SPICLK 信号)
方式选择有延时的下降沿,IOPC3 和 IOPC5 作为电路选通信号,IOPC3 为低电平时 U2 被选通,
此时对 U1 写数据无效;同理,IOPC53 为低电平时 U1 被选通,此时对 U2 写数据无效。
5.2 软件程序
图 6 示出了 AD9833 的软件流程。
无论是写控制寄存器、频率寄存器还是相位寄存器、在写数据之前都需要把选通信号置为有
效状态,这样写入的数据才会有效,否则无效。在 DSP 发送完 1 个数据字后将产生 SPI 中断请
求,本设计中未使用中断方式,而且通过查询中断标志来跳出,并虚读 DSP 的接收缓冲器清除
中断标志。