## Introduction: How to Make a Thermometer Using Arduino and LM35

Today I am going to show you How to make a Thermometer with Arduino and LM35 temperature sensor,LCD Display,On a breadboard connected together with wires.It will show temperature in Celsius and Fahrenheit.

We Observed

## Step 1: Requirements:-

This is the list of parts needed to make the thermometer.
1.1 x Arduino UNO board
2.1 x LM35 temperature sensor
3.1 x LCD Display (16A1,16A2 or any other)
5.1 x 10k Potentiometer/variable resistors(You can also use 5k or 50k)
6.Some male to male jumper wires.
7.Power Bank or Battery

*.Arduino IDE installed in pc with some basicinformation about how to use it.

## Step 3: Pin Diagram of LM35

Pin diagram of LM35

## Step 4: Circuit Diagram

There Are no difference between 16 x 1 and 16 x 2 display's pins so Just follow the circuit and use power bank to give power to completed project.The circuit is very easy and the assembly/connection is also very easy just use the above circuit diagram and make all the connection carefully .Now connect the arduino board to the pc and upload the below code.

Note:-
I am having an old 16 x 1 lcd display(JHD16A1) so i used it in this project,But In this project any display will work.and16x2 is better so i am giving link for 16A2 display link.You just have to change some code i explained everything in coding part.

## Step 5: Coding

//By SOURABH KUMAR @ weobserved.com
#include
LiquidCrystal lcd(12,11,5,4,3,2);//pins diclaration for lcd on arduino
const int inPin = A0; //Middle (Output) pin of LM35
void setup()
{
lcd.begin(8,2); //Change here accoring to your lcd
}
void loop()
{
lcd.setCursor(0,0); //No change
float millivolts = (value / 1024.0) *5000;
float celsius = millivolts / 10;
lcd.clear();
lcd.setCursor(0,0); //No change
lcd.print(celsius);
lcd.print("C");
lcd.setCursor(0,1);
lcd.print((celsius * 9)/5 + 32);
lcd.print("F");
delay(1000);
}

Above is the basic code for The thermometer

Note-
As i said i am using an old 16x1 lcd which only works correctly when it will be assumed and deaclered as 8x2 lcd.But when you will use16x2 display then this problem will not accure.for 16x2 display just find

lcd.begin(8,2); //Change here accoring to your lcd

in the code and replace (8,2) according to your display as(column,row) .let you have a 16x2 display then replace (8,2)with (16,2).and if you have 20x4 display just replace the (8,2) with (20,4).