آموزش وقفه های خارجی PIC

در ادامه مجموعه آموزش های میکروکنترلر PIC توسط کامپایلر CCS C ، در این قسمت به نحوه ی برنامه نویسی برای وقفه های خارجی میکروکنترلر که کاربرد زیادی در سرعت بخشیدن به عملکرد برنامه دارد می پردازیم.

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

شکل زیر مدار لازم را برای شبیه سازی را نشان می دهد. کلید Up به پایه RB1 یا وقفه شماره 1 برای افزایش عدد روی سون سگمنت و کلید Down به پایه ی RB2 به وقفه شماره 2 متصل شده است و برای کاهش عدد روی سون سگمنت به کار می رود.

1

تنظیمات انتخاب میکروکنترلر و تنظیم کلاک را مطابق جلسات قبل انجام می دهیم. مشابه برنامه جلسه دوم، تنظیمات پایه های I/O را مطابق شکل زیر انجام می دهیم.

2

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

3

با زدن دکمه create project کدهای پروژه شامل کدهای بخش های روتین وقفه شماره 1 و 2 تولید می شود. کدهای زیر را که مشابه کدهای جلسه دوم است وارد می کنیم.

مطلب پیشنهادی:  آموزش mikroC PRO for PIC

تفاوت اصلی این برنامه با برنامه جلسه دوم در چگونگی مطلع شدن از فشرده شدن کلید می باشد. در برنامه جلسه دوم در حلقه ی while دائما بررسی می کنیم تا اگر کلید فشرده شد، کدهای لازم اجرا شود ولی در این برنامه نیازی به این بررسی وجود ندارد و در صورت فشرده شدن کلیدها، روند اجرای برنامه به بخش متناسب با وقفه ایجاد شده منتقل می شود و کدهای نوشته شده برای فشرده شدن کلید اجرا می شود.

4

برنامه را کامپایل کرده و در محیط نرم افزار پروتئوس شبیه سازی می کنیم.

5

سوال: حساسیت وقفه (حساس به سطح یا حساس به لبه) چگونه است؟

امیدوارم این بخش هم برای شما مفید باشد. اگر سوالی داشتید در بخش نظرات مطرح کنید.

اگر این نوشته‌ برایتان مفید بود لطفا کامنت بنویسید.

مطالعه دیگر جلسات این آموزش<< جلسه قبلی                    جلسه بعدی >>

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *