اطلاعیه

Collapse
No announcement yet.

رخداد همزمان چند وقفه و اشتباه شدن اطلاعات وروی از پورت سریال

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

    رخداد همزمان چند وقفه و اشتباه شدن اطلاعات وروی از پورت سریال

    سلام دوستان،
    من یه مدار دارم که در اون از EM-18 استفاده کردم. برای دریافت 12 کاراکتر مربوط به هر کارت از وقفه سریال با بافر 12تایی استفاده کردم. در یک قسمت دیگه برنامه گاهی وقفه تایمر 1 فعال می شه و یه سری تنظیمات در روتین وقفه این تایمر انجام میشه.

    زمانی که وقفه تایمر فعال نشده باشد، وقفه دریافت سریال اطلاعات کارت رو به درستی دریافت می کنه و هیچ مشکلی پیش نمی یاد (در ضمن هنگام ورود و خروج از وقفه دریافت سریال؛ وقفه ها رو به صورت سراسری غیر فعال و فعال می کنم.)

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

    با سپاس فراوان از همفکری شما
    همیشه بزرگوار تر از آن باشید که برنجید
    و نجیب تر از آن باشید که برنجانید!

    #2
    پاسخ : رخداد همزمان چند وقفه و اشتباه شدن اطلاعات وروی از پورت سریال

    روتینی که تو وقفه تایمر انجام میشه اگر یکم پیر بشه اشکالی پیش میاد؟
    اگر مهم نیست
    تو روتین سریال مقدار تایمر رو کم کن که وقفه نده
    هميشه به ياد خدا باش !

    دیدگاه


      #3
      پاسخ : رخداد همزمان چند وقفه و اشتباه شدن اطلاعات وروی از پورت سریال

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

      قدردان هر راهنمایی خواهم بود...
      همیشه بزرگوار تر از آن باشید که برنجید
      و نجیب تر از آن باشید که برنجانید!

      دیدگاه


        #4
        پاسخ : رخداد همزمان چند وقفه و اشتباه شدن اطلاعات وروی از پورت سریال

        http://www.eca.ir/forum2/index.php?t...8441#msg568441
        از جمله ی رفتگان این راه دراز
        باز آمده ای کو که به ما گوید راز
        هان بر سر این دو راهه از روی نیاز
        چیزی نگذاری که نمی آیی باز

        دیدگاه


          #5
          پاسخ : رخداد همزمان چند وقفه و اشتباه شدن اطلاعات وروی از پورت سریال

          سلام، ممنون دوستان،

          یه راه ساده تر پیدا کرد... حواسم نبود که EM-18 یه پایه Select داره که برای ارتباط RS232 باید به یک وصل بشه.
          برای رفع مشکل زمانی که وارد روتین وقفه تایمر می شم، یکی از پایه های میکرو رو که به پایه Select ، EM-18 وصل کردم، صفر می کنم و قبل از خروج از وقفه و مجددا یک...
          در اینصورت EM-18 دیگه داده ای روی خط دریافت سریال میکرو قرار نمی ده که مشکلی پیش بیاد...

          با تشکر از شما به خاطر همفکریتون
          همیشه بزرگوار تر از آن باشید که برنجید
          و نجیب تر از آن باشید که برنجانید!

          دیدگاه


            #6
            پاسخ : رخداد همزمان چند وقفه و اشتباه شدن اطلاعات وروی از پورت سریال

            نوشته اصلی توسط جعفری
            سلام، ممنون دوستان،

            یه راه ساده تر پیدا کرد... حواسم نبود که EM-18 یه پایه Select داره که برای ارتباط RS232 باید به یک وصل بشه.
            برای رفع مشکل زمانی که وارد روتین وقفه تایمر می شم، یکی از پایه های میکرو رو که به پایه Select ، EM-18 وصل کردم، صفر می کنم و قبل از خروج از وقفه و مجددا یک...
            در اینصورت EM-18 دیگه داده ای روی خط دریافت سریال میکرو قرار نمی ده که مشکلی پیش بیاد...

            با تشکر از شما به خاطر همفکریتون
            اگر مازول بافر دارد مشکل را حل کردید وگر نه صورت مسئله را پاک کردید.!
            از جمله ی رفتگان این راه دراز
            باز آمده ای کو که به ما گوید راز
            هان بر سر این دو راهه از روی نیاز
            چیزی نگذاری که نمی آیی باز

            دیدگاه


              #7
              پاسخ : رخداد همزمان چند وقفه و اشتباه شدن اطلاعات وروی از پورت سریال

              نوشته اصلی توسط meerkat
              اگر مازول بافر دارد مشکل را حل کردید وگر نه صورت مسئله را پاک کردید.!
              این اتفاق شاید در زمانی کمتر از یک دهم ثانیه رخ بدهد و من فقط برای اطمینان از عدم بروز مشکل، این مسئله رو در نظر گرفتم. ضمن اینکه در صورتیکه میکرو کارتی رو نخونه بازری هم به صدا در نمیاد و فوقش کاربر دوباره کارت رو می کشه... خیلی بده این طورری؟؟؟ :icon_razz:
              همیشه بزرگوار تر از آن باشید که برنجید
              و نجیب تر از آن باشید که برنجانید!

              دیدگاه

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