I'd like to inquire about the ADS5401's maximum output sample value expected. With the data format set to two's complement, I'd expect the possible integers represented to be from -2^(N-1) to 2^(N-1) - 1, where N is the ADC's number of bits. As the ADS5401 has a 12-bit resolution, I'd then predict the maximum output sample value to be 2047. However, with an input overload, I observe many ADS5401 units consistently reporting a maximum value of 2046, instead of 2047 as expected and reported by the majority of the units. Is this off-by-one behavior to be expected?
In case it's helpful, below are the ADS5401 register values used.
Register 0x00 = 0x8000
Register 0x01 = 0x8002
Register 0x02 = 0x0F80
Register 0x03 = 0x4B18
Register 0x0E = 0xAAA8
Register 0x0F = 0xA000
Register 0x2B = 0x003D
Register 0x2C = 0x0000
Register 0x37 = 0x0000
Register 0x38 = 0xFFFF
Register 0x3A = 0xD81B
Register 0x66 = 0xFFFF
Thank you in advance for any help in understanding the ADS5401's maximum sample value behavior.