آموزش میکروکنترلر STM32F4 قسمت ششم : وقفه‌ها

آموزش میکروکنترلر STM32F4 قسمت ششم : وقفه‌ها

آموزش میکروکنترلر STM32F4 قسمت ششم : وقفه‌ها
آموزش میکروکنترلر STM32F4 قسمت ششم : وقفه‌ها

آموزش میکروکنترلر STM32F4 – قسمت ششم ;

در قسمت پنجم آموزش میکروکنترلر STM32F4 به سازمان دهی حافظه ، حافظه SRAM ، حافظه فلش  و حافظه فلش داخلی و خواندن و نوشتن در حافظه پرداختیم. در این قسمت از آموزش میکروکنترلر STM32F4 به مبحث وقفه‌ها می‌پردازیم. با سیسوگ همراه باشید.

 

وقفه‌ها

کنترلگرِ وقفه یِ برداریِ تودرتو که با NVIC نشان داده می‌شود بخشی در میکروکنترلر است که وظیفه کنترل وقفه‌ها را به عهده دارد. برخی ویژگی‌های آن این گونه است:

  • 82 کانال وقفه ماسک پذیر (به جز 16 وقفه FPU)
  • 16 سطحِ برنامه پذیر برای اولویت وقفه‌ها (با استفاده از 4 بیت)
  • تاخیر کم استثناء ها

همه وقفه‌ها شامل استثناء های هسته توسط NVIC کنترل می‌شوند. به کتاب راهنما برنامه نویسی PM0214 مراجعه کنید.

مقدار کالیبره کردن SySTick برابر 18750است که 1 میلی ثانیه پایه زمانی تولید می‌کند. در این حالت ساعت SySTick را باید برابر MHz 75/18 تنظیم کرد. (HCLK/8 که HCLK=150MHz)

 

کنترل‌گر وقفه‌های خارجی EXTI

این کنترل‌گر از 23 آشکارکننده لبه تشکیل شده است که برای درخواست‌های رویدادها و وقفه‌ها استفاده می‌شوند. هر خط ورودی را می‌توان به شکل جداگانه پیکربندی کرد. این پیکربندی شامل تنظیم برای رویداد یا وقفه و هم چنین رویداد تحریک آن، که لبه بالا رونده یا پایین رونده یا هر دو باشد است. هر خط می‌تواند به شکل جداگانه ماسک شود.

 

vector table for STM32F4

 

vector table for STM32F4

 

vector table for STM32F4

vector table for STM32F4

vector table for STM32F4

 

ویژگی‌های مهم وقفه خارجی

ویژگی‌های مهم کنترل‌گر وقفه خارجی این‌ها هستند:

  • SRAM1 و SRAM2 که در آدرس 0x2000 0000 نگاشته شده‌اند و توسط همه مسترهای AHB قابل دسترس هستند.
  • SRAM3 در آدرس 0x2002 0000 نگاشته شده و توسط همه مسترهای AHB قابل دسترس است.
  • حافظه جفت شده با پردازنده در آدرس 0x1000 0000 نگاشته شده و تنها توسط پردازنده و از طریق باس D در دسترس است.

 

نمودار بلوکی این کنترل‌گر به شکل زیر است:

 

نمودار بلوکی کنترل‌گر وقفه خارجی

 

در قسمت هفتم آموزش میکروکنترلر STM32F4 به تنظیمات و بارگذار بوت و حافظه مستعار خواهیم پرداخت. با سیسوگ همراه باشید.

حمایت از ه. مرادمند

خوشحال میشیم برای تداوم و کیفیت ما رو حمایت کنید.

0 نفر

پــــســنــدیـده انـد

توجه

دیدگاه ها

0 دیدگاه

پر بحث ترین ها

مسابقه دوم : چالش برنامه نویسی به زبان C

مسابقه اول سیسوگ (مسابقه اول: درک سخت افزار) انتقادهای زیادی رو در پی داشت تا جایی که حتی خودمم به نتیجه مسابقه...

Zeus ‌ Zeus ‌
  • 2 سال پیش

راه اندازی LCD گرافیکی Nokia 1661 و دانلود کتابخانه آن

LCD گرافیکی یکی از مهم ترین پارامترهای موجود در طراحی انواع مدارات الکترونیکی پیچیده و حتی ساده است ، نمایش وضعیت و...

Zeus ‌ Zeus ‌
  • 4 سال پیش

ریموت کدلرن و چکونگی دکد کردن آن به همراه سورس برنامه

ریموت کنترل امروزه کاربرد زیادی پیدا کرده است؛ از ریموت‌های درب بازکن تا ریموت‌های دزدگیر و کنترل روشنایی همه از یک اصول اولیه پیروی می‌کنند و آن‌هم ارسال اطلاعات به‌صورت بی‌سیم است....

Zeus ‌ Zeus ‌
  • 5 سال پیش

همه چیز درباره ریموت کنترل‌های هاپینگ

امنیت همیشه و در همه‌ی اعصار، مقوله‌ی مهم و قابل‌توجه‌ ای بوده و همیشه نوع بشر به دنبال امنیت بیشتر، دست به ابداعات و اختراعات گوناگونی زده است. ریموت کنترل یکی از این اختراعات است. در این مقاله، به بررسی امنیت انواع ریموت‌های کنترل خواهیم پرداخت....

Zeus ‌ Zeus ‌
  • 5 سال پیش

مسابقه سوم: استخراج داده از رشته ها در زبان C

نزدیک به 5 ماه از مسابقه دوم سیسوگ می‌گذره و فکر کردم که بد نیست یک چالش جدید داشته باشیم! البته چالش‌ها...

Zeus ‌ Zeus ‌
  • 2 سال پیش

مسابقه ششم: بزن میکروکنترلر را بسوزون!

بزنم میکروکنترلر را بسوزونم اونم تو  این شرایط!، طراحی مسابقه از اون چیزی که به نظر می‌رسه سخت‌تر است، باید حواست باشه...

Zeus ‌ Zeus ‌
  • 11 ماه پیش

آموزش قدم به قدم راه اندازی +NRF24L01

آموزش قدم به قدم راه اندازی +NRF24L01  با کتابخانه سازگار با انواع میکروکنترلرها و کامپایلرها قبل از اینکه قسمت بشه با ماژول...

رسول خواجوی بجستانی رسول خواجوی بجستانی
  • 3 سال پیش

ساخت ماینر با FPGA و ARM

چند ماهی هست که تب بیت کوین و ارزهای دیجیتال خیلی بالا رفته! چه شد که این پست را نوشتم همانطور که...

Zeus ‌ Zeus ‌
  • 3 سال پیش

کار با ماژول تمام عیار mc60 – قسمت دوم – راه اندازی OpenCPU

در قسمت اول به یکسری اطلاعات کلی ماژول mc60 پرداختیم، با نرم افزار QNavigator کار کردیم و یک هدربرد هم برای کار...

Mahdi.h   Mahdi.h  
  • 3 سال پیش

مسابقه چهارم: کدام حلقه سریع‌تر است؟

حدود ۷ ماه پیش، مسابقه سوم سیسوگ رو برگزار کردیم و کلی نکته در مورد خواندن رشته‌های ورودی را بررسی کردیم. فکر...

Zeus ‌ Zeus ‌
  • 1 سال پیش
سیـــســـوگ

مرجع متن باز آموزش الکترونیک