Hello,
I have 2 ADS1248 on my board .
They are wired in the same way : 4 RTD 3 wires . Like Figure 85 in the ADS1248 datasheet.
SPI is the same but CS, DRDY, and START are independant.
I have several questions:
When I read the diode temperature in ADS1248, I have the first component which returns 0x05ED5F (~ 20 °C) and the second return 0x701269 (much tro hot :-)) ! (All discret value is the same for 2 components)
When I read the revision ID , the first one return 0x00 and 0x09 for the second ! What is the most plausible revision ID ?
On the first ADS1248 , when I put a PT100 , and I did the conversion , I get consistent values . But I'm not sure I use correctly the offset and gain.
Here is my procedure :
At startup :
SpiWrite(0x16); //STOP Automatic Conversion SpiWrite(0x06); //reset __delay_ms(2); Rev = ADSRegRead(0x0A); //Lecture de revision ADSRegWrite(0x04, 0b00000000); // OFC0: 0 => reset offset calibration ADSRegWrite(0x05, 0b00000000); // OFC1: 0 => reset offset calibration ADSRegWrite(0x06, 0b00000000); // OFC2: 0 => reset offset calibration ADSRegWrite(0x0c, 0b00000000); // GPIOCFG: we don't use them ADSRegWrite(0x0d, 0b00000000); // GPIODIR: we don't use them ADSRegWrite(0x0e, 0b00000000); // GPIODAT: we don't use them
For each cycle :
I read offset
I read the gain
I read the value on the channel.
Then I calculated the following :
Rtd = (Value - Offset) ; Rtd *= R_REF * 2.0 ; Rtd /= gain ; Rtd += R_COMP ;
Is this correct?
Thank you in advance .