PDA

توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : ورودي براي ميكرو به زبان بيسيك؟؟



abbas1371sa
13-09-2008, 14:35
سلام
من يه برنامه تو بسكام نوشتم كه يكي از پورت هاي ميكرو را input قرار دادم و تو برنامه از اين دستور استفاده كردم
If pinx.y = 1 then goto x
البته برنامه من 5 ورودي داره كه دستور بالا رو 5 بار تكرار كردم تو پروتؤس خوب جواب داد ولي در عمل ii998)
وقتي مدار شروع به كار ميكنه و فقط اولين ورودي رو ميتونه جواب بده 4 ورودي ديگه اصلا كار نميكنند
نمونه برنامه بعداز تعيين كريستال .نوع ميكرو و ... اينه :
: st
If pinc.0 = 1 then goto a
If pinc.1 = 1 then goto b
If pinc.2 = 1 then goto c
If pinc.3 = 1 then goto d
If pinc.4 = 1 then goto e
jmp st
end
اگه ممكنه كمكم كنيد واقعا كلافه شدم :x :x :x :x

1nafar
13-09-2008, 18:30
سلام
در ورژن بعضی از ورژن های بسکام این دستور و چند تا دستور دیگه مثل makeint و ... درست کامپایل نمیشوند شما اگه از فرم دیگه دستور استفاده کنید درست میشه مثل
If Pinc.0 = 1 Then
Goto A
End If
If Pinc.1 = 1 Then
Goto B
End If
If Pinc.2 = 1 Then
Goto C
End If
If Pinc.3 = 1 Then
Goto D
end IF
(بعضی از ورژن ها این دستور را درست اجرا میکنند و بعضی دیگر ان را شرط در شرط (یعنی اگر شرط اول برقرار بود ، شرط دوم اجرا شود ،اگر شرط اول و دوم برقرالر بود ، شرط سوم اجرا شود و الی اخر)وبعضی دیگر هم حالتی بین این دو که پروتوس را به اشتباه میاندازد)

abbas1371sa
23-09-2008, 16:44
سلام
راه ديگه اي سراغ نداري ؟ اين روش هم جواب نداد :cry:
نميدونم چرا فقط ورودي اولي رو ميگره بقيه رو بطور كل جواب نميده
فكر نميكنم سخت افزار مشكل داشته باشه چون به ازاي هر ورودي يك مقاومت 10 كيلو با زمين مدار گذاشتم :?or:(
بازهم نمونه برنامه رو ميزارم :k00:
st:
If pinc.0 = 1 then
goto a
end if

If Pinc.1 = 1 Then
goto b
end if
jmp st


a:
If pinc.0 = 1 then
goto a1
end if

jmp a

a1:
set portb.0
set portb.1

jmp st

b:
reset portb.0
reset portb.1

jmp st
البته برنامه اي كه من نوشتم از برنامه شرطي خيلي استفاده كردم
اگه اين روش درسته پس بكي از ورژن هاي بسكام كه ميتونه كامپايلش كنه رو معرفي كنيد.
ممنون ميشم اگه كمكم كنيد .

alitaroosheh
24-09-2008, 00:12
بهترين ورژنه بيسكام 1.11.8.3 هست كه هنوز رو دستش نيومده ولي برنامهتون توي حلقه نيست و يه بار اجرا ميشه اگه ورودي ها كليد فشاري هستن من برنامه رو اينجوري مينويسم:

config portc=output


do
Debounce Pinc.0 , 1 , Pr1 , Sub
Debounce Pinc.1 , 1 , Pr2 , Sub
Debounce Pinc.2 , 1 , Pr3 , Sub
Debounce Pinc.3 , 1 , Pr4 , Sub
loop

end

pr1:
.....'your code
return

pr2:
.....'your code
return

pr3:
.....'your code
return

pr4:
....'your code
return

اما يادتون نره كه توي مگا 32 دو پين pinc.5 و pinc.2 در حالت عادي كار نميكنن و براي jtag هستن و بايد براي كار كردن jtag غير فعال بشه ocden هم غير فعال