I am making some temperature measurements with temperature sensor and an ATMEGA48P using the internal 1.1V bandgap voltage as a reference. I was just using an external 5V supply as the reference until I realized I could get more precision by using 1.1V (the temp sensor's range is only about 0.1V-1.75V, but I'm just measuring ambient temperature so more like 0.6V-0.9V).
Here's the procedure I'm using to make the ADC measurements:
- ADC is initially disabled
- When the temperature button is pressed, the display is turned off, the ADC is enabled, and I enter ADC Noise Reduction sleep mode (which automatically starts a conversion).
- When the conversion is finished, my interrupt grabs the result and puts it into a variable which is then read by the main program
I have a 1uF cap between the AREF pin and ground, and another cap between the ADC voltage supply and also a 10uF cap on the main voltage supply to the AVR.
Anyone know what's going on?