Other Parts Discussed in Thread: ADS1100
Hello,
Our customer use the ADS1000.
The ADS1000 outputs data with '0011' sign extension sometimes.
Could you tell me why it occur?
Best Regards,
Naoki Aoyama
This thread has been locked.
If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.
Naoki-san,
I've never seen this behavior before in the ADS1000. How often does this occur for the read? Has the customer tried other devices? Is the data correct? In the scope photo, it looks like SDA is active with a pulse before SCL is given the start. Does this occur if SDA is not toggled before the SCL?
I'd like to see a close-up of the same problem. If they can get a clearer shot of this communication? Also, are they able to read back the register with extra SCL clocks?
There is one thing that looks unusual in their photo. It looks like there are two different pull-down levels for this communication, where one is not pulled all the way down. I've circled those points in the plot:
Are there any other I2C devices on the bus that may have some sort of bus contention?
Joseph Wu
Hello Joseph-san,
Thank you for your reply.
I got the configuration of the customer and the answer of your question.
/conversion mode : continuous mode
/ gain=1
There are some another devices on the same I2C Bus.
How often does this occur for the read? : Three out of Twenty times occur
Is the data correct? : When the incorrect sign extension occur, the data is incorrect
Does this occur if SDA is not toggled before the SCL? : The customer will estimate in this week. Also the customer will
estimate other devices.
I attach the enlarge scope shot as follows.
ADS1000_I2C_transaction_detail.pdf
The customer estimate various access times. When the access time less than 130ms, it is no problem.
If I get new information, let you know.
Regards,
Naoki Aoyama
Naoki-san,
Just to verify, these errors occur only on the first read of the device and is ok on all the reads after? I wasn't sure if the error occured, the error continues to occur.
I also want to know what communications are sent to the ADS1000 before the first reading. Is there a write command sent to the configuration register before the first read? I'd like to know what commands are sent to the I2C bus and what is read back.
I'd also like a clearer version of these scope plots:
It is hard to read the scale and values. In the scope plots, what is the blue line? Is this power? It looks like this voltage sharply drops before the first read of the device. Is it possible that the device has gone through a brownout? Where the supply voltage drops below the operating voltage of the device?
Regardless, I'll wait for more details from the customer.
Joseph Wu
Hello Joseph-san,
The customer read back the configuration register.
They use the ADS1000 with default setting (80h).
According to the result of customer's research, they access I2C Bus early from power-up, there is no problem.
Is there any limitation of the read access timing?
Does the ADS1000 have a power-up sequence?
Regards,
Naoki Aoyama
Hello Joseph-san,
I got information of the customer.
///Just to verify, these errors occur only on the first read of the device and is ok on all the reads after?
I reconfirmed the occurrence situation of the error. It occur only on the first read.
///I also want to know what communications are sent to the ADS1000 before the first reading. Is there a write command sent to the configuration register before the first read? I'd like to know what commands are sent to the I2C bus and what is read back.
I attach the I2C communication file.
The customer do not write a configuration register. They use the ADS1000 with default configuration.
///It is hard to read the scale and values. In the scope plots, what is the blue line? Is this power? It looks like this voltage sharply drops before the first read of the device. Is it possible that the device has gone through a brownout? Where the supply voltage drops below the operating voltage of the device?
The blue line is the input voltage of the ADS1000. It is not VCC.
There is an analog SW between a measurement object and ADS1000. Before the first read, the analog SW is on.
So, the input voltage of the ADS1000 drops sharply.
Regards,
Naoki Aoyama
Hello Joseph-san,
It is clear using General Call reset.
The customer checked about bus contention. it is remain problem. (Attach file)
ADS1000_connect_only_Master.pdf
Your thought " I had thought that device needs to be put into a conversion mode because it powers up in standby mode. " is correct.
But it is mentioned that "When the ADS1000 powers up, it automatically performs a reset." on the datasheet.
The ramp-up time of the VDD seem to be enough to POR.(above attach file)
Does it reset the data register?
Because the several devices connect same I2C Bus, the customer want to know how to reset ADS1000 except for using General Call.
Is it possible to reset the device with write configuration at first?
Best Regards,
Naoki Aoyama