Hi,
On a custom design, after enabling the external clock (12MHz), providing a singular low to high pulse on ENABLE, writing both 0x41 and 0xC1 to TDCx_CONFIG1 and 0x40 to TDCx_CONFIG2 it results in values in TDCx_TIME1 and TDCx_INT_STATUS to become 0x19 from originally being 0x00. I've also set TDCx_INT_MASK to 0x07 and 0x00 to enable and disable interrupts. In doing all this however, before and after initialization and sending our measured signal the TDCx_CALIBRATION1 and TDCx_CALIBRATION2 values are always 0x000000. I never see any data saved in these locations. The only things I could find in the datasheet that would reinitialized these registers to 0x000000 or not do a calibration sequence is the following:
1. The ENABLE pin going low. "The ENABLE pin is used as a reset to all digital circuits in the TDC7201."
2. Starting a new measurement. "Start New Measurement. Writing a 1 will clear all bits in the Interrupt Status Register and Start the measurement (by generating a TRIGG signal) and will reset the content of all Measurement Results registers (TDCx_TIME1 to TDCx_TIME6, TDCx_CLOCK_COUNT1 to TDCx_CLOCK_COUNT5, TDCx_CALIBRATION1, TDCx_CALIBRATION2) to 0."
3. If an interrupt happens: "Only if a measurement is interrupted (for example, due to counter overflow or missing STOP signal), calibration is not performed."
I've looked into all of these situations, ENABLE is always high (and I see values at other registers), I cannot start a measurement without setting bit 0 of TDCx_CONFIG1 to 1, and the fact that TDCx_INT_STATUS registers come back after the measurement as showing 0x19 (0b00011001 i.e. Measurement has completed, Measurement has started, No overflow detected (CLOCK_CNTR_OVF_INT), No overflow detected (COARSE_CNTR_OVF_INT) , and Interrupt detected - New Measurement has been completed (NEW_MEAS_INT).
Is there any other reason that I haven't been able to find which would disable or reset the TDCx_CALIBRATION (1 and 2) registers? Such as locked memory, or other other reasons?
Thanks for the help,
Logan