Other Parts Discussed in Thread:ADC12DJ5200RF
ADC12DJ5200RF模数转换器以下几个寄存器采用SPI向其地址写入相应长度数据(5bit)后,再回读寄存器的值,一直为0
GAIN_A0_FGDUAL(address:0x350);
GAIN_A1_FGDUAL(address:0x351);
GAIN_B0_FGDUAL(address:0x352);
GAIN_B1_FGDUAL(address:0x353);
GAIN_A0_FGDES(address:0x354);
GAIN_A1_FGDES(address:0x355);
GAIN_B0_FGDES(address:0x356);
GAIN_B1_FGDES(address:0x357);
以及未定义的地址0x358-0x35f;皆无法对其写入数据。
抓取SPI总线发送的信号波形,检查SPI发送的数据正确(可见附图)向寄存器GAIN_A0_FGDES(address:0x354)写入数据0x1F。
对其他地址寄存器,例如OADJ_A_FG90_VINA(Address = 0x348)写入相应长度的数据后,再回读其地址的写入数据值,为正确写入的数值。
Amy Luo:
您好,
感谢您对TI产品的关注!ADC12DJ5200RF中文数据手册中7.6 SPI_Register_Map Registers开头部分有说明,表58中未列出的所有寄存器偏移地址应视为保留位置,并且不应修改寄存器内容。www.ti.com.cn/…/adc12dj5200rf
,
user5197056:
谢谢您的答复,
ADC12DJ5200RF数据手册Table 58描述的是JMODE 25,您想提及的是Table 67 SPI_REGISTER_MAP Registers吗?
对于寄存器地址0x350-0x357为手册内描述ADC微量增益调节相关寄存器,参考Table 166. GAIN_A0_FGDUAL Register Field Descriptions,此8个为可读可写寄存器。
我想资讯的是这部分寄存器无法写入数据的原因。
,
Amy Luo:
我想您应该是使用的旧版本的硅不支持写值到这些寄存器,您能读取寄存器0x04的值看看是多少吗
,
user5197056:
您好,我从寄存器CHIP_ID(address=0x04)回读的寄存器值为0x21。
,
user5197056:
您好,我从寄存器CHIP_ID(address=0x04)回读的寄存器值为0x21。
请问这个回读的ID值,是否符合您的“旧版本的硅不支持写值到这些寄存器”的猜测呢?还有没有什么其他办法解决呢?
,
Amy Luo:
给您造成的不便表示抱歉
关于0x350-0x357寄存器的写入,待这边确认后反馈给您
,
Amy Luo:
您好,您提到的 0x351-0x357的寄存器只允许写入低5bits [4:0],其他高位只允许写0。因此这些寄存器可以写入的最大值是 0x1F,尝试写入 0x0 到 0x1F之间的任何值,您应该能够写入进去
,
user5197056:
您好,
您可以看见,本此贴的主贴中描述:向寄存器GAIN_A0_FGDES(address:0x354)写入数据0x1F的spi总线波形。
我向 0x351-0x357的寄存器写入的数据值皆为0x00-0x1F,但是回读寄存器的值一直为0。
所以我想应该不是你描述的这个问题的原因。
,
Amy Luo:
您向这些寄存器写0x01,然后看读出来是什么值?
,
user5197056:
您好,我刚刚按照您说的,向这些寄存器再写了一遍数值0x01,回读寄存器的值仍然是0x00。
请问还有什么可能性会导致这个问题吗?
,
Amy Luo:
您测试了几个芯片都是这种现象?您有多测试几个芯片看是同样的现象吗
,
user5197056:
我目前使用的时两块ADC进行时间交替采样,两块芯片都是相同的现象。
,
Amy Luo:
请尝试以下操作:
1. 打开设备并将时钟应用于 ADC
2. 将值0xB0 写入寄存器地址 0x00
3. 等待 1 秒钟
4. 读取寄存器地址 0x270 ,然后看该值是什么
TI中文支持网






