اطلاعیه

Collapse
No announcement yet.

مشکل در وقفه

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

    مشکل در وقفه

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

    #2
    پاسخ : مشکل در وقفه

    سلام دادا.
    از یه فیلتر پایین گذر برای وقفه استفاده کن. من توی کارای صنعتی غیر از pullup و یا pulldown و فیلتر پایین گذر، از یه اشمیت نیز استفاده می کنم.
    علت اصلی این تداخلات عمدتاٌ نویز های مربوط به بخش تغذیه است.
    تشکر لازم نیست!

    دیدگاه


      #3
      پاسخ : مشکل در وقفه

      نوشته اصلی توسط mohsen6265 نمایش پست ها
      ا سلام
      من یه برنامه ساختم که با فشار دادن یه دکمه از صفحه کلید، عدد مورد نظر رو ال سی دی نمایش داده بشه.
      با فشار دادن هر وکمه سیگنالی به پایه وقفه داده میشه و بعد برنامه به تابع سابروتین میره و کلید مورد نظر رو شناسایی و بعد روی ال سی دی نمایش میده و ....
      مشکل اینجاست وقتی برنامه رو روی برد بردامتحان میکنم بدون اینکه نیازی به فعال کردن پایه وقفه (B.2) برنامه به تابع سابروتین میره.
      کسی میدونه چرا؟ اگر اطلاعاتی که دادم ناقصه بگین تا کامل کنم.
      از صحبت شما اینطور برمیاد که : بدون اینکه وقفه برای اون پایه فعال بشه ، تابع مربوطه اش در هنگام تغییر ولتاژ اون پایه اجرا میشه
      یعنی برنامه درست کار میکنه ، در صورتی که نباید اینطور باشه
      ممکنه بطور پیش فرض ، وقفه برای بعضی پایه ها ست شده باشه
      باید تنظیمات اولیه میکروتون رو مطالعه کنید ، ببینید چه چیزهایی به طور پیش فرض فعاله

      دیدگاه


        #4
        پاسخ : مشکل در وقفه

        یادم رفت بگم اگه برنامه در واقع درست کار نمیکنه ، یعنی بدون زدن کلید ، تابع مربوطه اجرا میشه ،
        این یعنی نویز محیط ، وقفه رو فعال میکنه
        در این صورت فرمایش جناب iman-63 درسته که به مقاومتهای pullup اشاره کردن
        و با اینکار نویز محیط بی اثر میشه

        دیدگاه


          #5
          پاسخ : مشکل در وقفه

          نوشته اصلی توسط x935418 نمایش پست ها
          بدون اینکه وقفه برای اون پایه فعال بشه ،
          اول بهتر بود میگفتید میکروتون چی هست؟!
          در ثانی هر چی هم که باشه بدون فعال کرد وقفه برای اون پایه احتمال ورود به سابروتین صفر صفر است
          منظور فعال کردن بردار وقفه است نه تریگر شدن پایه مربوطه!
          احتمالا یه جایی توی کد اشتباه کردی، مخصوصا اگه از اشاره گرها به طور نامناسب استفاده کرده باشی!
          یه دور وقفه سراسری رو غیرفعال کن ببین چی میشه؟
          ... .
          یا اگه کدت کمه بذارش، بررسی بشه!
          جدیدترین ویرایش توسط ubub; ۱۲:۱۵ ۱۳۹۶/۱۱/۰۸. دلیل: تکمیل
          ◙◙◙◙◙ میخوام به دوستان یه کتاب معرفی کنم! وقت کردید، بخونید - اسمش هست قرآن، سال نشر 10، نویسنده: خدا . ◙◙◙◙◙

          دیدگاه


            #6
            پاسخ : مشکل در وقفه

            نوشته اصلی توسط ubub نمایش پست ها
            اول بهتر بود میگفتید میکروتون چی هست؟!
            در ثانی هر چی هم که باشه بدون فعال کرد وقفه برای اون پایه احتمال ورود به سابروتین صفر صفر است
            منظور فعال کردن بردار وقفه است نه تریگر شدن پایه مربوطه!
            احتمالا یه جایی توی کد اشتباه کردی، مخصوصا اگه از اشاره گرها به طور نامناسب استفاده کرده باشی!
            یه دور وقفه سراسری رو غیرفعال کن ببین چی میشه؟
            ... .
            یا اگه کدت کمه بذارش، بررسی بشه!
            دوست عزیز من استارتر تاپیک نیستم
            داشتم به ایشون توضیح میدادم
            احتمالا چونکه آی دی هردومون به عدد ختم میشه ، من رو با استارتر تاپیک اشتباه گرفتید !
            بله حق با شماست ، ایشون باید بیشتر توضیح بدن
            مثلا من هنوز متوجه نشدم منظورشون از جمله:
            "بدون اینکه نیازی به فعال کردن پایه وقفه (B.2) برنامه به تابع سابروتین میره"
            آیا یعنی بدون فعال سازی امکان وقفه روی پایه، تابع مربوطه اجرا میشه ، یا اینکه بدون وجود ورودی ، تابع مربوطه اجرا میشه ؟
            انشالله بیشتر توضیح بدن ، ما هم سعی میکنیم مشکلشون حل بشه

            دیدگاه

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