سلام اول از همه چیز منو به خلطر این که این همه سوال میپرسم ببخشید.
من یه دماسنج ساختم با مگا 8 و ال ام 35 ولی دما رو نشون نمیده و یا عدد های الکی مینویسه مثل 511 درجه و تو این حدود و چه ال ام 35 رو مدار باشه چه نباشه همینه و فرقی نداره !
این شماتیک و برنامه هست لطفا دوستان من رو راهنمایی کنن تا بتونم این مشکل رو حل کنم !

در ضمن تو شماتیک به پایه های 7 و 8 مگا چیزی وصل نمیشد ولی من رو برد برد وصل کردم روشن نشد و از رو تجربه ای که از مقالات بدست اوردم VCC , GND رو خودم وصل کردم و روشن شد .
در ضمن میخواستم بدونم کجای برنامه مشخص میکنه ال ام 35 از طریق پورت سی شماره 5 یا همون پایه 28 خودمون باید مقدارش رو به میکرو بده ؟
من مثبت ال ام رو به + 5 مدار و منفی رو به زمین وصل کردم این درسته ؟
من که گیج شدم
من یه دماسنج ساختم با مگا 8 و ال ام 35 ولی دما رو نشون نمیده و یا عدد های الکی مینویسه مثل 511 درجه و تو این حدود و چه ال ام 35 رو مدار باشه چه نباشه همینه و فرقی نداره !
این شماتیک و برنامه هست لطفا دوستان من رو راهنمایی کنن تا بتونم این مشکل رو حل کنم !

در ضمن تو شماتیک به پایه های 7 و 8 مگا چیزی وصل نمیشد ولی من رو برد برد وصل کردم روشن نشد و از رو تجربه ای که از مقالات بدست اوردم VCC , GND رو خودم وصل کردم و روشن شد .
در ضمن میخواستم بدونم کجای برنامه مشخص میکنه ال ام 35 از طریق پورت سی شماره 5 یا همون پایه 28 خودمون باید مقدارش رو به میکرو بده ؟
من مثبت ال ام رو به + 5 مدار و منفی رو به زمین وصل کردم این درسته ؟
من که گیج شدم
کد:
' This file downlod from www.yazdkit.com $regfile = "m8def.dat" $crystal = 1000000 Config Lcd = 16 * 2 Config Lcdpin = Pin , Db4 = Pinb.2 , Db5 = Pinb.3 , Db6 = Pinb.4 , Db7 = Pinb.5 , Rs = Pinb.0 , E = Pinb.1 '----------------------------------------- Config Int0 = Falling Config Int1 = Falling Config Adc = Single , Prescaler = Auto , Reference = Internal Enable Interrupts Enable Int0 Enable Int1 On Int0 Tempup On Int1 Tempdown '------------------------------------------ Deflcdchar 0 , 32 , 32 , 2 , 2 , 2 , 28 , 32 , 8 ' &Egrave; Deflcdchar 1 , 16 , 20 , 16 , 17 , 17 , 15 , 32 , 32 ' &auml;&Ccedil; Deflcdchar 2 , 32 , 7 , 5 , 7 , 8 , 8 , 8 , 8 ' &atilde; Deflcdchar 3 , 2 , 32 , 6 , 9 , 1 , 31 , 32 , 32 ' &Icirc; Deflcdchar 4 , 16 , 16 , 22 , 17 , 17 , 23 , 32 , 32 ' &Iuml;&Ccedil; Deflcdchar 5 , 32 , 32 , 6 , 1 , 1 , 6 , 32 , 32 '&Iuml; Deflcdchar 6 , 16 , 16 , 16 , 16 , 31 , 5 , 7 , 32 ' &atilde;&Ccedil; Deflcdchar 7 , 32 , 32 , 32 , 21 , 21 , 31 , 32 , 32 '&Oacute; Config Debounce = 35 '------------------------------------------ Config Pind.0 = Output Config Pind.1 = Output Config Pind.4 = Output Config Pind.5 = Output Config Pind.6 = Output Config Pind.7 = Output Config Pind.2 = Input Config Pind.3 = Input '------------------------------------------ Reset Portd.5 Reset Portd.6 Reset Portd.7 Reset Portd.1 Reset Portd.4 Reset Portd.0 Set Portd.3 Set Portd.2 Dim Temp As Byte Dim Aa As Word , B As Word , C As Word , D As Word Dim E As Byte , F As Word , G As Byte , H As Byte , I As Byte '------------------------------------------------------------------ Aa = 0 B = 0 C = 0 G = 0 E = 0 H = 0 I = 0 Cls Cursor Off Locate 1 , 10 Lcd Chr(0) Locate 1 , 9 Lcd Chr(1) Locate 1 , 8 Lcd Chr(2) Locate 1 , 7 Lcd Chr(3) Locate 1 , 6 Lcd Chr(4) Lowerline Lcd "www.yazdkit.com" Wait 4 Cls Locate 1 , 3 Lcd "Thermometer" Locate 2 , 9 Lcd Chr(5) Locate 2 , 8 Lcd Chr(6) Locate 2 , 7 Lcd Chr(7) Deflcdchar 0 , 32 , 1 , 8 , 21 , 5 , 31 , 16 , 29 ' &auml;&Igrave; Locate 2 , 6 Lcd Chr(0) Wait 4 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Shiftlcd Left Waitms 300 Cls Readeeprom Temp , 0 If Temp = 255 Then Temp = 25 Waitms 8 Cls Cursor Off Aa = 0 B = 0 C = 0 D = 0 '----------------------------------------------- Main: If E > 3 Then E = 1 Select Case E Case 1: Set Portd.5 Aa = 0 Aa = Getadc(5) Aa = Aa / 2 Case 2: Set Portd.6 B = 0 B = Getadc(5) B = B / 2 Case 3: Set Portd.7 C = 0 C = Getadc(5) C = C / 2 If D > Temp Then Reset Portd.4 Reset Portd.1 Set Portd.0 End If If D = Temp Then Reset Portd.1 Set Portd.4 Reset Portd.0 End If If D < Temp Then Set Portd.1 Reset Portd.4 Reset Portd.0 End If End Select Home D = Aa + B D = D + C D = D / 3 Stop Adc Do Lcd "(" ; Aa ; "+" ; B ; "+" ; C ; ")/3=" ; D Lowerline Lcd "s=" ; F ; " " ; "TEMP=" ; Temp ; " " Incr F Wait 1 Loop Until F = 20 F = 0 If E = 3 Then Reset Portd.5 Reset Portd.6 Reset Portd.7 Else End If Incr E Start Adc Waitms 1 Cls Goto Main '================================================ Tempup: Temp = Temp + 1 Writeeeprom Temp , 0 Waitms 8 Cls Return '================================================= Tempdown: Decr Temp If Temp < 0 Then Temp = 0 Writeeeprom Temp , 0 Waitms 8 Cls Return '================================================ End
دیدگاه