自己做了hmc1033的PCB板,用来产生500MHZ的时钟信号,写寄存器的代码如下:
HMC1033_Write(0x0A,0x2006); //reg AHMC1033_Write(0x08,0xC1BEfF);//reg8HMC1033_Write(0x0F,0x81); //reg fHMC1033_Write(0x07,0x14d); // reg7
HMC1033_Write(0x0B,0xF8061);//reg bHMC1033_Write(0x0C,0x0); //reg c
HMC1033_Write(0x02,0x02); //XTAL R,Step1 reg 2 HMC1033_Write(0x06,0x2003CA);//A/B Mode,Step2 reg6HMC1033_Write(0x09,0x10F264);//Charge Pump,Step3 reg 9
HMC1033_Write(0x05,0xFf88); // vco 01HMC1033_Write(0x05,0xF98); // vco 3HMC1033_Write(0x05,0x48B8); // vco 7HMC1033_Write(0x05,0x0); //vco 0
HMC1033_Write(0x03,0x50); //reg 3HMC1033_Write(0x04,0x0); //reg 4HMC1033_Write(0x05,0x210); //VCO Subsystem,Step4 vco2
写完之后能产生500M的时钟,且信号质量也很好,但锁定指示引脚为低电平。重要的是,过几分钟后,产生的时钟就会严重抖动。结果如下图所示。我觉得hmc1033一直都没有锁定才产生此情况。
但也找不出什么问题,也不懂怎么解决,请问是我写寄存器顺序或是方法错误 吗?真心求帮忙,十分感谢
楼主帮不了你,求大神过来看看。
请参考下面evb的寄存器:hmc1033_fracfb_LVPECL_Low_Noise
REVISION 1.0.1.0
REG 0 A7975
REG 1 2
REG 2 1
REG 3 2C
REG 5 210
REG 5 F98
REG 5 4B38
REG 5 0
REG 6 200B4A
REG 7 14D
REG 8 C1BEFF
REG 9 30ED5A
REG A 2006
REG B F8061
REG C 0
REG D 0
REG E 0
REG F 1
REG 10 A2
REG 11 19
REG 12 3
REG 13 1259
REG 14 0
REG 15 0
REG 16 0
REG 17 0
REG 18 0
REG 19 0
REG 1A 0
REG 1B 0
REG 1C 0
REG 1D 0
REG 1E 0
REG 1F 0
REG 4 147AE1
XTAL 50
DIVIDER_MANUAL_MODE 0
VCO_TO_SYNTH_DIV 1
VCO_TO_OUT_DIV 4