Jens, Ok, I didn't realize that you had wired the AINCOM up. However, I'm a bit stumped. The circuit looks like it should work and I don't see anything wrong with the register settings for making the measurement. The settings of the IDAC should have no influence on the measurements of AIN8 to AINCOM if the internal reference is being used. I think it would be best to try to make a quick voltage measurement through other inputs just to see if this could be a board problem or code problem. First, the REFOUT voltage should be enabled and used by the ADC. Keep the reference on. With 10uF across REFOUT/REFCOM, it may take extra time to settle the reference if it is only used when sampling. You should measure with a multimeter that the reference is 2.5V. Now, I want to try to make a voltage measurement using the IDAC as a test. We'll use the IDAC to drive 50uA to AIN6. This current will go to R81 and R77. This should be 5.32k, and generate 0.27V across AIN6 to AIN7. You should also be able to measure that with a multimeter. Here are the registers that I think you'll need to change. Register 0x02 = 0x67 (INPMUX_ADDR_MASK) Register 0x03 = 0x00 (PGA_ADDR_MASK) Register 0x05 = 0x1a (REF_ADDR_MASK) Register 0x06 = 0x02 (IDACMAG_ADDR_MASK) Register 0x07 = 0x6F (IDACMUX_ADDR_MASK) This should give you a reading of something near D9E83h. If you don't see that, then either the voltage or reference is off. I'd measure the input again with a multimeter to make sure that it is correct. If you do see this reading, then the ADC has correctly made a voltage measurement using the internal reference. After that, you should just be able to set the input multiplexer to AIN8 to AINCOM with the following: Register 0x02 = 0x8c (INPMUX_ADDR_MASK) If this is the only change you make and you still get an unusual value, I would use the multimeter to verify the voltages across the thermistor and reference and the rest of the circuit. Joseph Wu
↧