You Are Here: Home » AVR ATmega Projects » SMT160 based Temperature indicator

SMT160 based Temperature indicator




There are lot of temperature sensors both with analog & digital outputs. This project gives you an another temperature indicator which has been done with a digital sensor SMT160.

Although it is a digital sensor it does not gives out the temperature directly. The output is duty cycled modulated. The sensor can measure temperature from -45deg to +150deg.

The output duty cycle is D.C. = 0.320+0.00470 x t, here t is the temperature.

Therefore Temperature T = Dc / 0.0047

based Temperature indicator

Bascom Code

 

‘——————————–main——————————————-
$regfile = “m8def.dat”
$crystal = 1000000
‘——————————-lcd———————————————
Config Lcd = 16 * 2
Config Lcdpin = Pin , Rs = Pinc.5 , E = Pinc.4 , Db4 = Pinc.3 , Db5 = Pinc.2 , Db6 = Pinc.1 , Db7 = Pinc.0
‘——————————–dim——————————————-
Dim avr_reset As Word
Dim Avr_set As Word
Dim Temp As Single
Dim Duty As Single
Dim X As Integer

‘——————————————————————————-
Config Timer1 = Timer , Prescale = 1
Enable Timer1
‘——————————–main——————————————
Config Pinb.2 = Input
‘——————————————————————————
Cursor Off
Cls
Locate 1 , 5
Lcd “Hello”
Locate 2 , 1
Lcd “avrprojects.info”
Wait 2
Cls

Smt160:
Do
Gosub Read_data_sm160
Locate 1 , 1
Lcd “T= ” ; Temp ; “c    “;
Wait 1
Loop

‘——————————————————————————-
Read_data_sm160:
Bitwait Pinb.2 , Set
Bitwait Pinb.2 , Reset
Bitwait Pinb.2 , Set
Bitwait Pinb.2 , Reset
Bitwait Pinb.2 , Set
Bitwait Pinb.2 , Reset
Stop Timer1
Bitwait Pinb.2 , Set
Timer1 = 0
Start Timer1
Bitwait Pinb.2 , Reset
‘Xl = Timer1
avr_set = Timer1
Timer1 = 0
Start Timer1
Bitwait Pinb.2 , Set
‘Xf = Timer1
Avr_reset = Timer1

X = Avr_set + Avr_reset
Duty = Avr_set / X

Duty = Duty – 0.32
Waitms 1
Temp = Duty / 0.0047
Waitms 1
Locate 1 , 1
Temp = Round(temp)
Stop Timer1
Return

For more Detail: SMT160 based Temperature indicator

Leave a Comment

You must be logged in to post a comment.

Read previous post:
Digital Melody player using atmega16 microcontroller

Here' s an melody player with Atmega16. The command "Sound Speaker" is used to generate sound. This is the inbuilt...

Close
Scroll to top