基于CDCE949的可控频率源设计与实现
扫描二维码
随时随地手机看文章
摘要:针对频率源远程控制难问题,介绍了一种可由单片机控制的频率合成芯片CDCE949。其中频率的变化是通过单片机运用IIC总线技术将控制数据发送到CDCE949的控制寄存器内,从而合成相应的频率值。设备具有输出频率切换快速、频率分辨率和稳定度高等性能,能较好地满足远程控制频率源的需要。
关键词:频率源;CDCE949;IIC;控制寄存器
调频发射机发射频率的改变大都是通过调节压控振荡器(VCO)来实现的。为实现调频发射机的远程控制化、频率的变化由微控制器来决定。系统采用频率点对点广播,而通过控制VCO的变化来改变频率不够灵活。通过本振信号源和基带信号混频来实现音频信号的调制和发射,这样设计一款可由单片机控制的频率源就成为可控调频发射系统的核心技术。
频率合成芯片CDCE949正能满足可控频率源的参数和性能,本文用单片机的两线串行接口(TWI)向CDCE949的控制寄存器写内容,来对输出频率进行控制。
1 频率合成技术及主要技术指标
1.1 频率合成技术
频率合成是指由一个或多个频率稳定度和精确度很高的参考信号源通过频率域的线性运算,产生具有同样稳定度和精确度的大量离散频率的过程。基于此原理制成的频率源为频率合成器。
1.2 频率合成技术的主要技术指标
频率合成器的性能需要一系列指标来表征,但由于不同用途的合成器性能差异较大,故难以给出完整的指标系列。这里只给出一些基本的技术指标:
1)频率范围频率合成器输出最低频率fonmin,和输出最高频率fonmax之间的变化范围。也常用相对带宽△f来衡量频率范围。
2)频率分辨率频率合成器输出的两相邻频率点之间的间隔,不同用途的频率合成器对频率分辨率的要求相差很大。
3)频率切换时间 从发出频率切换的指令开始,到频率切换完成,并进入允许的相位误差范围所需要的时间。它与频率合成的方式密切相关。
4)谐波抑制和杂散抑制 谐波抑制是指载波整数倍频率处单根谱线的功率与载波功率之比,而杂散抑制指与载波频率成非谐波关系的离散谱功率与载波功率之比,它们表征了频率源输出谱的纯度频率源中的谐波和杂散主要由频率源中的非线性元件产生,也有频率源内外干扰的影响,还与频率合成的方式有关。
5)频率稳定度指在规定的时间问隔内,频率合成器输出频率偏离标定值的数值,它分长期、短期和瞬间稳定度3种。
6)调制性能指频率合成器的输出是否具有调幅(AM)、调频(FM)和调相(PM)等功能。
2 设备的硬件组成
2.1 频率合成设备组成
单片机与CDCE949的简单连接图如图1所示。利用单片机TWI的SCL、SDA两根双向总线与CDCE949按照IIC总线协议进行通信。单片机采用3.3 V供电,CDCE949用3.3 V和1.8 V供电,晶振源选用27 MHz,在制版布线过程中注意要尽量将晶振靠近芯片,这样能够保证芯片稳定工作,输出的频率浮动噪声小。
2.2 Atmega128单片机简介
Atmega128单片机是一款基于AVR内核的,采用RISC结构的增强型低功耗CMOS 8位微控制器。它的大部分指令在一个时钟周期内完成,因此具有1 MIPS/MHz的数据吞吐率。其拥有优化的功率消耗结构,在功耗相对较少的情况下可以进行复杂的处理。
2.3 频率合成器CDCE949
CDCE949是基于PLL模式的频率合成芯片,它具有价格低廉、性能高、可靠性好等优点,还有4组可编程的乘法器和除法器,可以能够仅凭一个信号源产生9路输出,而且每路输出可以通过设置4组PLL在线编程,频率高达230 MHz。
输入信号可以是晶体时钟输入,或是LVCMOS时钟信号。如果外接晶体时钟信号加一负载电容在大多数应用上都是很适合的,负载电容可以选择0~20 pF。外接压控振荡器输入调制信号,也可以输出外部控制信号也就是脉宽调制信号。
3 软件体系结构
3.1 IIC总线接口概述
IIC总线是由数据线SDA和时钟线SCL构成的串行总线,可发送和接收数据。在CPU与被控IC之间、IC与IC之间进行双向传送,最高传送速率100 kbit/s。各种被控制电路均并联在这条总线上,每个电路和模块都有唯一的地址,在信息的传输过程中,IIC总线上并接的每一模块电路既是主控器(或被控器),又是发送器(或接收器),这取决于它所要完成的功能。CPU发出的控制信号分为地址码和控制量两部分,地址码用来选地址,即接通需要控制的电路,确定控制的种类;控制量决定该调整的类别(比如对比度、亮度等)及需要调整的量。这样,各控制电路虽然挂在同一条总线上,却彼此独立,互不相关。
IIC总线在传送数据过程中共有3种类型信号,分别是:开始信号、结束信号和应答信号。
1)开始信号SCL为高电平时,SDA由高电平向低电平跳变,开始传送数据。
2)结束信号SCL为高电平时,SDA由低电平向高电平跳变,结束传送数据。
3)应答信号 接收数据IC在接收到8位数据后,向发送数据的IC发出特定的低电平脉冲,表示已收到数据。CPU向受控单元发出一个信号后,等待受控单元发出一个应答信号,CPU接收到应答信号后,根据实际情况作出是否继续传递信号的判断。若未收到应答信号,则判断为受控单元出现故障。
3.2 CDCE949的控制指令格式
用IIC写设备的控制程序时,每个设备都有自己的指令格式,要严格按照其指令格式来进行通讯。
常用的指令格式如图2所示。
字节写程序指令格式如图3所示。
字节读程序指令格式如图4所示。
3.3 控制寄存器值的计算
在给定输入频率fIN,CDCE949的输出频率fOUT可以通过下列公式计算
这里,M(1~511)和N(1~4 095)是PLL乘法器/除法器的值;Pdiv(1~127)是输出的分频因子。
每个PLL输出的目标频率fVCO可以通过下式计算:
当PLL工作在小数的分频时需要进一步设置乘法器/除法器,这里,N'=N×2P;N≥M;80 MHz<fVCO>230 MHz,如果要求输出的频率值大于27 MHz小于80 MHz,可以将分频因子设为2、3或是更大。
3.4 控制程序设计
程序流程图如图5所示,由于每次向CDCE949控制寄存器写的内容并不是很多,采用单字节指令格式就足以将输出的频率按要求改变。
TWI在使用之前需要进行初始化,设置波特率和分频因子。
与受控设备进行总线握手,成功的话就有应答信号,在进行下一步往设备里写入数据。
成功将数据写入设备后释放总线,以等待下一次通讯。将上述过程写成一函数unsigned int IIC_Write(unsigned char Command Code, unsigned char DataByte)在主程序中进行调用。用I2C_Write(0x1810x80,0x5A);来设置N、P、O、R的值,其中0x18为Y1口寄存器地址,0x5A为设置相应频率N的值。
4 结束语
经过示波器观察可以看到清晰的正弦波形,通过单片机改变CDCE949寄存器的内容可以得到相应频率的波形。在80 MHz以下和90~230 MHz其FFT杂波很小,但是当合成频率在80~90MHz范围内出现240 MHz的杂波。此现象暂时无法解释,希望在今后的研究中能够找到原因。
远程控制实现只需增加与单片机远程通信的模块,如GSM模块。单片机与GSM模块的通讯已经完成,在此就不加以陈述。本设备的研制为频率源远程控制化提供了技术支持和实践经验。