微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 硬件电路设计 > TI模拟硬件电路设计 > 请大家帮我确认一下这个AD电路有没有问题

请大家帮我确认一下这个AD电路有没有问题

时间:10-02 整理:3721RD 点击:

大家好,我正在调试ADS1259的电路,出现了一些问题。

首先,我的硬件电路如下:

ADC的SPI接口是经过隔离芯片ISO7241和STM32连接的,CS、SCLK、DIN接ISO7241输出,DOUT接ISO7241输入。 DGND接AGND。

我的读取寄存器值的时候发现读到的值都为0(也可以说根本就没读到)。

于是我测量了SPI的4条线,发现ISO7241的DOUT输出端为0V,而ISO7241的DOUT输入端为奇怪的1.2V,其他3条线ISO7241两端均为3.3V。

我有检查了几个引脚, 电源±2.5V  ±REF2.5V  DVDD 3.3V 均正常。REFOUT引脚为0V,不知道正不正常。

我现在没有办法确定这个问题在哪里,也不知道接下来怎么查电路。

请大家帮助我,谢谢。 

读取程序如下:

u8 ADC_RD_REG(u8 Reg)
{
u8 Reg_Data;
SPI_ADC_CS = 0;
SPIx_ReadWriteByte(SPI2, RREG|Reg);
SPIx_ReadWriteByte(SPI2, 0x00);
Reg_Data = SPIx_ReadWriteByte(SPI2, 0xFF);
SPI_ADC_CS = 1;
return Reg_Data;
}

经过调试,我发现如果加ISO7241的话DOUT上的1M的电阻不能加的。

我把电阻去掉之后DOUT电平正常了。SPI通信是没有问题了。

可是读到的寄存器的值还是0x00,然后我尝试读了一下数据DRDY确实有低电平,进入外部中断后读到的数据全是0x00FFFFFF;

这个AD到底转换了数据没有?

还有TI的工程师怎么不理我

还有 晶振两端用示波器看了 有正弦波

DOUT上1MOhm的电阻是干啥的?去了吧

几个问题要确认:

1) ISO7241供电3.3V,ADS的供电多少?

2)ISO7241内部有上拉电阻,外置若有10M下拉电阻,则会被分压,导致ISO7241输入电平变低。故这个10M电阻会影响ISO7241工作

 

能否提供波形看看问题出在哪里?

你好,

1)ISO7241 VDD:3.3V;

      ADC1259      DVDD3.3V;   AVDD:2.5V;     AVSS:-2.5V   

2)1M电阻以去掉,DOUT电平以恢复正常。

我只有个示波器,而且只有一条线,没有办法看到整个SPI的波形。

目前在调试中已确定,可以写寄存器(我在CONFIG2中的Bit5写1之后,SYNCOUT引脚出现脉冲,写入前为低电平)。

但是读寄存器的数据依旧为0;

不知道代码有没有问题,读一个寄存器

u8 ADC_RD_REG(u8 Reg)
{
u8 Reg_Data;
SPI_ADC_CS = 0;
__nop();
__nop();
__nop();
__nop();
SPIx_ReadWriteByte(SPI2, RREG|Reg);
SPIx_ReadWriteByte(SPI2, 0x00);
Reg_Data = SPIx_ReadWriteByte(SPI2, 0xFF);
__nop();
SPI_ADC_CS = 1;
return Reg_Data;
}

请问一下,现在读取转换结果有问题吗?还是只是读寄存器为0?

现在可以读到了 ,寄存器值也可以读到了 ,论坛上有一个帖子写了 ,读寄存器之前要写SDATAC命令。但是数据手册上根本没提到。

呵呵,page32的Command Definitions开头和page40的Software Guide的步骤1中都说过的。

这。。。是我没好好看资料

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top