مقدمه آموزش میکروکنترلر AVR
میکروکنترلرهای AVR چندسالی هست که در کاربردهای دانشجویی ، آزمایشگاهی و صنعتی جای خود را گرفتن و در ایران هم به عنوان پرکاربرد ترین میکروکنترلر تا این تاریخ هستن و البته میکروکنترلرهای بروزتری مانند ARM و میکروکنترلرهای صنعتی تری مانند PIC هم در بازار ایران پرکاربرد هستن ولی میکروکنترلرهای AVR بیشتر در دانشگاه های ایران تدریس می شوند و از این روز بیشتر پروژه های دانشجویان بر مبنای میکروکنترلرهای AVR هستن.
مطالب مرتبط : آموزش های ARM
مطلب مرتبط برای آموزش میکروکنترلرهای PIC : آموزش PIC
حداقل اجزا لازم برای ارتباط CPU با دنیای خارج
- حافظه ROM : شبیه به FLASH در AVR برای ذخیره برنامه نوشته شده و ثابت ها
- : RAM ذخیره موقت نتایج عملیات CPU
- : EEPROMشبیه به Flashاما متفاوت ( 1- ذخیره سازی اطلاعات تولیدی توسط کاربر 2- تعداد دفعات خواندن/ نوشتن مشخص و موجود در دیتاشیت )
مطلب مرتبط :انواع حافظه های پرکاربرد
تفاوت میکروپروسسورها و میکروکنترلرها
- میکروپروسسورها در حقیقت همان پردازنده ها میباشند و فاقد اجزا و واحدهای جانبی میباشند، درحالیکه میکروکنترلرها دارای اجزا و واحدهای جانبی بسیار (مانند : تایمرها، حافظه ها ، ADCها و …) میباشند.
- پردازنده ها دارای سرعت اجرای بیشتری در “دستور العمل بر واحد زمان” میباشند.
- میکروکنترلرها عمدتا برای کنترل فرآیندها مورد استفاده قرار میگیرند، در حالیکه پردازندهها برای اجرای عملیات پردازشی مورد استفاده قرار میگیرند.
- دقت در میکروکنترلرها بر خلاف پردازندهها در سطح بیت وجود دارد.
انواع میکروکنترلرها
- G8xx : Motorola
- PIC : Microchip
- 8061 : Intel
- AVR : ATMEL و : ARMمتداولترین میکروکنترلرها در بازار ایران
- NXP : LPC ARM
- و ده ها شرکت دیگر
مزیت میکروکنترلرهای AVR : توان انجام محاسبات ریاضی و مثلثاتی با سرعتی بالاتر نسبت به پردازندههای قدیمیتر 8بیتی
نکته مهم : شرکت اتمل توسط شرکت میکروچیپ خریداری شده و از این رو به احتمال زیاد در این به بعد لوگوی میکروچیپ را روی میکروکنترلرهای Avr خواهیم دید.
تقسیم بندی AVR
- سری ATTINY AVR : ابعاد کوچک، توان مصرفی کم، تعداد پایه ها کم، فرکانس کاری پایین، حداقل ویژگی ها
- سری کلاسیکAT90 : ابعاد متوسط، توان مصرفی متوسط ، تعداد پایه ها متوسط ، فرکانس کاری نسبتا وسیع قابلیت معمولی
- سری ATMega بزرگترین ابعاد، بیشترین پایه، بیشترین مصرف انرژی، منبع فرکانسی بیشتر، حداکثر قابلیت
- سری XMega با قابلیت های بیشتر نسبت به ATMega و بهبود مشخصات
زبان برنامه نویسی میکروکنترلر
- Low-level : اسمبلی ، دانش فنی بالاتر – نزدیک به سطح سخت افزار، مفهومی مفید، دارای استفاده کننده های خاص و کاربردهای ویژه.
- High-level : بیسیک و ، C دانش فنی محدودتر – نزدیک به زبان کاربر
مطلب مرتبط :بهترین زبان های برنامه نویسی
معماری پردازنده ها
- CISC یا Complex Instruction Set Computing تعداد دستورالعمل های زیاد و پیچیده، برنامه نویسی ساده، سرعت اجرای پائین
- RISC یا Reduced Instruction Set Computing تعداد دستورالعمل های کم و ساده، برنامه نویسی پیچیده، سرعت اجرای بالا
مطلب مرتبط : معرفی معماری RISC در پردازنده های ARM
مروری بر روی سخت افزار میکروکنترلرهای AVR ATMega
- Flash SRAM EEPROM
- Clock CPU Watch Dog Timer
- Interrupt
- Controller
- ADC AC
- Timer
- SPI USART
- JTAG GPIO
- TWI
منابع Clock
- اسیلاتور داخلی مبتنی بر مدار ، RC ناپایدار
- اسیلاتور داخلی با RCخارجی
- اسیلاتور داخلی با اتصال کریستال رزوناتور
- اسیلاتور داخلی با اتصال کریستال فرکانس پایین
- اسیلاتور خارجی
نکته مهم : انتخاب منبع توسط تنظیم فیوزبیتها به کمک پروگرمر خارجی انجام می شود.
فیوزبیت چیست؟
به دسته هایی از اتصالات و سوئیچ های سخت افزاری که برخی قابلیت ها را برای میکروکنترلر سلب یا فراهم می کند گفته میشود.
تفاوت کریستال خارجی و کلاک خارجی AVR
حداکثر Clock در AVR
حداکثر Clock در AVR برابر 16 MHz و در برخی خانواده ها تا 20 MHZ
بحث Overclock گارانتی عملکرد بخشهای مختلف توسط شرکت
سرعت اجرای دستورالعمل در AVR
سرعت اجرای دستورالعمل در فرکانس MIPS = Mega Instruction Per Second 16 MIPS : 16 MHz
نکته مهم : هدف از Clock ایجاد هماهنگی بین واحدهای مختلف درون CPUبرای اجرای عملیات
نکته مهم : کلاک در FPGA در محدوده GHz است. مطلب مرتبط: آموزش FPGA
انواع حافظه در میکروکنترلر AVR
: Flash -1سرعت بالات ،vهزینه پایینتر ، ظرفیت بالاتر ذخیرهسازی برنامههای اجرایی
: SRAM -2سرعت بالاتر، هزینه بالا، فرار ذخیره نتایج عملیات CPUو …
: EEPROM -3تأخیر زیاد، هزینه بالای نگهداری دادههای کاربردی که با قطع برق از بین نمیروند.
تقسیم SRAM به ناحیه های مختلف
- – رجیسترهای R0…R31
- – رجیسترهای I/O
- Date Stack
- – متغیرهای عمومی
- Hardware Stack
چندتا نکته در مورد حافظه ها :
- امکان افزودن SRAM خارجی در برخی از شماره ها
- برخی شماره ها SRAMندارند ()ATTiny 11
- ظرفیت SRAMبه صورت شماره در برخی از سری ها : /…ATMega 16/32
توان مصرفی در میکروکنترلر AVR
- محدوده تغذیه : معمولا 4.5 Vتا 5.5 Vدر ATMega16
- با پسوند L : مصرف توان کمتر، فرکانس کاری کمتر ، 2.8 V ، ATMega16Lتا 8MHz ، 5 V
- بدون پسوند L : مصرف توان بیشتر، فرکانس کاری بالاتر ، 4.5 V ، ATMega16تا 16MHz ، 5 V
- اخیرا سری Aترکیبی از مزایای هر دو سری
- برخی سری ها از 1.8 Vتا 5.5 V
- شماره ای موجود است با تغذیه ATTiny43u 0.7 V
- در کارهای صنعتی : 4 V : ATMega16/32 HVBتا 18 V؛ داری رگولاتور داخلی
میکروکنترلر AVR با محدوده ی دمایی گسترده : Automative AVR
GPIO یا I/O وجود آدرس منحصر به فردی در فضای SRAMبرای هر پایه I/Oکه در صورت نوشتن اطلاعات در این فضاها نتیجه به صورت سخت افزاری بر روی پایه مورد نظر منعکس خواهد شد.
Timer شمارش از طریق کلاک داخلی سیستم یا کلاک خارجی و یا تقسیم شده آنها. با سپردن عملیات زمانسنجی به واحد Timerمیتوان بار پردازشی CPUرا کاهش داد.
و امکانات خیلی بیشتر
دوستان عزیز بقیه مقاله آموزش میکروکنترلر AVR را بصورت PDF از لینک زیر دانلود ومطالعه کنید:
دانلود مقاله بصورت PDF و با حجم 10 مگابایت
منبع : جزوه میکروپروسسور دکــتر نعمتیان
اگر این نوشته برایتان مفید بود لطفا کامنت بنویسید.
بسیار عالی توصیح دادید ممنون