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.

TDC7200: TDC7200 problem

Part Number: TDC7200

Hi, Team

Good day!

My customer need some help:

I am having problems with accessing TDC7200 via SPI.

CH1 - Yellow - MOSI
CH2 - Light Blue - MISO
CH3 - Purple - SCLK
CH4 - Dark Blue - SS

Not captured on the scope are the following signals
Enable = VCC ( after it has been pulsed once to reset)
Clock = 8 Mhz in from Function Generator
Int = VCC
Trigg = Not Connected
VREG = ~ 1.8v when Enable = VCC

The above is a capture of the SPI bus on the board. The signal sent by MOSI corresponds to a read of the CONFIG 2 register of the TDC7200 and should have elicited a response of 0x40 from the MISO of the IC. The SPI signal was sent using Arduino but an identical signal sent using an STM32 board was also unsuccessful.

I have also tried setting the CPOL to HIGH by using SPI Mode 3. No response was received on MISO. This should not matter as the SPI clock can idle high or low according to the datasheet para

I have run the same code on two different ic purchased from two different suppliers which should eliminate the possibility of bad soldering / bad batch of chips.

The following was the code used:

// Enable = Pin 5
// SS = Pin 4

// -- Enable TDC7200 - Reset to default configuration
digitalWrite(5, LOW);
pinMode(5, OUTPUT);
// Disable for a short time

// Enable and wait the maximum time after enabling LDO to assure VREG is stable.
digitalWrite(5, HIGH);

// -- Configure SPI
digitalWrite(4, HIGH);
pinMode(4, OUTPUT);

SPI.beginTransaction(SPISettings(int32_t(20000000), MSBFIRST, SPI_MODE0));
digitalWrite(4, LOW);

uint8_t val = SPI.transfer(0u);

digitalWrite(4, HIGH);

The code is based on an arduino library on Github

Schematics of the board :

Would be very grateful for any suggestions to resolve the issue. Thanks.

Best regards
Aosker Lau