خانه / آموزش میکروکنترلرهای AVR / آشنایی با سخت افزارهای داخلی میکروکنترلرهای AVR – بخش 1

آشنایی با سخت افزارهای داخلی میکروکنترلرهای AVR – بخش 1

آشنایی با سخت افزارهای داخلی میکروکنترلرهای AVR – بخش 1

برای آشنایی به میکروکنترلر AVR, باید اول امکانات این تراشه را بشناسید و بعد از آشنایی آن بدانید که این خصوصیات در کدام نوع و مدل از تراشه ها استفاده شده است. در ادامه به این خصوصیات پرداخته شده است. شکل زیر نمایی کلی از یک تراشه AVR را به تصویر کشیده است که در مورد قسمت های پر کاربرد آن بحث خواهیم کرد.

آشنایی با سخت افزارهای داخلی میکروکنترلرهای AVR

سرعت پردازش

سرعت پردازش اطلاعات یا فرکانس کار سیستم در واحد MIPS و MHZ (مگاهرتز) که بین 0 تا 20MHz متغییر است.

تعداد دستورالعمل

قابلیت اجرای چندین دستورالعمل در یک کلاک سیکل

رجیستر

رجیستر منبع ذخیره ای 8 بیتی که به صورت زیر تعریف می شود:

| Bit 7 | Bit 6 | Bit 5 | Bit 4 | Bit 3 | Bit 2 | Bit 1 | Bit 0 |

نکته : کم ارزش ترین بیت با صفر شروع می شود (1=0^2)

تمامی میکروکنترلرها دارای 32 رجیستر 8 بیتی (R0 تا R31) هستند که همگی اکومولاتور بوده و با CPU به طور مستقیم در ارتباط اند.

حافظه FLASH

تراشه های AVR دارای حافظه ای برای نوشتن برنامه و قابل برنامه ریزی داخلی است, حافظه FLASH در میکروکنترلر AVR دارای قابلیت 10.000 بار نوشتن و پاک کردن می باشد. برای دسترسی به این حافظه از پروگرامر استفاده می شود. این حافظه قابلیت قفل شدن داشته که در قسمت نرم افزار با آن آشنا می شوید.

حافظه EEPROM

حافظه ای که می توان برای نگه داری بانک اطلاعاتی از آن استفاده کرد و قابل برنامه ریزی داخلی است, این حافظه در تراشه AVR دارای قابلیت 100.000 مرتبه نوشتن و پاک کردن می باشد. برای دسترسی به این حافظه همم از پروگرامر استفاده می شود و هم در برنامه می توان اطلاعات را به آن وارد کرد. قابلیت حفاظت در مواقعی که برنامه ای جدید را در FLASH پروگرام می کنید را داراست.

حافظه SRAM

حافظه SRAM یک RAM استاتیک بوده و بر خلاف رجیسترها به صورت مستقیم از طریق CPU قابل دسترسی نیستند. بیشترین استفاده SRAM در پشته (Stack) است.

پورت های I/O

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

ولتاژ کاری

مقدار ولتاژ تغذیه که نسبت نوع تراشه بین 1.5 تا 5.5 و یا 2.7 تا 5.5 و 4 تا 5.5 ولت متغییر بوده است.

نکته : هر چه ولتاژ کاری کمتر باشد, به همان نسبت فرکانس کار میکرو محدود است.

نکته : شماره میکروکنترلرهایی که در آخر آن ها حرف L قرار گرفته, ولتاژ و فرکانس کاری پایین دارند. به عنوان مثال میکروکنترلر ATmega8L.

SPI

ارتباطی با پروتکل سریال – پر سرعت – سه سیمه که برای عملیات هایی همچون پروگرام و برنامه ریزی کردن حافظه های FLASH و EEPROM و یا ارتباط با یک میکروکنترلر دیگر به صورت SLAVE-MASTER مورد استفاده قرار می گیرد. پین های مورد استفاده برای این ارتباط به صورت زیر است:

آشنایی با سخت افزارهای داخلی میکروکنترلرهای AVR

UART

ارتباطی سریال و قابل برنامه ریزی که پین های مورد استفاده آن در دو حالت نرم افزاری و سخت افزاری قابل تغییر است. این ارتباط بیشتر برای ارتباط با کامپیوتر طراحی شده اما منطق کار این ارتباط TTL بوده, در صورتیکه ورودی سریال کامپیوتر از استاندارد RS-232 استفاده شده است. برای این کار باید از تراشه های مبدل سطح ولتاژ استفاده شود.

نکته : سطح ولتاژ در منطق TTL بین 0 تا 5V بوده و در پروتکل RS232 بین 15V- تا 15V+ می باشد.

نکته : پایه های مورد استفاده این ارتباط در میکروکنترلرهای AVR به نام TXD و RXD می باشد.

WIRE INTERFACE – I2C

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

آشنایی با سخت افزارهای داخلی میکروکنترلرهای AVR

نکته : پین های مورد استفاده این پروتکل در میکروکنترلرهای AVR به نام SCL و SDA می باشد.

 موسسه خیریه حمایت از کودکان مبتلا به سرطان

 دسته اصلی : آموزش میکروکنترلرهای AVR

 نویسنده : electronics98

 تاریخ انتشار :

2 دیدگاه

  1. عالی بود . کاملترین منبع آموزش avr هست . من همه جا دنبال آموزش فیوز بیتها بودم فقط تو این سایت در موردش توضیح داده شده . خیلی ممنون

  2. خواهش می کنم , نظر لطف شماست دوست عزیز که با نظرات خوبتان باعث دلگرمی ما می شوید.

پاسخ دهید

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

مطلب پیشنهادی

I2C-AVR

آموزش برنامه نویسی پیشرفته BASIC – ارتباط سریال I2C

آموزش برنامه نویسی پیشرفته BASIC – ارتباط سریال I2C پایه های مورد استفاده پروتکل I2C …