سلام
برنامه زیر رو من تو بسکام نوشتم و تو پروتیوس اجرا کردم ولی رو lcdفقط قسمت اعشاری تغییر می کنه،اشکال از چیه؟ :sad:
یک پتانسیومتر 10K رو به ADC وصل کردم که یک سرش به ولتاژ 5V و یک سرش هم به زمین وصله.
ایراد از چیه؟!
رو LCD قسمت صحیح 424 صحیح است و با تغییر پتانسیومتر فقط قسمت اعشاری تغییر می کنه .مقدار پتانسیومتر و ولتاژ DC رو هم تغییر دادم ولی هیچ تغییری ایجاد نشد!!!!!!!!!!!!!
چیکار باید کنم؟!!!!!!!!
$regfile = "m16def.dat"
$crystal = 8000000
Config Lcd = 16 * 2
Config Lcdbus = 4
Config Lcdpin = Pin , Db7 = Portb.7 , Db6 = Portb.6 , Db5 = Portb.5 , _
Db4 = Portb.4 , E = Portb.3 , Rs = Portb.2
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Dim A As Word
Dim B As Single
Dim C As Single
Dim D As Single
Dim E As Single
Dim G As Single
Dim F As Integer
B = 0
C = 0
D = 0
E = 0
F = -1
G = 424.29
Start Adc
Do
A = Getadc(0)
B = A
B = B / 204.5
C = B / 7.7
D = C * F
D = D * 17.314
E = C + G
Cls
Home
Lcd "CO2=" ; E ; " ppm"
Waitms 100
Loop
End[hr]
برنامه زیر رو من تو بسکام نوشتم و تو پروتیوس اجرا کردم ولی رو lcdفقط قسمت اعشاری تغییر می کنه،اشکال از چیه؟ :sad:
یک پتانسیومتر 10K رو به ADC وصل کردم که یک سرش به ولتاژ 5V و یک سرش هم به زمین وصله.
ایراد از چیه؟!
رو LCD قسمت صحیح 424 صحیح است و با تغییر پتانسیومتر فقط قسمت اعشاری تغییر می کنه .مقدار پتانسیومتر و ولتاژ DC رو هم تغییر دادم ولی هیچ تغییری ایجاد نشد!!!!!!!!!!!!!
چیکار باید کنم؟!!!!!!!!
$regfile = "m16def.dat"
$crystal = 8000000
Config Lcd = 16 * 2
Config Lcdbus = 4
Config Lcdpin = Pin , Db7 = Portb.7 , Db6 = Portb.6 , Db5 = Portb.5 , _
Db4 = Portb.4 , E = Portb.3 , Rs = Portb.2
Config Adc = Single , Prescaler = Auto , Reference = Avcc
Dim A As Word
Dim B As Single
Dim C As Single
Dim D As Single
Dim E As Single
Dim G As Single
Dim F As Integer
B = 0
C = 0
D = 0
E = 0
F = -1
G = 424.29
Start Adc
Do
A = Getadc(0)
B = A
B = B / 204.5
C = B / 7.7
D = C * F
D = D * 17.314
E = C + G
Cls
Home
Lcd "CO2=" ; E ; " ppm"
Waitms 100
Loop
End[hr]
دیدگاه