TI中文支持网
TI专业的中文技术问题搜集分享网站

CDCE62002: 已经成功通过SPI将数据配置入芯片中,并且能够通过回读指令看到已配置成功,但锁相环未锁定

Part Number:CDCE62002

我的SPI写内容如下:

    

SPI写入时序如下:

其中reg2的写入内容参考了以下一篇帖子:

http://billauer.co.il/blog/2010/10/cdce62002-pll-vco-registers-ram-eeprom/

如文章所说,我也在约100ms时延后重新发送了以上整段SPI数据,但芯片仍未锁定

(注:我也尝试过正常按顺序写入R0-R1-R2中的内容,芯片不能锁定)

我所使用的电路原理图如下:

(注:目前我通过飞线的方式,从pin31输入了LVCMOS类型的30MHz时钟信号,并未使用pin2输入,其中PD脚始终拉高)

Amy Luo:

您好,

您 Register 0配置的好像不对,根据datasheet 寄存器说明,如果输入LVCMOS类型的时钟信号,应配置Register 0 [1:0]bit 为11,且 Smart MUX配置为10 – REF_IN Select。

建议您检查下寄存器值是否符合期望值,重新写入芯片看输出怎样?

,

? ?:

您好,我今天也发现了这个问题,现已将这个问题修改,现在写入的数据如下:

同时我将内部环路滤波调整为了外部环路滤波,具体滤波参数如下:

现在可以在EXT_LFP管脚读到一个高电平信号,但锁相环仍未锁定,且也没有输出

在进行以上测试前,已通过指令回读了寄存器数据,确定数据已经成功写入芯片中

,

? ?:

抱歉,缺少了一张图片,目前我配置的参数如下:

,

Amy Luo:

看上面寄存器值也不对,REF_IN输入LVCMOS类型的时钟信号,Register0的低四位应该是1011

,

? ?:

您好,感谢您的回复,确实这里是没有写正确的,目前我的数据写入内容如下:

SPI上的写入指令如下:

从芯片上回读到的SPI数据如下:

共有七段数据,其中后三段为回读的SPI内容,具体数值分别为如下:

R0回读内容为:0D000348        R1回读内容为:BFD44084

R2回读内容为:4FD44084  ,可写入的位都是正确的

发现R1回读到的内容地址位出现了问题,遂把代码改为如下,只回读R1内容:

现回读到的内容如下:

发现有一个回读SPI数据段没有任何数据,考虑第一次回读时的同位置SPI数据确实是有问题的

此次R1的回读数据为:8006C1C8  ,与写入数据8006C1C9不同

看数据手册可知,R1中不同的那一位是只读位,不能写入,所以R1地址也是正确的

在此状态下,芯片依旧未能正确输出时钟信号,事实上输出端没有任何信号

此时R2中的PD位没有配置其翻转

输入时钟如下:

此时外部PD管脚始终保持拉高状态,检查外围供电全部正常

(注,为了芯片的SPI_OUT能正常输出,我将VCC_OUT通过飞线的方式供了3.3V的电,如果不供电,会导致芯片的SPI_MISO无法正常工作)

,

Amy Luo:

PD拉高时上电,EEPROM的内容会写入到设备寄存器中,默认值是 register 0 0x72A000E0, register 1 0x8389A061,您可以先读取默认寄存器值吗?看是否可以正确读出?

,

? ?:

您好,这里是可以正常读出的,两个地址内的默认值都正确

,

Amy Luo:

感谢您的反馈!您可以再明确下您的寄存器配置值吗?

,

? ?:

好的,目前我的数据写入是这样的:

该段数据以100ms为周期,不停的循环写入:

此时,我板子上的芯片,可以观测到lockdown管脚拉高,即PIN32-PLL_LOCK管脚拉高:

但令我最为困惑的,是输出管脚仍然没有任何信号

此时芯片的时钟输入为AUX_IN的50MHz标准信号源输入,使用外部环路滤波

,

? ?:

然后我又尝试了另外一块一样的板子,程序完全相同的情况下,lockdown管脚没有拉高,也没有信号输出

输入的时钟信号如下

,

Amy Luo:

您先把PD拉低,编写寄存器后再把PD拉高,读取寄存器值是否发生了改变?因为我看下下面链接的解释,此时寄存器会复位至开机默认值:

https://e2e.ti.com/support/clock-timing-group/clock-and-timing/f/clock-timing-forum/350062/cdce62002—register-programming-in-power-down?tisearch=e2e-sitesearch&keymatch=CDCE62002%25252525252525252520%25252525252525252520PD#

? ? 说:此时芯片的时钟输入为AUX_IN的50MHz标准信号源输入

AUX_IN输入是负载电容8pF~10pF的 AT-Cut晶振输入,频率是 2 to 42 MHz,50MHZ不在这个频率范围内。

,

? ?:

 您好,我将50MHz的时钟输入换成了30MHz的时钟输入,目前SPI的写入数据如下:

同时我回读了PD拉高前后的芯片内数据,如下:

总回读数据,共11段

从回读数据来看,PD在拉低时,对R0和R1写入数据,在PD未拉高之前,不会被重置,且在PD拉高之后,也不会被重置

我认为可能是输入时钟信号的问题,请问对于该芯片,应该怎样输入时钟信号,才能够让它正常工作呢

,

? ?:

您好,感谢您的帮助,我已解决问题

真正的问题是,芯片的PD在拉高拉低时,对应的功耗会发生改变,我的整板功耗无法支持功耗升高,导致芯片供电出现了问题,我将板上其他芯片的供电暂时切断后,芯片工作就正常了

再次感谢您的帮助

,

Amy Luo:

很高兴您的问题得到解决,非常感谢您的反馈

赞(0)
未经允许不得转载:TI中文支持网 » CDCE62002: 已经成功通过SPI将数据配置入芯片中,并且能够通过回读指令看到已配置成功,但锁相环未锁定
分享到: 更多 (0)