ads1247在温度升至50℃左右后读取的值为何是负数?
配置:
WriteReg_S(Reg_MUX0|0x40, 0x00, 0x08); // Negative input AIN0 Positive input AIN1
WriteReg_S(Reg_VBias|0x40, 0x00, 0x00); // Bias voltage not enabled (default)
WriteReg_S(Reg_MUX1|0x40, 0x00, 0x30); // Onboard reference selected Internal reference is always on
WriteReg_S(Reg_SYS0|0x40, 0x00, 0x59); // 2000SPS the gain of the PGA 32
WriteReg_S(Reg_IDAC0|0x40, 0x00, 0x06); // current source that can be used for sensor excitation 1000μA
当温度升到50摄氏度左右时,数据立马变为负值,当温度恢复为常温时测值又恢复正常。A0和A1输入端电压是正确的。仿真程序,发现从ADS1247返回的值确实是负值。
你说的是RTD为50度,还是芯片为50度?
是ADS1247芯片,后来专门做了一个给该芯片所在位置局部升温的测试,发现确实是如此。
顺便再请教下,如果A1对A0的电压为15mV,增益为32,理论上从ADS1247读取的值应该是多少?
有你AIN0和AIN1输入的电路吗?
另外在50度时,REF_OUT有没有变化?
这个和你所使用的参考有关系吧。
Vref_out是稳定的
关键是A1和A0的输入是稳定,不随温度变化
原因已经找到,高温下SPI速率不能太高
这也能影响?