Hi,
I am trying to do a proof of concept capacitance measurement using FDC1004. I connected CIN1 to a NP0 10pF ceramic capacitor and other pin of capacitor to ground. Capacitor is very close to the CIN1 pin on same PCB so i hope there is no question of using Shield pin. Now as power on reset value of CONF_MEAS1 is by default 0x1C00 which i believe is to single endedly measure CIN1 so i am not touching this register. I trigger measurement 1 by writing 0x0480 (which i believe is for 100S/s measurement of MEAS1 config ) to 0x0C register and after the DONE1 bit is set by chip ,I read 16 bit values from 0x00 and 0x01 registers each.
Here are some of the values I am getting :
0x591B 0x3800
0x591B 0xFC00
0x591C 0x9D00
0x591A 0x5800
0x591D 0x4600
As i read from datasheet the lowest 8 bits are supposed to be 0 so good thus far. what i dont understand is how do i get the actual capacitance value in pF from this data.The datasheet says that I have to take 2's complement of the Most significant 24 bits of the above values and that will give me pF values.I have following doubts:
1. if i do 2's complement of 0x591B38 assuming a 24 bit system i get 0xA6E4C8 which is 10937544 is decimal. Now is the value of capacitance 10937544pF? which definitely isnt true because my capacitor is 10pF
2. Why the values are changing so much? As i am using a NP0 ceramic capacitor from a reputed manufacturer are we supposed to get so much drift in measured values?