اِیویآر (به انگلیسی: AVR)، خانوادهای از ریزکنترلگرهای جدید است که شرکت اتمل، آن را روانهٔ بازار الکترونیک کرده است. این ریزکنترلگرهای هشت بیتی به خاطر دارا بودن قابلیت برنامهنویسی توسط کامپایلر زبانهای برنامهنویسی سطح بالا، مورد توجه قرار میگیرند. این ریزکنترلگرها از معماری ریسک برخوردارند. همچنین شرکت اتمل کوشیدهاست تا با استفاده از معماری پیشرفته و دستورهای بهینه، حجم کد تولید شده را پایین آورده و سرعت اجرای برنامه را بالا ببرد. یکی از مشخصات این نوع ریزکنترلگرها دارا بودن ۳۲ ثبات همه منظوره است. همچنین در این ریزکنترلگرها، از حافظههای کم مصرف و غیر فرار فلش و ایایپیرام استفاده میشود.
کامپایلرهایی به زبان بیسیک و C که زبانهایی پرکاربردی در دنیا محسوب میشوند: برای این نوع ریزکنترلگرها طراحی شدهاست. البته در حال حاضر استفاده از کامپایلر بسکام BAScom که نسبت به زبان c بسیار راحت تر و سریع تر عمل میکند جایگزین زبان c شده است. همچنین زبان اسمبلی را نیز میتوان برای برنامهنویسی به کار برد. برای نمونه کامپایلر بسکام با زبان بیسیک برای برنامهنویسی این نوع از ریزکنترلگرها میتواند به کار رود. همچنین نرمافزار CodeVision، برای برنامهنویسی به زبان CC (سازگار با این ریزکنترلگرها) بسیار رایج است (البته این برنامه بیشتر میان کاربران ایرانی رواج دارد، در میان کاربرهای خارجی کمتر دیده شده و بیشتر از برنامهٔ رسمی شرکت Atmel استفاده میشود).
پیشینه
میکروکنترلر ایویآر در سال ۱۹۹۶ توسط شرکت اتمل ساختهشد. معماری ریزکنترلگر توسط Alf-Egil Bogen و Vegard Wollan دانشجویان دانشگاه صنعتی نروژ طراحی شد. واحد میکروکنترلگر اصلی ایویآر در خانه ASIC محلی تروندهایم نروژ که Nordic VLSI نامیده میشد (اکنون Nordic Semiconductor) جایی که Vegard و Bogann به عنوان دانشجو فعالیت میکردند طراحی گردید.
شرکت اتمل میگوید نام ایویآر یک مخفف نیست به نام خاصی اشاره نمیکند. سازندگان ایویآر پاسخ مشخصی به این پرسش ندادند. اما به هر صورت به نظر میرسد که این نام مخفف (به انگلیسی: Alf (Egil Bogen) and Vegard (Wollan)'s RISC processor) است.
انواع ریزکنترلگرهای AVR
میکروکنترلرهای خانواده AVR بر اساس معماری ماشین تعدیل شدهٔ هاروارد (Modified Harvard) میباشد، جایی که برنامه اصلی میکروکنترلر و اطلاعات ذخیره میگردد در فضایی جداگانه و با آدرسهای جدا از همدیگر میباشند اما میکروکنترلرهای آی وی آر قابلیت خواندن اطلاعات را از حافظه برنامه با استفاده از دستوارت مخصوصی دارا میباشد.
خانوادههای اصلی AVR
- TinyAVR - سری ATtiny
- ۰٫۵–۱۶ کیلوبایت حافظه برنامه
- بستهبندی ۶–۳۲ پایه
- لوازم جانبی محدودتر
- megaAVR - سری ATmega
- ۴–۵۱۲ کیلوبایت حافظه برنامه
- بستهبندی ۲۸–۱۰۰ پایه
- راهنماهای بیشتر
- لوازم بیشتر
- classic AVR (از نظر امکانات بین دو گروه بالا) مثل AT90S8535
- Xmega - سری ATxmega
- ۱۶–۳۸۶ کیلوبایت حافظه برنامه
- بستهبندی ۴۴-۶۴-۱۰۰ پایه
- بهبود کارکرد
- لوازم جانبی زیاد به دلیل وجود ADCها
- AVR کاربرد خاص
- مانند سری MegaAVR اما با ویژگیهای افزوده مانند کنترلر کنترلر ال سی دی، کنترلر USB و ...
- FPSLIC (اِی وی آر همراه با مدار مجتمع دیجیتال برنامهپذیر)
- مدار مجتمع دیجیتال برنامهپذیر ۵هزار تا ۴۰هزار گِیت
- حافظه SRAM برای کد برنامه اِی وی آر
- هسته اِی وی آر تا ۵۰ مگاهرتس
- AVR 32 بیت
در سال ۲۰۰۶ شرکت اتمل میکرو کنترلرهایی را ارائه نمود که اساس معماری آنها ۳۲ بیتی (AVR32) بود، که این سری از میکروکنترلرها شامل یک دستور چند داده(SIMD) و پردازشگر سیگنال دیجیتال(DSP) بود که به تنهایی قادر به پردازش صدا و تصویر میباشند. این میکروکنترلرهای ۳۲ بیتی به منظور رقابت با ریزپردازندههای بر اساس معماری ARM تولید شد، دستورالعملهای این میکرو بر اساس معماری هستههای RISC میباشد، در حالی که به هیچ وجه دستوارت میکروکنترلرها AVR32 و هیچکدام از میکروهای ARMM یکی نمیباشد.
فهرست مطالب:
تایمر کانتر صفر
معرفی تایمر کانتر صفر و رجیسترها
رجیستر کنترلی تایمر کانتر صفر
بیت های کنترلی
رجیستر تایمر کانتر صفر
پیکره بندی تایمر کانتر صفر در محیط BASCOM
پیکره بندی در مد تایمر
پیکره بندی در مد کانتر
مثال تایمر
مثال کانتر
مثال تایمر با وقفه
معرفی تایمر کانتر یک و رجیسترها
رجیستر کنترلی A
بیت های رجیستر کنترلی A
رجیستر کنترلی B
بیت های رجیستر کنترلی B
مثال
رجیستر خروجی مقایسه ای A
رجیستر خروجی مقایسه ای B
رجیستر ورودی Capture
تایمر کانتر یک در حالت PWM
پیکره بندی تایمر کانتر یک در محیط BASCOM
پیکره بندی در حالت تایمر
مثال
پیکره بندی در حالت کانتر
مثال
پیکره بندی تایمر کانتر در مد مقایسه ای
کانتر یک و مد مقایسه ای
تایمر یک و مد مقایسه ای
طرز کار با وقفه تطابق مقایسه
مثال
کانتر یک و مد Capture
تایمر یک و مد Capture
مثال وقفه Capture
پیکره بندی تایمر کانتر یک در حالت PWM
مثال
تایمر کانتر دو
رجیسترها
رجیستر کنترلی
مثال
رجیستر خروجی مقایسه ای
تایمر کانتر دو در حالت PWM
پیکره بندی تایمر کانتر دو در محیط BASCOM
پیکره بندی در مد تایمر
مثال
و...
پاورپوینت کامل و جامع با عنوان پیکره بندی تایمر ها (Timer) و کانتر ها (Counter) در میکروکنترلر AVR در 90 اسلاید