میکروکنترلرAVR چیست؟
اِیویآر (AVR)، خانوادهای از ریزکنترلگرهای جدید است که شرکت اتمل، آن را روانهٔ بازار الکترونیک کردهاست. این ریزکنترلگرهای هشت بیتی به خاطر دارا بودن قابلیت برنامهنویسی توسط کامپایلر زبانهای برنامهنویسی سطح بالا، مورد توجه قرار میگیرند. این ریزکنترلگرها از معماری ریسک برخوردارند. همچنین شرکت اتمل کوشیده است تا با استفاده از معماری پیشرفته و دستور های بهینه، حجم کد تولید شده را کاهش دهد و سرعت اجرای برنامه را بالا ببرد. یکی از مشخصات این نوع ریزکنترلگرها دارا بودن ۳۲ ثبات همه منظوره است. همچنین در این ریزکنترلگرها، از حافظههای کم مصرف و غیر فرار flash و eeprom استفاده میشود. (ادامه توضیحات در ویکی پدیا)
کامپایلر کدویژن (codevision) :
این نرم افزار یک کامپایلر زبان برنامهنویسی C می باشد که برای برنامهنویسی میکروکنترلر های AVR از آن استفاده می شود. این نرم افزار محیط برنامهنویسی و کامپایل کردن کد های شما برای برنامه ریزی میکروکنترلر را فراهم می کند.
بسیاری از افراد، حتی کسانی که در حوزه کامپیوتر فعالیت می کنند، با این نرم افزار به خوبی آشنا هستند. آخرین نسخه این نرم افزار قدرت بسیار بیشتری پیدا کرد و از طرفی مشکلات قبلی آن برطرف شده است. این برنامه در تمامی نسخه های ویندوز قابل نصب است.
شروع برنامه نویسی با کدویژن:
در ابتدا باید تنظیمات اولیه میکرو را انجام دهیم. اگر به ریجیستر ها و توابع مورد نیاز AVR تسلط دارید باز هم پیشنهاد می کنیم از قابلیت کدویزارد که یکی از بخش های کدویژن است استفاده کنید. کدویزارد با استفاده از تنظمات گرافیکی که شما انجام میدهید تنظیمات اولیه میکرو را برایتان کدنویسی می کند و خیالتان از بابت کد های اولیه راحت می شود.
آموزش کدویزارد را در قالب 8 جلسه تصویری برایتان آمادهسازی کردیم و تمامی قسمت های کدویزارد را مورد برسی قرار دادیم.
جلسه اول (ایجاد پروژه در کدویژن و نحوه وارد کردن توضیحات در برنامه)
جلسه دوم (تنظیمات اسم میکرو – سرعت پردازش – وضعیت پایه های ورودی و خروجی – وقفه خارجی)
کلاس سوم (کاربرد تایمر ها – تنظیمات خروجی تایمر – وقفه تایمر – دوره زمانی پالس خروجی)
جلسه چهارم (ادامه تنظیمات تایمر ها – مود های کاری بیشتر تایمر – خروجی PWM از تایمر)
برای تمامی آموزش ها نمونه برنامه به همراه فایل شبیه سازی آماده کردیم
برای خرید و دانلود فایل نمونه برنامه ها کلیک کنید
کلاس پنجم (پیکربندی پورت سریال میکرو و روش های آسنکرون و سنکرون)
جلسه ششم (تنظیم مقایسه کننده آنالوگ – راه اندازی آپ امپ داخلی میکرو)
کلاس هفتم (تنظیمات رابط های میکرو – چهار سیم دو سیم تک سیم)
جلسه هشتم (تنظیمات نمایشگر های کارکتری و گرافیکی – تاچ خازنی)
برای تمامی آموزش ها نمونه برنامه به همراه فایل شبیه سازی آماده کردیم.
برای خرید و دانلود فایل نمونه برنامه ها کلیک کنید
مممنونم، خیلی مفید بود.
سلام خسته نباشید
در خصوص PWM چون تنظیمات OCR در قسمت پیکره بندی قرار دارد و تغییرات در ان یک مرتبه خوانده می شود .
ایا راهی هست که بشود مقدار OCR را در برنامه تغییر داد وتغییرات اعمال شود
سلام، تنظیمات کدویزارد صرفا برای راحتی تنظیم اولیه هست!!!
داخل برنامه در تابع اصلی void main میتونید تمامی رجیستر ها رو ویرایش کنید و تغییر بدید، همچنین داخل برنامه اصلی میتونید از این رجیستر ها استفاده کنین.
رجیستر OCR رو از طریق جستجو در صفحه کدویژن پیدا کنید و تغییر بدید!!
ممنون از پاسخ گویی تان ولی
فکر یخ میکرو باسخ شروع به کار یه بار متن کد رو چک میکنه (پیکره بندی) و بعد وارد حلقه while میشود و دایم در این حلقه در حال چرخش است و وقتی که من بخواهم دستور OCR در قسمت WHILE برنامه تغییر بدم چون این تنظیم ابتدا شروع به کار میکرو خوانده شده دیگر تغییرات روی اون تاثیر گذار نیست
(من این مورد تست کردم )
سلام مجدد ، بله حق با شماست رجیستر پیکربندی مقایسه تایمر (OCR) داخل حلقه اصلی قابل تغییر نیست و فقط یک مرتبه مقدار دهی میشود!!!
اما در مود fast PWM با مقدار دهی به این رجیستر دیوتی سایکل موج مربعی رو تغییر میدیم.