CDCE62005 配置不成功
公司第一次使用这个芯片 ,,采用FPGA实现SPI 接口时序,然后通过CPU 软件实现对该芯片各个寄存器的配置, 目前的情况是 在软件代码里 ,芯片上电
后根据datasheet的时序图 读eeprom里的默认寄存器配置 ,发现读的值不正确,然后 使用cdce62005软件生成我们需要的配置 ,写入到寄存器里,然后回读,发现读回来的值也是不对的,用示波器里输出时钟也没有结果,可以确认FPGA 已经将cpu的命令透传过去 ,这是怎么回事啊? 是写入和读取数据 的spi时序在软件里写没有正确吗? 使能的拉高 拉低 clk的 高低 所有的正确的 不正确的 都试过 写入的值和回读的值 不一致 而且没有没有任何规律
而且能够证明 eeprom 没有lock 读写操作是按照 DS 21page 写的
62005的手册21页没有时序图,请以官网最新版本手册为准,
请仔细看手册FIGRUE17~22保证和调整相关建立保持时间/并参考EVM注意高低位优先顺序和时钟/使能的初始状态和极性.
我是根据 datasheet 中的 Figure 14. Timing Diagram for SPI Write Command Figure 15. Timing Diagram for SPI Read Command 来配置时序的 可以吗?
你应该指的是datasheet中page26的Figure21和22的SPI时序图吧,参考这个是没有问题的。
我目前 向8个寄存器写值 然后回读 发现前七个都可以正确回读正确 可是第8个寄存器 有些问题 ,例如 我向寄存器写入 0xC50037F7 回读回来的是 0x050037F7
写入0xF50037F7 回读回来的是0x3F50037F7 ,规律是 第31 32 两个bit 都回读成0了 ,写这8个寄存器都是用的同一个函数 ,就第8个寄存器有问题 ,能帮帮看看 是什么问题引起的吗? 谢谢了
用逻辑抓数据 发现写入的数据时序没有错 用示波器量时钟 没有输出 ,现在不能确定是写入的不正确还是回读的 不正确,如果是写入或回读的不正确 前7个写读都是正确的 很奇怪!
你好 register 7 的最高两位是只读寄存器,不可改写,参考手册34页
Read Only
If EPLOCK 26 EPLOCK Status reads “0” EEPROM is unlocked. If EPLOCK reads “1”, then the EEPROM is locked (see EEPROM
Table 4 for how to lock the EEPROM – this can only be executed once after which the EEPROM is
locked permanently).
27 RESERVED Status Read Only; Always reads “1”
嗯 是的 它是只读的 但是 27bit 也应该读出的是“1”啊,现在是 26 27 读出来的都是 0, 第26 bit 读出的“0”,按照说明 read “0”,表示 eeprom 是unlocked 也就是正常状态 ?
是我的读写代码有问题吗? 我把我的读写流程说一下 LE enable -> 写入32bit 寄存器值(0~4 地址 5-31 数据) ->LE disable -> LE enable-> 写入读某个寄存器的地址 例如 0x0000002E ->LE disable -> LE enable ->写入任意32bit数据 回读 真正的当前寄存器的值 ->LEdisable 在每次写入数据的过程中 都有时钟的高低变化 同时也都有延时操作
是的,应该是1,请换一块板交叉确认。
另外该器件是否正常工作,锁定?