直接数字频率合成技术(DDS)将先进的数字处理技术与方法引入信号合成领域。DDS器件采用高速数字电路和高速D/A转换技术,具备频率转换时间短、频率分辨率高、频率稳定度高、输出信号频率和相位可快速程控切换等优点,可以实现对信号的全数字式调制。
DDS芯片--AD9833的介绍
与传统的频率合成技术相比,DDS技术具有很多优点:频率切换时间短、工作频率范围宽、频率分辨率高、相位变化连续和容易对输出信号实现调制等。DDS主要由标准参考频率源、相位累加器、波形存储器、数/模转换器、低通平滑滤波器等构成。其中,参考频率源一般是一个高稳定度的晶体振荡器,其输出信号用于DDS中各部件同步工作。DDS的实质是对相位进行可控等间隔的采样。
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的内部电路包括数字器件和模拟器件两部分。主要由相位累加器(由加法器和相位寄存器组成)、ROM波形查询表、数模转换器DAC和低通滤波器LPF构成。AD9833的基本结构原理如图1所示。其中M为频率控制字、FMCLK为时钟频率,相位累加器在时钟FMCLK的控制下以步长M作累加,相位寄存器的输出与相位控制字相加后输入到正弦查询表地址中。正弦查询表包含1个周期正弦波的数字幅度信息,每个地址对应正弦波中0°~360°范围内的1个相位点。查询表把输入的地址相位信息映射成正弦波幅度的数字量信号S(n),经D/A转化器变成阶梯波S(t),再经低通滤波器平滑后就可得到合成的信号波形。其形状取决于波形ROM中存放的幅码,因此用DDS可以产生任意波形。输出正弦波频率为:fOUT=M(fMCK/228),其中,M为频率控制字,由外部编程给定,其范围为0≤M≤228-1 .
图1 AD9833的基本结构原理图
硬件电路连接
本设计用Silicon Labs公司推出的完全集成的混合信号片上系统C8051F060来控制AD9833,C8051F060有大量的数字资源需要通过4个低端I/O端口P0、P1、P2和P3才能使用。P0、P1、P2和P3的每个引脚既可定义为通用的端口I/O引脚,又可以分配给一个数字外设或功能(例如:UART0或INT1)。不管引脚被分配给一个数字外设或是作为通用I/O,总是可以通过读相应的数据寄存器得到端口I/O引脚的状态。
AD9833与单片机C8051F060连接时,使用单片机的3个I/O口和AD9833连接。FSYNC(控制输入,低电平有效)与单片机的可编程管脚P0.7连接,SCLK(串行时钟输入)与可编程管脚P0.4连接,SDATA(串行数据输入)与可编程管脚P0.5连接。三个可编程管脚都可用软件编程实现数据的传送。硬件电路连接如图2所示,单片机产生控制信号和波形参数,通过串行接口将数据传送到AD9833,经AD9833输出的正弦波信号再经低通滤波后输出。
图2 硬件电路连接[page]
软件控制
写数据到控制寄存器
单片机传送数据到AD9833的时序如图3所示:FSYNC引脚是使能引脚,电平触发方式,低电平有效。进行串行数据传输时,FSYNC 引脚必须置低,这种情况下,16个SCLK的下降沿数据被送到AD9833的输入移位寄存器。在第16个SCLK的下降沿FSYNC可以被置高,当然,也可以连续加载多个16位数据,仅在最后一个数据的第16个SCLK的下降沿时将FSYNC置高。需要注意的是,在FSYNC开始变为低前(即将开始写数据时)),SCLK必须为高电平。
图3 串行时序
单片机写16位数据到AD9833时,高位在前,低位在后。用软件模拟时钟信号和片选信号。传送数据的程序如下:
数据写入方式
设置控制寄存器中的D15D14=00,表示数据写入控制寄存器;设置B28(D13)=1,表示28位数据可以连续写入频率寄存器,默认先写入低14位频率字,再连续写入高14位频率字到频率寄存器中;设置B28(D13)=0,表示28位数据分两次写入频率寄存器,此时配合 HLB 的值使用(当HLB=1时允许高14位频率字写入到频率寄存器,当HLB=0时允许低14位频率字写入到频率寄存器)。因此写入到控制寄存器的数据可为:0010 0000 0000 0000,表示设置连续28位频率字。数据写入流程图如图4所示。
图4 数据写入流程图
选择频率寄存器
由于AD9833片内有2个频率寄存器,即FREQ0、FREQ1,因此要确定是将频率控制字写入哪一个。这可通过设置 D15D14 的值来进行选择,当D15D14=01表示14位的频率字将写入FREQ0;当D15D14=10表示14位的频率字将写入FREQ1.以输出频率为7230Hz为例,介绍写入到频率寄存器1的频率字。[page]
写入低14位数据为:1011 0110 0001 1110,表示将低14位频率字写入FREQ1.
写入高14位数据为:1000 0000 0000 1011,表示将高14位频率字写入FREQ1.
主程序设计
首先,对C8051F060单片机初始化,这包括单片机晶振初始化、端口初始化,定义控制AD9833的I/O接口及交叉开关,接着初始化AD9833.当AD9833初始化时,为避免DAC产生虚假输出,RESET必须置为1(RESET不会复位频率、相位和控制寄存器),直到配置完毕,需要输出时才将RESET置为0;RESET为0后的8-9个MCLK时钟周期可在DAC的输出端观察到波形。AD9833初始化流程图如图5所示。然后,写频率寄存器0的控制字(0x2000),在进行FSK调制时,AD9833的两个频率寄存器装载不同的频率值,本实验中,频率寄存器0装载低频率6830Hz,频率寄存器1装载高频率7230Hz,通过设置AD9833的控制寄存器的FSELECT位来选择频率寄存器。主程序流程如图6所示。
图5 AD9833初始化 图6 主程序流程图
实验结果
在示波器上能观测到FSK调制信号,为方便截图,设置频率为7230Hz的正弦信号在示波器上进行观察,图7是频率为7230Hz的正弦信号经过低通滤波之后的频谱图。由图7可以看出,实际输出频率为7.22985Hz.图8是对应的时域图形。
图7 输出频率为7230Hz的频谱图 图8 频率为7230Hz时域图
结论
本实验中设计的FSK调制信号,在工程中有较强的实用价值,已成功应用于井下声波传输系统中。
上一篇:基于单片机的HT1621液晶显示系统设计方法
下一篇:DDS芯片AD9850的工作原理及其与单片机的接口分析
推荐阅读最新更新时间:2024-03-16 13:18
设计资源 培训 开发板 精华推荐
- CGD和Qorvo将共同革新电机控制解决方案
- 是德科技 FieldFox 手持式分析仪配合 VDI 扩频模块,实现毫米波分析功能
- 贸泽开售可精确测量CO2水平的 英飞凌PASCO2V15 XENSIV PAS CO2 5V传感器
- 玩法进阶,浩亭让您的PCB板端连接达到新高度!
- 长城汽车研发新篇章:固态电池技术引领未来
- 纳芯微提供全场景GaN驱动IC解决方案
- 解读华为固态电池新专利,2030 叫板宁德时代?
- 让纯电/插混车抓狂?中企推全球首款-40℃可放电增混电池,不怕冷
- 智驾域控知多少:中低端车型加速上车,行泊一体方案占主体
- Foresight推出六款先进立体传感器套件 彻底改变工业和汽车3D感知