Here I discus on very good project on digital thermometer. I made this project by Lm35 interfacing with pic 16f877 through adc0808. Pic16f877 microcontroller has inbuilt ADC (Analog to Digital Converter but I use external ADC IC (adc0808) because of simplicity of project if I use inbuilt adc then I have to take consideration on lots of mathematical calculation to get desire output.
To build my project I use LM35 (Temperature sensor) to sense temperature , IC ADC0808 for converting analog value to digital and microcontroller PIC16f877 for process and display the temperature in LCD. In bellow see the block diagram of my project.
LM35 : LM35 IC is a temperature Sensor. It sense the temperature and covert it equivalent voltage label. I supply 5 volt VCC on LM35 and it convert o.o1v per 1° of voltage change. Let take an example if I have to measure 35° C temperature then it will give output 0.35v.
ADC (adc0808) : The output of ADC then directly feed to channel 0 of IC ADC0808. And this IC convert the input voltage in 8-bit binary number. For voltage 0.01v the output will be generated 00000001 in 8-bit position. So if your LM35 sense 2°C temperature then you will get 00000010 in output of adc. Keep in mind I set 2.56v +Vref in adc0808 to get output for change of every 1°C.
Pic16f877: I use this Pic16f877 for just taking the output of adc to and process it and send the display to LCD. For that I have to define PORTB as a input port to take the data form ADC. And I initialized LCD at port PORTD to display our result.
For more detail: Lm35 interfacing with pic 16f877 through adc0808