آموزش AVRآموزش میکروکنترلر هاآموزش ها

پردازنده و حافظه در میکروکنترلر AVR (آموزش AVR جلسه #3)

در این قسمت راجع به پردازنده میکروکنترلر AVR و سازماندهی حافظه میکروکنترلر AVR توضیح میدهیم.

لینک قسمت های قبل :

CPU چیست ؟

CPU مخفف (Centeral Proccessing Unit) به معنیه واحد پردازش مرکزی است.

سی پی یو ، اصلی ترین بخش و مغز میکروکنترلر است. وظیفه اصلی میکروکنترلر انجام عملیات های منطقی و ریاضی و محاسبه و مقایسه و ارسال دستور و … است .

به طور کلی ، همه عملیات های میکروکنترلر زیر نظر CPU انجام میشود. سی پی یو بخش های مختلفی دارد که در ادامه راجع به آن توضیح میدهیم.

بخش های CPU میکروکنترلر AVR

MCU :

MCU مخفف Master Control Unit است.

این واحد ، همه فعالیت های میکروکنترلر رو مدیریت میکند. یعنی روی داده ها عملیات انجام میدهد و ارتباط با حافظه و کنترل تجهیزات جانبی را بر عهده دارد.

آموزش AVR میکروکنترلر AVR
آموزش AVR میکروکنترلر AVR

میکروکنترلر های AVR از معماری هاروارد استفاده میکنند، در معماری هاروارد حافظه به دو قسمت حافظه برنامه و حافظه داده تقسیم میشود.

(RAM یعنی حافظه داده و ROM یعنی حافظه برنامه)

اگر میخواهید آردوینو را به صورت اصولی و پروژه محور (برنامه نویسی حرفه ای، ارتباط آردوینو با اندروید، ساخت ربات با آردوینو) یاد بگیرید، روی دوره آموزش آردوینو کلیک کنید.

در معماری هاروارد پهنای باند بیشتر است و به طور کلی میکروکنترلر ها با سبک هاروارد دستورات اجرایی رو به صورت RISC انجام میدهند. (RISC : Reduced Instruction Set Computer)

ALU :

ALU مخفف Arithmetic logic unit است. این واحد عملیات های منطقی و ریاضی را انجام میدهد مثل جمع و تفریق و …

عملیات های ALU به طور کلی به سه قسمت تقسیم میشوند :

  1. اعمال ریاضی
  2. اعما منطقی
  3. اعمال بیتی

در بعضی از انواع پیشرفته میکروکنترلر های AVR ، واحد ALU محاسبات پیشرفته را هم انجام میدهد.

همچنین اگر در مورد این مطلب سوالی داشتید در انتهای صفحه در قسمت نظرات بپرسید

حافظه میکروکنترلر AVR

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

  1. حافظه برنامه ROM
  2. حافظه داده RAM

ROM :

حافظه برنامه ، همان فضایی است که برنامه ای که نوشتیم را در آن میریزیم. میکروکنترلر های AVR دارای حافظه از نوع فلش هستند و این فضا هم به دو بخش تقسیم میشود:

  1. فضای برنامه کاربردی
  2. فضای بوت

به تصویر پایین نگاه کنید ، این تصویر حافظه داخلی فلش را نشان میدهد.

حافظه فلش میکروکنترلر
حافظه فلش میکروکنترلر

بیشتر حافظه فلش به فضای برنامه کاربری اختصاص داده شده و میتوانیم میزان فضای بوت را تنظیم کنیم.

RAM :

این فضا ، همان فضایی هست که سی پی یو برای عملیات های پردازشی از آن استفاده میکند.

همانطور که در تصویر پایین میبینید ، این فضا چهار بخش هست:

حافظه RAM
حافظه RAM
  1. ریجستر های عمومی : رجیستر های عمومی با اسم های R0-R31 شناخته میشوند.
  2. حافظه داده داخلی : یا همان SRAM بعد از تکمیل ظرفیت فضای رجیستر های عمومی سی پی یو ، برای انجام عملیات های پردازشی از واحد بزرگتری به نام SRAM استفاده میکند که قبلا توضیحاتشو دادیم.
  3. رجیستر های I/O : این رجیستر ها از مهم مهم ترین رجیستر های پردازنده هستند و هر کدامشان به یک طریقی استفاده میشوند.
  4. رجیستر های I/O توسعه یافته : در بعضی از میکروکنترلر های پیشرفته این نوع رجیستر وجود دارد.
  5. حافظه داده خارجی : این امکان هم در بعضی در میکروکنترلر ها وجود دارد و وقتی فضای حافظه اطلاعات (داده) پر شود بصورت جانبی از این حافظه میشه استفاده کرد.

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

محمد رحیمی

محمد رحیمی هستم. سعی میکنم در آیرنکس مطالب مفید را قرار دهم. مالکیتی بر مطالب ارائه شده ندارم. اکثر فعالیت بنده در زمینه ترجمه است. (در خصوص سوال در مورد این مطلب از قسمت نظرات همین مطلب اقدام کنید)

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

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