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 18.104.22.168.
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
// Disable for a short time
// Enable and wait the maximum time after enabling LDO to assure VREG is stable.
// -- Configure SPI
SPI.beginTransaction(SPISettings(int32_t(20000000), MSBFIRST, SPI_MODE0));
uint8_t val = SPI.transfer(0u);
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.