I have an ADIS16227 on a iSensor PCBZ board that I am attempting to communicate with over SPI from a Texas Instruments C2000 MCU.
Sending 0xB8, 0x03 should set the GPIO_CTRL register to 0x03, during which I would expect the DIN line to reflect this data, MSB first, which it does. The DOUT line I would expect to have either 0x0000 or random data, but then return to a high state, repeating similar for every repeated communication that is the same.
However the DOUT line actually shows 0x0000, then stays low. Then on a subsequent communications of the same DIN data, the DOUT line drifts to a constant high state resulting in data of 0x7FFF or 0xFFFF. Sometimes the DOUT returns to a low state after this, sometimes it remains high.
This is the case even with the DOUT line connected only to a pull-up resistor.
Why is this happening?