اطلاعیه

Collapse
No announcement yet.

اولویت دادن به وقفه ADC

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    اولویت دادن به وقفه ADC

    دوستان چطور میشه اولویت وقفه ADC رو بالاتر از وقفه خارجی برد.یا زمانی که میخوایم بریم تو مود تبدیل وقفه خارجی رو غیر فعال کنیم.
    تو برنامه به این مشکل خوردم.که زمانی که مبدل ADC در حال تبدیل هست و وقفه خارجی فعال میشه برنامه پرش میکنه به زیر برنامه وقفه خارجی و وقتی برمیگرده دیگه گیر میکنه.
    لازم به ذکر هست که قبل از تبدیل از دستورات Disable intr هم استفاده کردم ولی مشکل دیگه ایجاد شد.دستور Off واسه وقفه خارجی نداریم؟
    (بسکام)
    گیرم گلاب ناب شما اصل قمصر است/اما چه سود، حاصل گلآ‌های پرپر است!-از آن زمان که آیینهآ‌گردان شب شُدید*آیینه دل از دَم دوران مکدر است-وقتی بهار، وصله ناجور فصلآ‌هاست*وقتی تبر، مدافع حق صنوبر است-وقتی به دادگاه عدالت، طناب دار*بر صدر میآ‌نشیند و قاضی و داور است-از من مخواه شعرِ تر، ای بیآ‌خبر ز درد!*شعری که خون از آن نچکد ننگ دفتر است!-ای از تبار هرچه سیاهی، سرشتآ‌تان*رنگ جهنم است تمام بهشتآ‌تان
    "گزیده ابیاتی چند از بیداد خراسانی"

    #2
    پاسخ : اولویت دادن به وقفه ADC

    نوشته اصلی توسط heidarali
    دوستان چطور میشه اولویت وقفه ADC رو بالاتر از وقفه خارجی برد.یا زمانی که میخوایم بریم تو مود تبدیل وقفه خارجی رو غیر فعال کنیم.
    تو برنامه به این مشکل خوردم.که زمانی که مبدل ADC در حال تبدیل هست و وقفه خارجی فعال میشه برنامه پرش میکنه به زیر برنامه وقفه خارجی و وقتی برمیگرده دیگه گیر میکنه.
    لازم به ذکر هست که قبل از تبدیل از دستورات Disable intr هم استفاده کردم ولی مشکل دیگه ایجاد شد.دستور Off واسه وقفه خارجی نداریم؟
    (بسکام)
    کامپایلر چی هست ؟
    اگر کدویژن هست و میتونی وقفه سراسری رو غیر فعال کنی
    کد:
    #ASM "cli";
    البته مشکل اینه اگر تایمر یا هر وقفه دیگه داشته باشی همه رو از کار میندازه

    دیدگاه


      #3
      پاسخ : اولویت دادن به وقفه ADC

      نوشته اصلی توسط heidarali
      دوستان چطور میشه اولویت وقفه ADC رو بالاتر از وقفه خارجی برد.یا زمانی که میخوایم بریم تو مود تبدیل وقفه خارجی رو غیر فعال کنیم.
      تو برنامه به این مشکل خوردم.که زمانی که مبدل ADC در حال تبدیل هست و وقفه خارجی فعال میشه برنامه پرش میکنه به زیر برنامه وقفه خارجی و وقتی برمیگرده دیگه گیر میکنه.
      لازم به ذکر هست که قبل از تبدیل از دستورات Disable intr هم استفاده کردم ولی مشکل دیگه ایجاد شد.دستور Off واسه وقفه خارجی نداریم؟
      (بسکام)
      سلام
      خوب قبل تبدیل adc باید وقفه رو غیر فعال کرد برای همین منظور می تونی از دستور disable استفاده کنی
      مثلا
      disable int0 و بعد از تبدیل adc برای فعال کردن وقفه از دستور enable استفاده کن مثل enable int0
      برد جوجه کشی:
      مطالعه پست 1 (حتما مطالعه کنید)


      مطالعه پست 2 (برای مطلع شدن از تغییرات برنامه مطالعه کنید)

      دانلود

      توجه:
      این برد نیمه صنعتی و خانگی هست...
      برای صنعتی شدن حتما برد مخصوص خودتون رو بزنید...

      آی دی کانال تلگرامی مربوط به برد جوجه کشی : electr0o0nic@

      دیدگاه


        #4
        پاسخ : اولویت دادن به وقفه ADC

        با تشکر از دوستان
        اگه وقفه ها کامل غیر فعال بشه پرچم اتمام وقفه مبدل هیچوقت بالا نمیره.
        قبلا گفتم با disable int درست نشد مشکل دیگه ایجاد شد.
        ولی مشکل چیز دیگه بود دوستان،من اشتباهی برداشت کردم،برنامه در موقع تبدیل گیر نمیکنه.برنامه بعد اتمام وقفه خارجی فکر کنم تو چرخه بی نهایت گیر میکرد.واسه رفع این مشکل به محض اینکه وقفه خارجی فعال میشه و CPU وارد زیربرنامه وقفه میشه،اونجا اولین دستور رو Disable int گذاشتم و در اخر زیربرنامه قبل خروج مجدد Enable int کردم.درست شد!
        گیرم گلاب ناب شما اصل قمصر است/اما چه سود، حاصل گلآ‌های پرپر است!-از آن زمان که آیینهآ‌گردان شب شُدید*آیینه دل از دَم دوران مکدر است-وقتی بهار، وصله ناجور فصلآ‌هاست*وقتی تبر، مدافع حق صنوبر است-وقتی به دادگاه عدالت، طناب دار*بر صدر میآ‌نشیند و قاضی و داور است-از من مخواه شعرِ تر، ای بیآ‌خبر ز درد!*شعری که خون از آن نچکد ننگ دفتر است!-ای از تبار هرچه سیاهی، سرشتآ‌تان*رنگ جهنم است تمام بهشتآ‌تان
        "گزیده ابیاتی چند از بیداد خراسانی"

        دیدگاه


          #5
          پاسخ : اولویت دادن به وقفه ADC

          سلام دادا.
          اولاً اولویت وقفه توی avr قالب تغییر نیست.
          دوماً مشکل شما اولویت نیست :mrgreen: بلکه کد نویسی شما اشتباهه.
          تشکر لازم نیست!

          دیدگاه

          لطفا صبر کنید...
          X