资源说明:"基于C8051F060单片机控制AD9833实现FSK调制"
本文主要介绍基于C8051F060单片机控制AD9833实现FSK调制的设计和实现。FSK(Frequency Shift Keying,频率键控)调制是一种常用的数字调制方法,它通过改变载波的频率来传输数字信息。
在数字信息传输中,基带数字信号通常要经过调制器调制,将频率搬移到适合信息传输的频段上。FSK调制是一种简单、可靠的数字调制方法,它广泛应用于现代数字通信系统的低、中速数据传输中。
直接数字频率合成技术(DDS)是一种基于数字信号处理技术的信号合成方法。DDS器件采用高速数字电路和高速D/A转换技术,具备频率转换时间短、频率分辨率高、频率稳定度高、输出信号频率和相位可快速程控切换等优点,可以实现对信号的全数字式调制。
AD9833是一块完全集成的DDS芯片,仅需要1个外部参考时钟、1个低精度电阻器和一些解耦电容器就能产生高达12.5MHz的正弦波。AD9833的内部电路包括数字器件和模拟器件两部分,主要由相位累加器、ROM波形查询表、数模转换器DAC和低通滤波器LPF构成。
在本设计中,我们使用C8051F060单片机来控制AD9833,以实现FSK调制。C8051F060是一个完全集成的混合信号片上系统,具有大量的数字资源,需要通过4个低端I/O端口P0、P1、P2和P3来使用。我们使用单片机的3个I/O口和AD9833连接,FSYNC(控制输入,低电平有效)、SCLK(串行时钟输入)和SDATA(串行数据输入)与单片机的可编程管脚连接。
软件控制写数据到控制寄存器单片机传送数据到AD9833的时序如图3所示:FSYNC引脚是使能引脚,电平触发方式,低电平有效。进行串行数据传输时,FSYNC引脚必须置低,这种情况下,16个SCLK的下降沿数据被送到AD9833的输入移位寄存器。在第16个SCLK的下降沿FSYNC可以被置高,当然,也可以连续加载多个16位数据,仅在最后一个数据的第16个SCLK的下降沿时将FSYNC置高。
需要注意的是,在FSYNC开始变为低前(即将开始写数据时)),SCLK必须为高电平。单片机写16位数据到AD9833时,高位在前,低位在后。用软件模拟时钟信号和片选信号。
本设计实现了基于C8051F060单片机控制AD9833的FSK调制,具有实时性强、抗噪声和抗衰落性能强等优点,已成功应用于井下声波传输系统中。
本源码包内暂不包含可直接显示的源代码文件,请下载源码包。