This is a complete DIY project which requires a handful of components such as the ATtiny 85, LM35,MAX7219 and a couple of resistors and capacitors running off a regulated 5 V supply.
Temperature Measurement Range : 0 to 150'C
                                                                  32 to 300’F
Controller: ATtiny 85
Display type - 4 digit multiplexed 7 segment display(Common Cathode type)
Programming Language: Arduino
The setup can display both in Celsius and Fahrenheit. By default the temperature is shown in Celsius but can be toggled to display in Fahrenheit using the push button.

Step 1: Working

The LM35 series are precision integrated-circuit temperature sensors, whose output voltage is linearly proportional to the Celsius temperature. The LM35 does not require any external calibration or trimming to provide typical accuracies of ±1⁄4°C at room temperature and ±3⁄4°C over a full −55 to +150°C temperature range. The LM35’s low output impedance,linear output, and precise inherent calibration make interfacing to MCU easy.As it draws only 60 μA from its supply, it has very low self-heating, less than 0.1°C in still air.

The MAX7219 is a compact, serial input/output common-cathode display drivers that interface microprocessors (µPs) to 7-segment numeric LED displays of up to 8 digits. It  implements a SPI compatible slave interface that can be controlled from the Arduino using only 3 of the digital output pins.
All the necessary calculations and control signals are generated by the ATtiny85. The Data, CLK & Load pin of MAX7219 is connected to pin 2,1,0 of the ATtiny85 respectively. Analog output from LM35 is feed to the ADC channel 3 of the ATtiny85.
<p>hey buddy plz help me plz</p>
<p>hey buddy plz send the library ledcontrol.h</p>
<p>Does supply voltage affect the calculation of the temp in the coding part?</p>
<p>Awesome project. Thanks.</p>
I was wondering if this thermometer can measure temperatures below freezing? In your instructable, you said that the Lm35's full range was from -55 degrees to 150 degrees, so is it just the coding that prevents this thermometer from measuring freezing temperatures?
Interesting project, but it would be nice if you added a step <br>showing how to actually program the ATtiny 85 -- using an <br>AVR programmer or by some alternate method.
Great project, I was able to follow your guide and set up my LED's and temp. sensor. Can you help me to understand how one part of the CODE works ? This is the part I don't understand, I am very new to programming I have been trying to teach myself: <br> <br>void printNumber(float num) <br>{ <br> int ones; <br> int tens; <br> int hundreds; <br> int v=(int)num; <br> float diff=num-v; <br> diff=diff*100; <br> int fones,ftens; <br> fones=(int)diff%10; <br> diff=diff/10; <br> ftens=(int)diff%10; <br> diff=diff/10; <br> ones=v%10; <br> v=v/10; <br> tens=v%10; <br> v=v/10; <br> hundreds=v; <br> //Now print the number digit by digit <br> lc.setDigit(0,4,(byte)hundreds,false); <br> lc.setDigit(0,3,(byte)tens,false); <br> lc.setDigit(0,2,(byte)ones,true); <br> lc.setDigit(0,1,(byte)ftens,false); <br> lc.setDigit(0,0,(byte)fones,false); <br> <br>I think this is how the numbers are printed to the LED, but how is the data passed to the function from the sensor ? <br> <br>thanks <br> <br>Bill
Can I use individual LEDs rather than a multiplexed one?
Please tell me what is this arduino thing and how can I even use the codes above...(not to mention my eletronic knowledge is limited in recognising the signs)
Great project, I have built something similar but mine reads Temperature and Humidity and displays it on a webpage. My project can be found at <a href="http://www.arduinoprojectshq.com" rel="nofollow">www.arduinoprojectshq.com</a> and has a full parts list.<br> <br> James
nice project, what are you using this thermometer for?

About This Instructable




More by rahulkar:LOGO Emulator using AVR LED Blinking with Raspberry Pi Connecting 16x2 LCD to Raspberry Pi 
Add instructable to: