سلام دوستان
من 1 مشکل عجیب و غریب دارم!!!
میخواستم 15-20 تا ورودی و خروجی رو با avr شبیه سازی کنم که به این مشکل که پایین میگم برخوردم و تا 2 تا ورودی قانع شدم ولی باز هم مشکلم پا برجاست
میخوام با 2 تا میکرو سویچ به 2 تا پایه mega8 به عنوان ورودی دستور بدم و اگر مثلا اولی زده شد 1 led روشن و اگر دومی زده شد 1 led خاموش بشه
مشکل: اینجاست که وقتی مدار رو درست وصل کردم و پاور رو متصل کردم led خود به خود روشن و خاموش میشه و اصلا مهلت نمیده که من بهش بگم روشن شو یا خاموش
کلید on رو که بزنم و نگه دارم روشن میمونه led و اگر بردارم به همون ترتیب قبل بدون هیچ ریتم و قانونی روشن و خاموش میشه و اگر کیلد off رو بزنم خاموش نگه میداره و اگر دستم رو ازش بردارم باز هم مثل on
یکی از دوستان گفت که به جای اینکه کلید ها رو پورت ورودی در نظر بگیرم و ولتاژ بدم بیام و زمینشون کنم.... یعنی دستور قدیمی که این هست:
$regfile = "M8def.dat"
$crystal = 8000000
Config Portd = Input
Config Portb = Output
Config Debounce = 30
Do
Debounce Pind.3 , 1 , On , Sub
Debounce Pind.4 , 1 , Off , Sub
Loop
End
On:
Set Portb.0
Return
Off:
Reset Portb.0
Return
End
تبدیل کردیم به این:
Config Portd = Input
Config Portb = Output
Config Debounce = 30
Do
Debounce Pind.3 , 0 , On , Sub
Debounce Pind.4 , 0 , Off , Sub
(فقط جاهایی رو که تغییر دادیم نوشتم)
با این حالت درست شد!!!!!!!!!!!!!!!!!!!!!!!!!! Shocked Shocked Shocked Shocked Shocked Shocked Shocked
حالا سوال من اینه که مشکل چیه؟
من میخوام وقتی که ورودی داشتم led ام روشن بشه!!!!
و 1 چیز هم به ذهنم میرسه که این داره میپره روی دستور on , off بدون اینکه وایسه منتظر دستور debounce
یعنی در کل میشه گفت زمانی که من دستور on رو از ground میدم و debounce ام 0 هست کار میکنه و به محضی که 1 میکنم و میخوام دستور بدم اگر ولتاژ گرفت ورودیم (یا 1 شد) قاطی میکنه
خواهشا کمکم کنید که داره سوت میکشه مغزم