توجه ! این یک نسخه آرشیو شده میباشد و در این حالت شما عکسی را مشاهده نمیکنید برای مشاهده کامل متن و عکسها بر روی لینک مقابل کلیک کنید : درخواست راهنمایی برای برنامه فلشر
با سلام
من میخواستم یه فلاشر درست کنم که زمانی که روشن میشه تمام افکت هایی براش نوشتم رو از داخل یک حلقه اجرا کنه و یک کلید فشاری هم باشه که موقع عمل به زیر برنامه هایی که جدا تعریف کردم پرش کنه و افکت عوض بشه و تازمان تحریک کلید داخل همون حلقه تکرار بشه (البته من تاقسمت پرش به زیر برنامه 1 رو با وقفه خارجی نوشتم ولی برای پرش به زیر برنامه 2 و 3تاn مشکل دارم لطفا راهنمایی کنید.
با تشکر
naeimian
08-12-2012, 21:03
میت.نی داخل وقفه اولت یک متغییر قرار بدی و بر اساس اون شرط بذاری
مثلا با هر بار وارد شدن به وقفه یک متغیر یک واحد افزایش پیدا کنه
با سلام
من میخواستم یه فلاشر درست کنم که زمانی که روشن میشه تمام افکت هایی براش نوشتم رو از داخل یک حلقه اجرا کنه و یک کلید فشاری هم باشه که موقع عمل به زیر برنامه هایی که جدا تعریف کردم پرش کنه و افکت عوض بشه و تازمان تحریک کلید داخل همون حلقه تکرار بشه (البته من تاقسمت پرش به زیر برنامه 1 رو با وقفه خارجی توی بسکام نوشتم ولی برای پرش به زیر برنامه 2 و 3تاn مشکل دارم لطفا راهنمایی کنید.
با تشکر
سلام رفیق لینک زیر پست شماره ۱۱۵۶ بهت کمک میکنه
You can see links before reply
Dim A As Byte
Enable Interrupts
Enable Int0
Config Int0 = Rising
On Int0 Main0
goto main1
Main0:
Incr A
Select Case A
Case Is = 0
Goto Main1
Case Is = 1
Cls
Locate 1 , 4
Lcd "1"
Goto Main2
Case Is = 2
Cls
Locate 1 , 4
Lcd "2"
Goto Main3
End Select
Return
Main1:
Set Portd.0
Waitms 500
Reset Portd.0
Waitms 500
Goto Main1
Main2:
Set Portd.1
Waitms 500
Reset Portd.1
Waitms 500
Goto Main2
Main3:
Set Portd.4
Waitms 500
Reset Portd.4
Waitms 500
Goto Main3
کدهای بالا برنامه ای که من نوشتم مشکل پرش به main2 ,3 که انجام نمیشه
اگر امکان داره راهنمایی بفرمایید
سلام،
اولاً یه توصیه اکید : به هیچ عنوان در برنامه نویسی از Goto استفاده نکنید!!!
دوماً برنامه برنامه نیاز به تصحیح زیادی داره سر فرصت که تصحیحش کردم میذارمش همینجا
Main1: Set Portd.0 Waitms 500 Reset Portd.0 Waitms 500 Goto Main1
سلام مهندس این برنامه هیچوقت از main1 خارج نمیشه
چون اخرین دستور main1 یعنی دوباره پرش کن به main1 پس همین جا درجا میزنه
من برای این جور برنامه ها از دستور gosub استفاده میکنم (برای دونستن جزئیات به help مراجعه کنید)
دقیقا main2 و main3 هم همینطوری هستن و اگه برنامه داخل این قسمتها بشه دیگه خارج نمیشه مگر ریست میکرو
سلام مهندس این برنامه هیچوقت از main1 خارج نمیشه
چون اخرین دستور main1 یعنی دوباره پرش کن به main1 پس همین جا درجا میزنه
من برای این جور برنامه ها از دستور gosub استفاده میکنم (برای دونستن جزئیات به help مراجعه کنید)
دقیقا main2 و main3 هم همینطوری هستن و اگه برنامه داخل این قسمتها بشه دیگه خارج نمیشه مگر ریست میکرو
سلام نمیشه کاری کرد که با تحریک کلید بلافاصله از لیبل خارج بشه و به یک لیبل دیگه پرش کنه ؟
راستی برنامه شما end هم نداشت (پایان برنامه)
به این صورت تعریف کنید
main:
do
set a
for b=0 to 1500
if key=1 then
goto main1
endif
next
reset a
for b=0 to 1500
if key=1 then
goto main1
endif
next
loop
return
اگه هر main رو به این صورت تعریف کنی و داخل if بگی اگر کلید فشار داده شد پرش کن به main بعدی
حلقه for برای ایجاد تاخیره و البته هر دور که تکرار میشه کلید رو چک میکنه تا هرلحظه فشار داده شد پرش کنه :wink:
با سلام
مشکلی که هست طولانی بودن کدها داخل هر main (برای کم شدن کد توی سایت به اینصورت نوشتم)
نمیشه با وقفه خارجی این کار رو انجام داد؟ باتشکر
مشکلی که هست طولانی بودن کدها داخل هر main
مشکلش چیه ؟
حجمشه ؟!!! ببینید با یک main چه مقدار حجم برنامه میشه (خیلی کم)
ولی خوب منم قبول دارم اوصولیش با وقفه هست
و برای وقفه هم مثال توی نت زیاده حتما سرچ کنید... :wink:
سلام رفیق لینک زیر پست شماره ۱۱۵۶ بهت کمک میکنه
ساخت تابلوی led ثابت - صفحه 116 - ایـــــــــران میـــــــکرو ™ (You can see links before reply)
با سلام ببخشید به چه صورت میشه لین برنامه رو توی بسکام نوشت؟
سلام مهندس منظور من از جستجو فقط توی این سایت نبود...!!!:(
اگه توی گوگل میسرچیدید حتما پیدا میشد (حتی فارسیش)
اینو من پیدا کردم خیلی خوب توضیح داده حتی شماتیک و نمونه برنامه هم برای وقفه داره
منبع هم داخل فایل قید شده
موفق باشید ... :wink:
سلام مهندس منظور من از جستجو فقط توی این سایت نبود...!!!:(
اگه توی گوگل میسرچیدید حتما پیدا میشد (حتی فارسیش)
اینو من پیدا کردم خیلی خوب توضیح داده حتی شماتیک و نمونه برنامه هم برای وقفه داره
منبع هم داخل فایل قید شده
موفق باشید ... :wink:
سلام
ممنون این آموزش رو من هم خوندم ولی متاسفانه نتیجه ای نگرفتم و جتی توی منابع انگلیسی زبان هم چستجو کردم
باتشکر
سلام مهندس اینم یه برنامه با وقفه
من فقط در حدی نوشتم که ارور نده , شما تست کن جواب رو اینجا قرار بده :wink:
Powered by vBulletin® Version 4.2.1 Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.