ࡱ> 241q`0%bjbjqPqP :::% BBBBBBBV *$VQZZZZZZZZ$Gh BZZZZZBBZZ ZRBZBZZBBZN  i!0Q!p"!!B ZZZZZZZ ZZZQZZZZVVVd d VVVVVVBBBBBB ' *************************************************************************** ' * ' * Title : LCD Thermometer LM35.bas ' * Version : 1.0 ' * Last Updated : 17.04.2006 ' * Target : AT Mega8 ' * Author : www.avrprojects.net ' * Program code : BASCOM AVR ' * Hardware req. : LM35 ' * Description : read analog value from LM 35 temperature sensor, show the result on a LCD ' * display with bar-graph ' *************************************************************************** $regfile = "M8def.dat" ' use the Mega8 $crystal = 10000000 Deflcdchar 0 , 32 , 32 , 31 , 31 , 31 , 31 , 32 , 32 ' replace ? with number (0-7)' Deflcdchar 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 , 1 ' replace ? with number (0-7) Deflcdchar 2 , 16 , 16 , 16 , 16 , 16 , 16 , 16 , 16 ' replace ? with number (0-7) Deflcdchar 3 , 16 , 16 , 31 , 31 , 31 , 31 , 16 , 16 ' replace ? with number (0-7) Deflcdchar 4 , 1 , 1 , 31 , 31 , 31 , 31 , 1 , 1 ' replace ? with number (0-7) Deflcdchar 5 , 32 , 32 , 28 , 28 , 28 , 28 , 32 , 32 ' replace ? with number (0-7) Config Lcdpin = Pin , Db4 = Portd.3 , Db5 = Portd.2 , Db6 = Portd.1 , Db7 = Portd.0 , E = Portd.6 , Rs = Portd.7 Config Lcd = 20 * 4 Config Adc = Single , Prescaler = Auto , Reference = Avcc 'config ADC Start Adc Dim W As Word , Perc As Word , Volt As Word , Volt_d As Byte , Channel As Byte , I As Byte , Cols As Byte , Cols_d As Byte Cls Cursor Off Locate 3 , 1 Lcd "0" Locate 3 , 5 Lcd "10" Locate 3 , 10 Lcd "20" Locate 3 , 15 Lcd "30" Locate 3 , 19 Lcd Chr(223) ; "C" Do W = Getadc(0) Volt = W * 5 Volt_d = Volt Mod 10 Volt = Volt / 10 Locate 1 , 1 Lcd Volt ; "," ; Volt_d Cols = Volt / 2 Locate 2 , 1 For I = 1 To Cols Select Case I Case 1 : Lcd Chr(3) Case 5 : Lcd Chr(4) Case 10 : Lcd Chr(4) Case 15 : Lcd Chr(4) Case 20 : Lcd Chr(4) Case Else : Lcd Chr(0) End Select Next I Cols_d = Cols Mod 2 If Cols_d > 0 Then Lcd Chr(5) Cols = Cols + 2 Else Cols = Cols + 1 End If For I = Cols To 20 Select Case I Case 1 : Lcd Chr(2) Case 5 : Lcd Chr(1) Case 10 : Lcd Chr(1) Case 15 : Lcd Chr(1) Case 20 : Lcd Chr(1) Case Else : Lcd Chr(32) End Select Next I Waitms 1000 Loop End $% h)_H)o(h&6NR 3 V W k l ! { /   Y Z gd&6%Z d e )2@IWjkn~gd&6(?Vn 2:;P`w  gd&6  $%$gd&681h:p). A!"#$% (2*2N@N Normal$A$CJ_HaJmH sH tH DA@D Default Paragraph FontRi@R  Table Normal4 l4a (k@(No Liste` &6HTML Preformatted=$ 2( Px 4 #\'*.25@9A$CJOJQJ^JaJ% NR3 VWkl!{/YZde)2@IWjkn~(?Vn 2:;P`w  $ ' I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I0I00NR3 VWkl!{/YZde)2@IWjkn~(?Vn 2:;P`w  $ ' K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0K0I0I0I0I0 0$ % Z  % % lv!+F  ' 03GJ^bvzhk$ ' 33333333333333! $ ' ' # &6)@$ $ e+$ $ % P@UnknownGz Times New Roman5Symbol3& z Arial?5 z Courier New"1h(Ӥf)Ӥf]]!4! ! 2HX)?&62M' ***************************************************************************maryammaryamOh+'0 $8 HT t  P' ***************************************************************************maryam Normal.dotmaryam1Microsoft Office Word@F#@|.i@i]՜.+,04 hp|  !  N' *************************************************************************** Title  "#$%&'(*+,-./03Root Entry Fp i51Table!WordDocument:SummaryInformation(!DocumentSummaryInformation8)CompObjq  FMicrosoft Office Word Document MSWordDocWord.Document.89q