امتیاز موضوع:
  • 0 رأی - میانگین امتیازات: 0
  • 1
  • 2
  • 3
  • 4
  • 5
غیر فعال کردن وقفه
نویسنده پیام
ilgar آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 843
موضوع‌ها: 17
تاریخ عضویت: اردیبهشت ۱۳۸۷

تشکرها : 383
( 2597 تشکر در 855 ارسال )
ارسال: #1
غیر فعال کردن وقفه
سلام
تو بسکام دستوری لازم دارم که تا قسمتی شبیه return عمل کنه.
چون وقتی که از زیربرنامه وقفه به برنامه اصلی پرش میکنیم،میکرو دائم فکر میکنه زیربرنامه وقفه رو داره اجرا میکنه.و من میخام وقتی پرش کرد به برنامه اصلی همه چیزو درباره وقفه بیخیال بشه.
در حقیقت دستوری میخام که پرچم وقفه رو بیاره پایین.

مطمئناً همچی دستوری هست.با اسمبلی میشه این کارو کرد ولی دردسرش زیاده. در این مورد از دوسنان کسی حضور ذهن داره؟
۲۵-مهر-۱۳۸۸, ۱۵:۲۴:۲۷
ارسال‌ها
پاسخ
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #2
RE: غیر فعال کردن وقفه
مهندس منظورت رو نفهمیدم !

ولی می شه کل وقفه رو غیر فعال کرد !

کد php:
DISABLE interrupt 
۲۵-مهر-۱۳۸۸, ۱۶:۳۹:۱۰
ارسال‌ها
پاسخ
تشکر شده توسط : ilgar
ilgar آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 843
موضوع‌ها: 17
تاریخ عضویت: اردیبهشت ۱۳۸۷

تشکرها : 383
( 2597 تشکر در 855 ارسال )
ارسال: #3
RE: غیر فعال کردن وقفه
نه كل وقفه ها رو نميخام

ببينيد. الان میکرو داره زیربرنامه وقفه رو اجرا میکنه. اگه به دستور return برسه برمیگرده به اونجایی که به خاطر وقفه برنامه رو قطع کرده بود و تا رخ دادن اینتراپت دیگه برنامه اصلی رو اجرا میکنه.

اما اگه من تو زیر برنامه وقفه یه دستور جامپ به برنامه اصلی میکرو داشته باشم، هرچند میرم تو اجرای برنامه اصلی، ولی میکرو منتظر میمونه تا به return برسه و برگرده به جایی که برنامه رو قطع کرده بود. حالا اگه تو این مدت چندین دستور وقفه دیگه رخ بده، میکرو دچار مشکل میشه.

امیدوارم تونسته باشم منظورمو برسونم.

با اسمبلی میشه رجیستر مربوط به اینتراپتو دستکاری کرد ولی تو بسکام؟
۲۵-مهر-۱۳۸۸, ۱۶:۵۷:۱۳
ارسال‌ها
پاسخ
mehrdadgh آفلاین
کاربر با تجربه
****

ارسال‌ها: 830
موضوع‌ها: 58
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 654
( 1904 تشکر در 596 ارسال )
ارسال: #4
RE: غیر فعال کردن وقفه
خوب دیگه وقتی که رفتی داخل زیربرنامه اول دیسایبل کن بعد قبل از رترن دوباره اینبیل کن

وبلاگ من : Azarrobot.blogfa.com

ISAplast.ir
۲۵-مهر-۱۳۸۸, ۱۷:۵۱:۴۶
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
ilgar آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 843
موضوع‌ها: 17
تاریخ عضویت: اردیبهشت ۱۳۸۷

تشکرها : 383
( 2597 تشکر در 855 ارسال )
ارسال: #5
RE: غیر فعال کردن وقفه
1) برنامه اصلی طوریه که تو اکثر جاهاش لازمه اینیبل باشه( وقفه های متعدد از جنس های مختلفی تو برنامه هست)
2) تو Return من نميدونم که به کدوم قسمت از برنامه برمیگرده تا اونجا اینیبل بذارم!
۲۵-مهر-۱۳۸۸, ۱۷:۵۸:۵۱
ارسال‌ها
پاسخ
ilgar آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 843
موضوع‌ها: 17
تاریخ عضویت: اردیبهشت ۱۳۸۷

تشکرها : 383
( 2597 تشکر در 855 ارسال )
ارسال: #6
RE: غیر فعال کردن وقفه
نظرتون در باره این موضوع چیه؟
قبل از پرش یه بار دیسیبل کنم بعدش بلافاصله اینیبل. یعنی دوتا دستورو پشت سر هم قبل از دستور جامپ بنویسم.
بنظرتون جواب میده؟
۲۵-مهر-۱۳۸۸, ۱۸:۰۱:۵۲
ارسال‌ها
پاسخ
t3r!p3000 آفلاین
         
*****

ارسال‌ها: 5,050
موضوع‌ها: 83
تاریخ عضویت: اردیبهشت ۱۳۸۵

تشکرها : 34447
( 17423 تشکر در 5116 ارسال )
ارسال: #7
RE: غیر فعال کردن وقفه
نباید جواب بده !

شما حافظه استک پویینتر رو که خالی نمی کنی !

جالبه که این مشکل شما رو من هم قبلا داشتم و آخرش طرحمو عوض کردم !

می تونی این کارو کنی :

تو وقفه فوق یه متغییر رو یک کنی !

تو. حلقه اصلی برنامه متغیر فوق رو تست کن و اگه یک شد بپر به جای مشخص شده و متغیر دوباره صفر بشه !

یادمه من این کارو کردم !
۲۵-مهر-۱۳۸۸, ۱۸:۰۷:۲۰
ارسال‌ها
پاسخ
تشکر شده توسط : ilgar
mehrdadgh آفلاین
کاربر با تجربه
****

ارسال‌ها: 830
موضوع‌ها: 58
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 654
( 1904 تشکر در 596 ارسال )
ارسال: #8
RE: غیر فعال کردن وقفه
یعنی این کار رو نمیشه کرد : بعد از اجرای وقفه با پرش به زیر برنامه ابتدا وقفه رو دیسبل کنیم و دوباره قبل از رسیدن به رترن انبیل

وبلاگ من : Azarrobot.blogfa.com

ISAplast.ir
۲۵-مهر-۱۳۸۸, ۱۸:۱۵:۳۴
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
ilgar آفلاین
مدیر بازنشسته
*****

ارسال‌ها: 843
موضوع‌ها: 17
تاریخ عضویت: اردیبهشت ۱۳۸۷

تشکرها : 383
( 2597 تشکر در 855 ارسال )
ارسال: #9
RE: غیر فعال کردن وقفه
مهندس تریپ ممنون. کلک جالبیه. پس کافیه قبل از دستور return یه برچسب بزنم.

مهندس مهراد:
نه نمیشه! مشکل اینجاست که ما وقتی از وسط زیربرنامه وقفه بیرون میپریم، دیگه دستور return رو نخواهیم دید وگر نه که دیگه مشکلی نبود . اگه هم بخوایم به زیر برنامه وقفه پرش کنیم برای اینکه هر بار این اتفاق نیفته همون روش علی آقا میشه.
۲۵-مهر-۱۳۸۸, ۱۹:۱۶:۲۸
ارسال‌ها
پاسخ
تشکر شده توسط : t3r!p3000
mehrdadgh آفلاین
کاربر با تجربه
****

ارسال‌ها: 830
موضوع‌ها: 58
تاریخ عضویت: مرداد ۱۳۸۷

تشکرها : 654
( 1904 تشکر در 596 ارسال )
ارسال: #10
RE: غیر فعال کردن وقفه
راستش ایلگار جان من من که متوجه نشدم !
ولی خوشبختانه مشکلت حل شد

وبلاگ من : Azarrobot.blogfa.com

ISAplast.ir
۲۵-مهر-۱۳۸۸, ۲۱:۵۴:۱۱
ارسال‌ها
پاسخ


موضوعات مرتبط با این موضوع...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  وقفه adc محمد حسینی 6 6,855 ۰۱-تير-۱۳۹۵, ۱۸:۳۸:۳۴
آخرین ارسال: mfazl22
  [سوال] وقفه کانتر amir4 1 2,300 ۳۰-مرداد-۱۳۹۴, ۱۰:۰۹:۱۱
آخرین ارسال: sharin
Smile [سوال] مشکل با وقفه خارجی(INT 0)میکرو علیدلی 15 14,973 ۱۰-دى-۱۳۹۳, ۲۲:۴۵:۱۵
آخرین ارسال: sharin
  ایجاد وقفه 1 ثانیه با Attiny 2313 sinastar 3 3,624 ۰۴-آذر-۱۳۹۲, ۲۰:۲۶:۴۵
آخرین ارسال: EBKA
  وقفه سریال که منو دیونه کرده cinapa 1 2,338 ۲۹-مهر-۱۳۹۲, ۲۳:۵۹:۵۲
آخرین ارسال: sharin
  مشکل وقفه سریال lilbibi 5 5,389 ۱۱-شهریور-۱۳۹۲, ۱۶:۲۴:۳۶
آخرین ارسال: sharin
  کمک برای فعال کردن سه پین میکرو!!! alighr23 12 5,897 ۲۳-بهمن-۱۳۹۱, ۰۳:۴۸:۳۴
آخرین ارسال: alighr23
  فعال کردن 3 pwm در میکرو به زبان بسکام abbasalifix 3 3,698 ۰۸-دى-۱۳۹۱, ۱۲:۲۰:۱۱
آخرین ارسال: abbasalifix
  مشکل در وقفه nIRQ RFM12 PROFESSION4L 0 1,557 ۱۴-مرداد-۱۳۹۱, ۰۲:۴۵:۵۵
آخرین ارسال: PROFESSION4L
  وقفه خارجی DOST123 0 2,114 ۱۲-تير-۱۳۹۱, ۲۲:۲۱:۲۴
آخرین ارسال: DOST123

پرش به انجمن:


کاربرانِ درحال بازدید از این موضوع: 2 مهمان

صفحه‌ی تماس | IranVig | بازگشت به بالا | | بایگانی | پیوند سایتی RSS