سلام استاد وقتتون بخیر.
این کد رو روی میکرو پروگرم میکنم عینا همونطوری که شما توی فیلم انجام دادین.ولی گاهی با یک بار زدن btn ،حلقه دو بار اجرا میشه،در واقع وقتی دیباگ کردم وقفه رو دو بار اجرا کرد.یعنی 6 ثانیه چشمک زن بود.این کد خودش مگه بلاکینگ نیست؟چرا وقفه رو دوبار اجرا میکنه.
و اینکه sub priority کجا کاربرد داره دقیقا؟وقتی preemption ها یکی باشه،حتی اگه sub ها رو متفاوت بذاریم بازم اولویتی ایجاد نمیشه،توی فیلم هم همین اتفاق برای کد خودتون افتاد.
و اینکه توی refrence manual ی جدول نشون دادین برای اولویت وقفه ها،که مثلا نشون میاد وقفه خارجی 0 به 1 اولویت داره،1 به 2 و تا 4 همینطور.همچنین وقفه های 5 تا 9 توی یک اولویت هستن.من ی کد زدم و کلید ها رو
exti809×293 24.7 KB
برای وقفه خارجی 0 و 1 اجرا کردم.اما هیچ اولویتی نسبت به هم نداشتن و بعد از اتمام چشمک زدن هر کدوم بعدی شروع میکرد.این جدول هم ممنون میشم بفرمایید دقیقا چی میگه و کجا کاربرد داره
با تشکر
این کد رو روی میکرو پروگرم میکنم عینا همونطوری که شما توی فیلم انجام دادین.ولی گاهی با یک بار زدن btn ،حلقه دو بار اجرا میشه،در واقع وقتی دیباگ کردم وقفه رو دو بار اجرا کرد.یعنی 6 ثانیه چشمک زن بود.این کد خودش مگه بلاکینگ نیست؟چرا وقفه رو دوبار اجرا میکنه.
و اینکه sub priority کجا کاربرد داره دقیقا؟وقتی preemption ها یکی باشه،حتی اگه sub ها رو متفاوت بذاریم بازم اولویتی ایجاد نمیشه،توی فیلم هم همین اتفاق برای کد خودتون افتاد.
و اینکه توی refrence manual ی جدول نشون دادین برای اولویت وقفه ها،که مثلا نشون میاد وقفه خارجی 0 به 1 اولویت داره،1 به 2 و تا 4 همینطور.همچنین وقفه های 5 تا 9 توی یک اولویت هستن.من ی کد زدم و کلید ها رو
exti809×293 24.7 KB
برای وقفه خارجی 0 و 1 اجرا کردم.اما هیچ اولویتی نسبت به هم نداشتن و بعد از اتمام چشمک زدن هر کدوم بعدی شروع میکرد.این جدول هم ممنون میشم بفرمایید دقیقا چی میگه و کجا کاربرد داره
با تشکر

