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.
Tool/software:
Hello,
We are looking to read the temperature sensor on the ADS8634 but we are facing issues.
We are in Manual Mode so we start to send the configuration frame to enable the AL_PD and temperature sensor (0b0000110000000110), then we acquire the four ADC input everthing works well. Finally, we send the command 0b0000010000000001 to read the temperature sensor on the next frame. But we readback the frame of the channel 0 of the ADC instead of the temperature sensor as indicated by the datasheet (see screenshot below). We tried to check the next frames but it never was the temperature sensor frame.
Thank you in advance,
Guilhem Dasque
Hi Guilhem,
Welcome to our e2e forum! Can you please provide a logic analyzer or oscilloscope screen capture showing the command sequence you send to the ADS8634?
Hello,
I have no oscilloscope capture but a script which gives the data frame send and receive, here is the result:
As you can see, we send three times the command to read the temperature sensor, but the three following frames seems to be from the analogic inputs and not the temperature sensor, as they not start with 1111.
Is it enough for you ?
Thank you,
Guilhem Dasque
Not really enough - initially you say you wrote to the Aux-Config register to enable the temp sensor, that should be address 06h and it looks like you wrote to address 0Ch.
Hello,
Indeed we send the Aux-Config register to enable the temp sensor as I said in my first message, this part works well. But the issue we have is when we want to have datas from the sensor.
To have a data from the temperature, according to the datasheet, we should send 0x04 on the adress and set all the other bit to 0 except the last one which need to be set to 1.
On my second message, I shared a screen which show that the we write three time this command but we never have an answer from the temperature sensor.
Do we understand well the datasheet or we do not send the right command ?
Thank you,
Guilhem Dasque
Hello,
For me it is normal to have 0x0801 because the adress are on 7 bits, 15 to 9 bits, the 8th bit is used for W/R so we fixed it at 0.
If I decompose the frame, we should send 0b0000100 for 0x4 on the [15:9] bits, 0b0 for the 8th bit and 0b00000001 for the temperature sensor selection, on :] bits[. This gives the frame we send, 0b0000100000000001 but it doesn't work. Do you agree with this ?
Furthermore, on the voltage input acquisition we used this method and it works well.
Thank you,
Guilhem Dasque
Right - my bad, sorry about that! That's why I prefer to look at a screen shot from a scope or logic analyzer. I'll take a look at this on one of the evaluation modules and see what I can find out. From what you've told me so far, I can't see where you are doing anything wrong.
Hi Guilhem,
Here is a screen shot from what I see using the ADS8368EVM and its associated GUI. The GUI only runs in AUTO mode, so the address being written to is 5 instead of 4, but the main thing that I see is 0x81 being sent to the device (instead of 0x01 that you send) with TEMP data being shipped out in the third frame (0xFED0). Try that and let me know if it works for you.
Hello Tom,
Sorry for the delay, we tried this sequence of command but did not receive the right data from the ADC.
Here is a screenshot of what we send and receive :
Do you have other informations on this issue since the last answer you gave me ?
Tahnk you,
Have a nice Day,
Guilhem Dasque
Hi Guilhem,
I don't have anything new at the moment - have you been able to find a logic analyzer or o'scope to help verify the SPI phase and polarity settings are correct?
Hello,
As we manage to read properly all the voltage channels, I don't think it is coming from the phase and polarity of the SPI. To be sure, I will take a capture at the oscilloscope as soon as possible.
Guilhem Dasque