A few lines of microcontroller code drive the LTC2970, read ADC measurements and calculate temperature to within better than ±2.5°C.
Many applications with a single power regulator can benefit from the monitoring and control features of a power supply manager, but most power supply manager ICs have more than one channel. In an application that only has one power supply, there will be an unused set of DAC and ADC pins. Instead of letting the unused channel go to waste, we can use these pins and a bit of microcontroller code to sense remote temperature. The LTC2970 is a 2-channel power supply monitor and controller. Each channel has two 14bit ADCs to measure voltage and current and one 8bit DAC to servo the power supply voltage. It can drive an attached bipolar junction transistor to make a delta-VBE measurement and the microcontroller can use the measured voltages to calculate temperature.
The LTC2970 is a programmable device, containing registers to control the IDAC current and to report the ADC readings, but the external temperature calculation must be done in software. A ready platform for such software is the Linduino, an Arduino clone with isolated power, produced by Linear Technology. Linduino communicates with the LTC2970 over the I²C/SMBus, and with just a few lines of C code, performs the necessary temperature calculations. Any similar system that can talk to the LTC2970 over the I²C/SMBus bus can run the C code and calculate temperature by this method.
The LTC2970 uses one ADC with a multiplexer front end to make measurements at each of seven inputs. The inputs are sampled in a round-robin fashion and the time between subsequent samples of one input depends on how many inputs are selected for sampling in the ADC_MON register. When the round-robin ADC is programmed to sample every input, each input is sampled once every 240ms. The LTC2970 provides a single bit "new" indicator in each ADC register to indicate that the data has not been read yet. Each time the ADC stores a new conversion result, the "new" bit is set and each time the register is read, the bit is cleared.
When a system requires only one channel of power supply management, the second channel offers the opportunity to sense external temperature in a properly-connected transistor. A few lines of microcontroller code drive the LTC2970, read ADC measurements and calculate temperature to within better than ±2.5°C.
Read more: Download the full application note