نوشته اصلی توسط
مجتبی تاجیک
من خواستم 2 تا سنسور رو به میکرو متصل کنم ، برنامه رو به صورت زیر تغییر دادم :
کد:
$regfile "m8def.dat"
$crystal = 4000000
Config Adc = Single , Prescaler = Auto
Start Adc
Dim A As Word, B as Word
Do
A = Getadc(0)
B = Getadc(1)
Cls
Lcd " value " ; A
lowerline
Lcd " value " ; B
waitms 100
Loop
End
و یک سنسور دیگه رو بایاس معکوس وصل کردم به ADC1 میکرو ، ولی میکرو فقط مقدار همون سنسور اول رو نشون میده ؛ مشکل کجی کد هست ؟
جالب اینکه مقدار سنسور اول رو تو خط پائینی LCD نمایش میده ، یعنی GetADC(10) ؛ مگه پارامتری که به GetADC میدیم شماره پرت نیست ؟ من که سنسور اولم رو به پایه ADC0 متصل کردم !
سلام.
برنامه رو اینجوری بنویس :
کد:
$regfile "m8def.dat"
$crystal = 4000000
Config Adc = Single , Prescaler = Auto
Start Adc
Dim A As Word, B as Word
Do
A = Getadc(0)
B = Getadc(1)
Cls
Home
Lcd " value " ; A
lowerline
Lcd " value " ; B
waitms 100
Loop
End
مشکل برنامه اینه که هر بار برنامه میرسه به دستور lower line , یه خط تو lcd میاد پایین تر و مقدار رو اونجا می نویسه.
حالا ببین برنامه رو بار اول که اجرا می کنی مقدار A رو سطر اول و مقدار B رو سطر پایینی مینویسه ولی برنامه که دوباره تکرار شد و دوباره میخواد مقدار مقدار A رو نشون بده اینبار سطر اول نشون نمیده چون آخرین بار مکان نما سطر دوم بود.ولی اگه دستور home روبنویسی همیشه مکان نما میاد سطر اول ستون اول مقدار A رو مینویسه و خط پایین مقدار B همین.
موفق باشی