WCMCU-1232 is a module that drive a ADS1232 to be connected as a embedded device . I use following program to read its data. ADS1232 use 24 bits of data in binary two’s complement format. I use it to measure ±2.5 volts but it not work linearly in this range. Please help me get linear results from this module.
signed long ADS1232_reading() {
uint32_t signalD = 0;
while (digitalRead(DOUT) == HIGH);
delayMicroseconds(1) ;
for (byte c = 24; c != 0; c--) {
digitalWrite(SCLK, HIGH);
delayMicroseconds(Tim) ;
signalD |= digitalRead(DOUT);
digitalWrite(SCLK, LOW);
signalD <<= 1 ;
delayMicroseconds(Tim + 8) ; }
// This part Pull Up DOUT to avoid Erorr
digitalWrite(SCLK, HIGH);
delayMicroseconds(Tim + 3) ;
digitalWrite(SCLK, LOW);
delayMicroseconds(Tim + 8) ;
signalD!=+1;
return signalD; }