Hello Tom,
Your assumption is basically correct, but you need to take into consideration that the last two bits of the c12_LSB are zero as shown on page 5 of the data sheet:
c12 MSB byte = c12[13:6] = [b13 , b12 , b11 , b10 , b9 , b8 , b7 , b6]
c12 LSB byte = c12[5:0] & “00” = [b5 , b4 , b3 , b2 , b1 , b0 , 0 , 0]
and the c12 coefficient is formatted as follows:
c12 = b13 0 . 000 000 000 b12 b11 b10 b9 b8 b7 b6 b5 b4 b3 b2 b1 b0
So you are right that each fractional bit has the value of 1 / 2^(9+13), but the 16-bit c12 value needs to be first right shifted by 2 (or divided by 4) to obtain 13 fractional bits.
Considering our example, the 16-bit c12 = 0x38CC.
Then b12 .. b0 = 0b011 1000 1100 11 = 3635
and c12 = 3635 / 2^22 = 0.00086665
I hope it helps.
Regards,
Tomas