فیلم آموزش وقفه در STM32 – جلسۀ 4 آموزش STM32
در فیلم آموزش وقفه در STM32 به تشریح وقفۀ خارجی، راه اندازی آن در میکروکنترلرهای ARM STM32F1، وقفه نرم افزاری، Event و راه اندازی Event در STM32 می پردازیم.
۱۶۱,۰۰۰ تومان
تخفیف و هدیه
اخبار جدید یوبرد در اینستاگرام
آموزش های رایگان
لیست آموزش ها
زمان فیلم آموزشی | 1 ساعت و 42 دقیقه |
---|
رضا اسدی
دسترسی سریع
دانلود بلافاصله پس از پرداخت
راهنمای استفاده
پلیر اختصاصی، تنها Windows، یک سیستم
فیلم آموزش وقفه در STM32 جلسۀ چهارم فیلم آموزش ARM STM32 مقدماتی یوبرد است. اگرچه تئوری وقفه را در این جلسه بیان می کنیم، اما منظور ما از وقفه در اینجا، وقفۀ خارجی است. وقفه های واحدهای داخلی دیگر را، در جلسات مربوط به آنها تشریح می کنیم. در این جلسه وقفۀ خارجی میکروکنترلرهای STM32 سری F1 را مورد بحث و بررسی قرار می دهیم. منظور ما از میکروکنترلرهای STM32 سری F1 یا STM32F1، میکروکنترلرهای STM32F101/2/3/5/7xx است. وقفه یکی از امکانات مفید در میکروکنترلرهاست که CPU را از بررسی وقوع اتفاقاتی، خلاص می کند. در واقع وقفه فرایندی است که طی آن CPU از وقوع یک واقعه مطلع می شود، بدون آن که دائماً درگیر بررسی آن باشد. اگر وقفه ها وجود نداشته باشند، باید در برنامه وقوع اتفاقات را بررسی کنیم و CPU باید به طور دائم درگیر بررسی وقوع اتفاقات باشد. اما با استفاده از وقفه ها این کار لازم نیست. و به این صورت با وجود وقفه ها کارایی CPU افزایش می یابد. بنابراین وجود وقفه ها و به کارگیری آنها در پروژه ها اهمیت پیدا می کند. وقفۀ خارجی در میکروکنترلرهای STM32، در بسیاری از ویژگی ها، مشابه وقفه خارجی در میکروکنترلرهای AVR است. اما تفاوت هایی نیز وجود دارد که حین آموزش وقفه خارجی در STM32، به آنها می پردازیم. در وقفه های میکروکنترلرهای STM32 امکانات دیگری نیز وجود دارد. مثل تغییر اولویت وقفه ها و مباحث Preempt priority و Sub priority. و به طور کلی مباحث وقفۀ خارجی این میکروکنترلرها تا حدودی مشکل تر از وقفه خارجی در AVR است. بنابراین لازم دانستیم برای آموزش وقفه خارجی در STM32 جلسه ای را در نظر بگیریم. طبق روالی که از تجربۀ سال های گذشته به دست آورده ایم، ابتدا مقدماتی را بیان می کنیم. سپس تئوری وقفۀ خارجی میکروکنترلرهای STM32 را بررسی می کنیم و در نهایت نمونه کدهایی را بررسی می کنیم. در ادامه مباحثی را که در این جلسۀ آموزش میکروکنترلرهای ARM STM32 مقدماتی یوبرد آورده ایم، بررسی می کنیم.
فیلم آموزش میکروکنترلرهای AVR مقدماتی
جلسات آموزش STM32 بصورت مجزا قابل تهیه است:
- فیلم مقدمه آموزش STM32 – جلسۀ 1 آموزش STM32 (رایگان – 4 ساعت)
- فیلم آموزش GPIO در STM32 – جلسۀ 2 آموزش STM32
- فیلم آموزش کلاک و Reset در STM32 – جلسۀ 3 آموزش STM32
- فیلم آموزش وقفه در STM32 – جلسۀ 4 آموزش STM32
- فیلم آموزش ADC در STM32 – جلسۀ 5 آموزش STM32
- فیلم آموزش تایمر در STM32، مقدماتی – جلسۀ 6 آموزش STM32
- فیلم آموزش تایمر پیشرفته در STM32 – جلسۀ 7 آموزش STM32
- فیلم آموزش USART در STM32 – جلسۀ 8 آموزش STM32
- فیلم آموزش RTC در STM32 – جلسۀ 9 آموزش STM32
- فیلم آموزش DAC در STM32 – جلسۀ 10 آموزش STM32
پک های آموزش STM32:
جلسات پیشرفتۀ آموزش STM32:
همچنین:
تصویر 1 – آموزش وقفه در میکروکنترلرهای STM32F1
سرفصل های فیلم آموزش وقفه در STM32
موضوعات مورد بحث فیلم آموزش وقفه در STM32 عبارتند از:
- تعریف و مقدمۀ وقفه: در این بخش از جلسۀ چهارم فیلم آموزش ARM STM32 به تعریف وقفه و تئوری وقفه می پردازیم.
- اصطلاحات و عبارات مرتبط با وقفه و تئوری وقفه در میکروکنترلرها: مباحثی مثل منابع وقفه، روتین وقفه، بردار وقفه و اولویت وقفه ها را در این بخش از فیلم آموزش STM32 بررسی می کنیم. همچنین به سؤالات «چه چیزی باعث اتفاق افتادن وقفه می شود؟»، «CPU پس از اتمام دستورهای روتین وقفه، چطور به محل قبلی برنامۀ اصلی که در حال اجرای آن بود برمی گردد؟» و «روتین وقفه در کجا ذخیره می شود؟» پاسخ می دهیم. دربارۀ کاربرد کلی وقفه و وقفۀ خارجی، Program counter، پشته یا Stack، رجیستر وضعیت، اجرای روتین وقفه و در کل مراحل اتفاق افتادن و اجرای وقفه صحبت می کنیم.
- اولویت وقفه ها: ابتدا اشاره ای به اولویت وقفه ها در AVR می کنیم. سپس مباحث تئوری اولویت وقفه ها را در میکروکنترلرهای STM32F1 بررسی می کنیم. مباحث دیگر این بخش فیلم آموزش STM32 یوبرد، NVIC در میکروکنترلرهایی با CPUی Cortex-M3، مبحث Priority group و دو نوع اولویت Preempt و Sub هستند. (اولویت وقفه در میکروکنترلرهای STM32)
- فعال کردن وقفه ها و پرچم وقفه ها: در این بخش از آموزش ARM STM32، دربارۀ فعال کردن وقفه های میکروکنترلرهای AVR و میکروکنترلرهایی با CPUی Cortex-M3، مبحث NMI و MI و پرچم وقفه ها و پاک کردن/شدن آنها صحبت می کنیم.
- آموزش وقفه در میکروکنترلرهای ARM STM32 سری F1
- پایه های ورودی وقفۀ خارجی در این میکروکنترلرها
- شرایط اتفاق افتادن وقفۀ خارجی: که می تواند لبۀ بالا رونده، لبۀ پایین رونده یا هر دو لبۀ سیگنال ورودی باشد.
- روتین های وقفه خارجی در STM32F1
- تشریح رجیسترهای وقفۀ خارجی: این رجیسترها عبارتند از IMR و EMR و SWIER و RTSR و FTSR و PR.
- بررسی نمونه کدهای وقفه خارجی در STM32F1: شامل نمونه کد رجیستری وقفه خارجی در STM32، راه اندازی وقفه خارجی در STM32 با توابع HAL و مشاهدۀ نتیجۀ نمونه کدها در عمل.
تصویر 2 – بخشی از نمونه کد رجیستری وقفه خارجی STM32 و تصویری از بررسی عملی آن
- مروری بر پدیدۀ Bounce و Debounce نرم افزاری و سخت افزاری: که برای بهبود عملکرد وقفۀ خارجی در اتصال دکمه به پایۀ ورودی، باید Bounce روی ورودی را خنثی کنیم. در این بخش دربارۀ روش های نرم افزاری و سخت افزاری دیبانس صحبت می کنیم.
- وقفه نرم افزاری، رجیستر مربوط و نمونه کد وقفه نرم افزاری در STM32: در میکروکنترلرهای STM32 می توان با نوشتن در یک رجیستر، شرایط اتفاق افتادن وقفه را ایجاد کرد. در این بخش به تحریک نرم افزاری وقفۀ خارجی می پردازیم.
- آموزش Event در STM32، رجیسترهای مربوط و نمونه کد Event در STM32: که Event را تعریف و تفاوت وقفه و Event در STM32 را بررسی می کنیم. سپس رجیستر مربوط به آن و همچنین نمونه کدهای Event را توضیح می دهیم.
در فیلم آموزش وقفه در STM32، همۀ نکات و جزئیات را برای راه اندازی وقفه خارجی در STM32 تشریح کرده ایم. به طوری که دانش پذیر پس از مشاهدۀ آن و تمرین نمونه کدها، خود می تواند وقفۀ خارجی میکروکنترلرهای STM32 را راه اندازی کند.
پیش نمایش – اولویت وقفه ها در میکروکنترلرهای ARM STM32