我的ADS1259转换结果一直比输入真实值小5.525倍左右(估计的),测试了很多数据都是这样的,非常稳定。有没有大佬可以告诉我可能是什么原因导致的呀?
这是我的初始化代码
void ADS1259_INIT(void)
{
HAL_Delay(20);
ADS1259_RESET_H;
ADS1259_START_H;
ADS1259_CS_L;
HAL_Delay(20);
ADS1259_reset();
HAL_Delay(20);
//ADS1259_WRITE…
我的ADS1259转换结果一直比输入真实值小5.525倍左右(估计的),测试了很多数据都是这样的,非常稳定。有没有大佬可以告诉我可能是什么原因导致的呀?
这是我的初始化代码
void ADS1259_INIT(void)
{
HAL_Delay(20);
ADS1259_RESET_H;
ADS1259_START_H;
ADS1259_CS_L;
HAL_Delay(20);
ADS1259_reset();
HAL_Delay(20);
//ADS1259_WRITE…
使用的是内部参考电压(2.5V),按照手册所描述:当 0 <AINP - AINN ≤ Vref 时,输出代码 < 0x7fffff,但是实际测试,AINP - AINN = 2V时,输出代码为:0x335D4D; AINP - AINN = -2V时,输出代码为:0x4c9c56;
-2.5 < AINP - AINN < 2.5 输出代码始终在0~7FFFFF区间变化;
请问大神们,这个问题如何解决,谢谢!
求教:
我的应用场景是这样的:
有一个电流输出回路,我在电流输出回路中串入一个20欧姆的采样电阻,将采样电阻两端的电压经过AD8223之后,转换成单端输入到ADS1259的输入端。ADS上电后配置成连续转换模式。参考电压2.5V,内部参考电压模式。1秒钟输出60个数,没有start引脚,通过命令启动。
问题:如果输入端是一个相对稳定的电压,即上下变化上百mV…
最近调试ADS1259,发现在SPI的速度降低到1Mhz的时候,就不能读到正确的数值了。看了芯片手册上在发送命令两个命令代码之间也没有说要加延时啊。我发现加入延时再把SPI的SCLK速度调到2M就能读数据。不加延时就无法读到数值,这是怎么回事啊?
最近正在做以ADS1259为ADC的项目,涉及到spi时钟tsclk的配置时,datasheet中的一些描述让我有些迷惑,望得到TI工程师的解答。
先声明下DS里面的两个参数tsclk--spi时钟,tclk--ADS1259时钟(DS给的参考是7.3728MHz,此时钟由外部晶振或内部时钟提供均可)。
其中tsclk需要满足,tsclk>1.8tclk。
同样,在DS第28页在对DRDY信号描述中…
使用24位sigma-delta ADC ADS1259进行测试,输入短路时候使用4096个点得到的均方根误差为1.3uV,与数据手册1.4uV接近,基本吻合,按照手册公式得到的有效位数ENOB=ln(5*10^6/1.3)/ln(2)=21.8位。
但是采用另外一种描述方法,如ADC领域经常采用的 SNR=6.02*N+1.76dB,进行评估时候,输入约满量程的3.3Hz正弦波,使用400Hz采样,使用最小四阶的blackmanharris窗函数…
Hi,
我有几个关于ADC电路layout的疑问。
很多工程师建议delta-sigma类型的AD芯片的数字地引脚和模拟地引脚都接到模拟地,通信接口用数字隔离器隔离。
这意思就是说AD芯片要放在模拟地平面上吗?
接口上的信号线都要隔离吗?还是只要隔离主机到AD芯片的信号线?
外部晶振的地应该接什么地?
此外,在layout中还需要注意什么问题?
目前AD芯片打算用ADS1259…
最近在调试ADS1259这个片子,发现初始化程序必须执行两次才能够初始化成功,然后读出来的CONFIG0寄存器的最高位是“0”(官方文档上是“1”),不知道是什么原因,求TI工程师解答呀!
我想请教一下ADS1259的OFC和FSC寄存器是怎么设置的呢,也就是怎样确定校准值呢,有什么对照标准吗?如果是芯片自校准的话,是不是取默认值就可以了,另外,全量程校准的时候是不是需要准确的全量程值呢?