Temperature sensors are widely used in electronic equipments to display the temperature. You can see the digital clock displaying the room temperature value. It is due to the temperature sensor embedded in it. Generally, temperature value is analog. It is converted to digital value and then it is displayed. This article describes the same converting analog value to a digital value.
- Digital Temperature Sensor Circuit Diagram:
- Digital Temperature Sensor Project Output Video:
Digital Temperature Sensor Circuit Principle:
The main principle of this circuit is to display the digital temperature value. Here, ATmega8 microcontroller is used. The ATmega8 has inbuilt analog to digital converter with six multiplexed channels. This reduces interfacing of external analog to digital converter IC. The analog temperature value is directly applied to input ADC channels of microcontroller. Successive approximation method is used for Analog to digital conversion internally.
Related Post: Celsius Scale Thermometer using AT89C51 Microcontroller
Digital Temperature Sensor Circuit Diagram:
- Resistors – R1 to R7 having the value of 330 Ohms each.
- LM35 Temperature sensor
- ATmega8 Microcontroller
- 7 Segment Display
Digital Temperature Sensor Circuit Design:
The digital temperature circuit consists of ATmega8 microcontroller, LM35 temperature sensor, 7 segment display. The temperature sensor Lm35 is connected to one of the ADC channels of microcontroller.
ATmega8 has six ADC channels at Port C. PC0-PC5 pins of Atmega8 act as ADC channels. This shows that one can interface six analog values. But only one conversion is done at a time depending on the priority of the input channels. The resolution of ADC is 10 bit. Remember that for conversion Vref and Avcc are externally connected as shown in circuit.
Generally, all the port pins of ATmega8 microcontroller act as normal input /output pins until their special functions are declared. ADC registers inside the controller have to be declared in order make Port C to act as ADC channel.
Lm35 temperature sensor has three terminals. Placing the flat surface towards you first pin is Vcc, Second pin is Output and the third pin is Ground. Output pin of temperature sensor is connected to the first ADC channel i.e. PC0 pin of microcontroller.
Seven segment display has eight pins and one common pin. Leaving Dp, connect all the seven pins to port B. Connect A to PB0, B to PB1,_____, G to PB6. Seven segment display used here is common cathode display. Current limiting resistors were used between controller and the display.
Digital Temperature Sensor Circuit Simulation Video:
How to Operate Digital Temperature Sensor Circuit?
Initially power the circuit. The micro controller continuously checks for input at ADC channel. It converts the analog temperature to digital value and is displayed on the seven segments. Increment or decrement the temperature value by clicking on the arrow marks below the display in temperature sensor. Whenever there is a change, the ADC channel converts the input and displays on the seven segment. The temperature value displayed is twice the original value .This is because of variations in the step size. So, before displaying the value divide the value by 2 and subtract 1 from it to display accurate value.
Algorithm for Programming to Microcontroller:
The following steps explain you to set the internal ADC registers of ATmega8 microcontroller and displaying value on seven segment display.
- Initially select one channel from six ADC channels to which temperature sensor is connected and select source for reference voltage using ADMUX register.
If ADC0 is the channel selected and Avcc with external capacitor at Aref pin is selected
- Enable ADC and select prescalar value using ADCSRA register.
Ex: ADCSRA = (1<<ADEN)|(1<<ADPS0)|(1<<ADPS1)|(1<<ADPS2)
If prescalar value of 128 is selected and enabling ADC. ADPS0, ADPS1, ADPS2, ADPS3 are pre scalar bits.
- Check for the flag bit in ADCSRA register which sets after completion of the conversion.
- Read the value from ADC register and assign value to port B which displays on seven segments.
- The two digit value obtained can be displayed on two seven segments.
Applications of Digital Temperature Sensors:
- The digital temperature sensors are widely used in day-to-day life
- They are used in environmental applications.
- Digital temperature sensors can be found in air conditioners where it adjusts the temperature according to the room temperature.
- They can be seen in digital clocks displaying room temperature along with time.
- It can be used in dash boards in the car to display temperature of the engine, to avoid stopping suddenly due to overheat.
- No need of external ADC IC for conversion.