سلام دوستان من با دماسنجم مشکل دارم اونم اینه که کلی ارور میده و من نمی دونم دقیقا مشکلش چیه چون نه کد ها اروری دادن نه مدار فقط هشدار هست
ممنون میشم نگاهی بندازید
این کل فایل ها
https://www.mediafire.com/?93tdfc4wjuf4tsm
اینم عکس مدار

اینم کد های بسکامش
و یک کد دیگه که هیچکدوم کار راه ننداخت
فایل اماده شده و درستش رو دارم اما می خوام مشکلم بر طرف بشه
ممنون میشم نگاهی بندازید
این کل فایل ها
https://www.mediafire.com/?93tdfc4wjuf4tsm
اینم عکس مدار
اینم کد های بسکامش
کد:
$regfile = "m32def.dat" $crystal = 8000000 Config Portc = Output Config Porta = Input Config Lcdpin = Pin , E = Portc.5 , Rs = Portc.4 , Db7 = Portc.0 , _ Db4 = Portc.3 , Db5 = Portc.2 , Db6 = Portc.1 Config Lcd = 16 * 2 Config Adc = Single , Prescaler = Auto Start Adc Dim Temp As Word Cursor Off Do Temp = Getadc(0) Temp = Temp / 2 Select Case Temp Case Is =< 25 : 'compare temperature Home L Lcd " Low " Case 25 To 35 : 'compare temperature Home L Lcd " Normal " Case Is >= 36 : 'compare temperature Home L Lcd " High " End Select Home Lcd Temp ; Chr(0) ; "C " 'show temperature Loop End
کد:
$regfile = "m32def.dat" 'We use internal osc 4000000 for atmega32 $crystal = 4000000 Config Lcdpin = Pin , Db4 = Portc.1 , Db5 = Portc.2 , Db6 = Portc.3 , Db7 = _ Portc.4 , E = Portd.2 , Rs = Portd.3 Config Lcd = 16 * 2 Config Adc = Single , Prescaler = Auto Start Adc Config Timer0 = Timer , Prescale = 1024 Enable Interrupts Enable Timer0 On Timer0 Temp_sample Start Timer0 Dim Sample As Word Dim Temp As Word Dim Temp_final As Integer Dim Sum As Integer Deflcdchar 0 , 24 , 24 , 32 , 32 , 32 , 32 , 32 , 32 '' sign -> (') Cursor Off Cls Do Loop end 'end program Temp_sample: Incr Sample 'incr sampling counter Temp = Getadc(0) 'read adc(0) every 65ms Sum = Sum + Temp 'sum the sample data If Sample = 15 Then '20 samples Sample = 0 'reset sample counter Stop Timer0 'stop timer to calculation Sum = Sum / 15 'mean calculation Sum = Sum - 558 'decrementing offset Temp_final = Sum / 2 'every 10mv is almost 2 step of adc (adc step=5/1023=4.88mv) Select Case Temp_final Case Is =< 10 : 'compare temperature Home L Lcd " Low " Case 11 To 34 : 'compare temperature Home L Lcd " Normal " Case Is >= 35 : 'compare temperature Home L Lcd " High " End Select Home Lcd Temp_final ; Chr(0) ; "C " 'show temperature Start Timer0 Sum = 0 End If Return
دیدگاه