سلام
من میخوام دوتا میکرو سویچ بزارم به عنوان ورودی که اگر هرگدوم رو زدم با میکرو بخونم که عددش صفر هست یا 1
اینها وصل هستن به پورت های d.3 , d.4
بعد با توجه بو روشن بودن این 2 تا یا خاموش بودنشون این 4 حالت پیش میاد برای پورتهام
d.3=1 , d.4 =1
d.3=1 , d.4=0
d.3=0 , d.4=1
d.3=0 , d.4=0
توی هر کدوم از این حالت ها میخوام 1 led برام روشن بشه یعنی 4 تا led دارم
این برنامه رو نوشتم بخونید بعد میگم کجای کارم میلنگه:
$regfile = "M8def.dat"
$crystal = 1000000
Config Portd = Input
Config Portb = Output
Config Portc = Output
'Dim Us As Bit
'Dim Sec As Bit
'Dim Off1 As Bit
'Dim Off2 As Bit
A1 Alias Pind.3
A2 Alias Pind.4
Do
If A1 = 1 And A2 = 1 Then
Set Portb.1
Elseif A1 = 1 And A2 = 0 Then
Set Portb.2
Elseif A1 = 0 And A2 = 0 Then
Set Portb.3
Elseif A1 = 0 And A2 = 1 Then
Set Portb.0
Loop
End If
End
حالا که مدار رو میبندم فقط led ای که به به پورت b.1 متصل شده روشن میشه
هرچی کلید ها رو میزنم شرایط رو تغییر نمیده!!!!
1 آیا اشکال توی تعریف A1,A2 هست؟ یا alias فرمان درستیه بری بازگردوندن 0 یا 1 بودن پورت d ??
2 آیا برای همچین کاری که 2 تا ورودی بگیره باید فرمان دیگه ای بنویسم؟ debounced یا همچین چیزی؟
3 اگر هیچکدوم پس چی؟
پیشاپیش ممنون