اطلاعیه

Collapse
No announcement yet.

وقفه خارجی؟؟؟

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

    وقفه خارجی؟؟؟

    سلام
    برای کار با وقفه خارجی GICRرا مقدار دهی میکنم ولی تو شبیه سازی با proteus مقدارش همیشه صفر می مونه خیلی عجیبه!!!
    مشکل از شبیه سازه یا من تو برنامه نکته ای یادم رفبه؟
    ممنون میشم راهنمایی کنید
    poweng

    #2
    پاسخ : وقفه خارجی؟؟؟

    سلام چه مراحلی رو برای فعال سازی وقفه طی می کنی
    روند آماده سازی وقفه رو بنویس
    شاید توی اون مسله داری
    با سی می نویسی یا اسمبلی؟؟؟

    :nerd:

    دیدگاه


      #3
      پاسخ : وقفه خارجی؟؟؟

      این طوری تابع تعریف میکنم:
      (interrupt [2] void external_int0(void
      روند آماده سازی هم به این شکله:
      SREG.7=1;
      GICR=0x40;
      MCUCR=0x03;
      poweng

      دیدگاه


        #4
        پاسخ : وقفه خارجی؟؟؟

        عملی هم جواب نداده؟؟؟

        دیدگاه


          #5
          پاسخ : وقفه خارجی؟؟؟

          امتحان نکردم
          poweng

          دیدگاه


            #6
            پاسخ : وقفه خارجی؟؟؟

            بله امتحان بکن این طوری بهتره

            دیدگاه


              #7
              پاسخ : وقفه خارجی؟؟؟

              tartibe meghdar dehi register ha mohem ast
              SREG.7=1; ra bad az GICR=0x40; va MCUCR=0x03; begzadid,be haman tartibi benevisid ke code wizard minevisad.

              دیدگاه


                #8
                پاسخ : وقفه خارجی؟؟؟

                یک مثال کاربردی از کار با وقفه های خارجی (آشکارساز عبور از صفر) همراه با فایل پروتئوس
                http://www.avr.ir/eca/Interrupt.rar
                There is nothing so practical as a good theory. — Kurt Lewin, 1951

                دیدگاه


                  #9
                  پاسخ : وقفه خارجی؟؟؟

                  با سلام
                  او تنظیماتی که دوستان اشاره کردن مربوط به وقفه شماره 0 با حالت لبه بالا رونده هستش
                  یعنی وقتی پورت مربوطه یه حالت 0 به یک داشته باشه وقفه فعال میشه بنابراین باید پورت رو به صورت
                  درست پیکربندی کنیم پورت مربوطه PD2 باید حالت ورودی داشته باشه (اگه لبه پایین رونده تنظیم شده بود باید پورت رو
                  با یه مقاومت pull up کنیم که میشه از مدار داخلی استفاده کرد )ولی در اینجا لبه بالا رونده مورد نظر بوده و باید یه مقاوت
                  pull down خارجی بزاریم تا مقدار default پورت به جای Z مقدار 0 باشه در نتیجه با اعمال 1 ما تغییر 0 به 1 را خواهیم داشت
                  بنابراین وقفه اتفاق میفته
                  تویه پیوست هم فایل نمونه اونو گذاشتم
                  فایل های پیوست شده

                  دیدگاه


                    #10
                    پاسخ : وقفه خارجی؟؟؟

                    سلام
                    ممنون از لطفتون
                    نمی دونم چرا ورود به این سایت سخته همش error میده من بعد از 5-6 روز تونستم بیام؟؟؟؟؟
                    poweng

                    دیدگاه

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