آموزش میکروکنترلر XMEGA – قسمت اول;
این سری آموزشها که به جرات می توان آنها را کاملترین آموزشهای موجود دانست با صرف هزینه زیاد و با کیفیت و جزییات بالا توسط استاد ارجمند جناب آقای کینژاد تهیه شده است و به صورت رایگان در اختیار عموم قرار گرفته است .
سیسوگ در سری جدید مجموعه مقالات با عنوان آموزش میکروکنترلر XMEGA قصد دارد میکروکنترلر XMEGA که قابلیت های بسیاری دارد را آموزش دهد. در مجموعه آموزش میکروکنترلر XMEGA با سیسوگ همراه باشید. در این قسمت مقدمه ای از میکروکنترلر XMEGA بیان میکنیم.
با توجه به قابلیت های قدرتمند و توانمندی که در XMEGA وجود دارد و علی رقم اینکه CPU موجود در XMEGA همان CPU موجود در AVR است، اما کلاک آن تا حد 32MHZ افزایش پیدا کرده و استفاده از آن مرسوم شده است.
در بعضی از کاربردها تا دو برابر این مقدار، قابلیت OVER CLOCK تجربه شده است و مسئله مهم تر اضافه کردن دو قابلیت DMA و EVEN SYSTEM است، که معنای دیگری به کلاک 32MHZ می بخشد و توانمندی XMEGA را افزایش می دهد. در ادامه به صورت عملی این موضوع را پیگیری می کنیم تا مشخص شود که DMA و EVEN SYSTEM می توانند چه نقشی در کم کردن بار پردازشی CPU بازی کنند.
در چنین شرایطی به همراه سخت افزار های جانبی و قابلیت های قدرتمندی که در XMEGA پیش بینی شده است که بعضاً در خیلی از موارد حتی با رقبایی از خانواده های بالاتر و دارای CPU های 32b یا حتی فراتر از آنها رقابت میکنند. در چنین شرایطی ما این انگیزه را پیدا میکنیم که با XMEGA فعالیت کنیم.
به دلیل قابلیت های توانمندی که در آن XMEGA وجود دارد، جوابگوی بسیاری از پروژه های صنعتی که در آینده انجام میدهیم است.
قابلیت های XMEGA
1-در بخش آنالوگ ADC 12b با حداکثر 2 میلیون سمپل بر ثانیه و DAC 12b با حداکثر 1 میلیون سمپل آنالوگ بر ثانیه در خروجی
2-قابلیت آپدیت آنالوگ در خروجی 1میلیون بار در ثانیه
3-دارای حداکثر 4 خروجی DAC
4-دارای چهار مقایسه کننده آنالوگ
5-در بخش دیجیتال قابلیت های بسیار خوبی از جمله TIMER COUNTER ها را دارد، که تایمر کانترهای غنی با خروجیهای PW متعدد و امکان اضافه کردن واحد های دیگر در سر راه تایمر را میتوان در کاربردهای کنترل موتور و سوئیچینگ مورد استفاده قرار داد.
6-امکان افزایش فرکانس کلاک PWM برای دقت های بالای PWM تا حد 256MHZ (از طریق واحد HIGH RESOLOTION EXTENTION)
7-ماژول های SPI و TWI و USART که تا 12SPI درحالت مستر ،4SPI در حالتSLAVE ،4TWI ،8USART
8-قابلیت پشتیبانی سخت افزاری از انکودر ها و شفت انکودرها
و ….
با توجه به این توانایی ها و قابلیت ها، میتوان از XMEGA به طور مستقیم در صنعت استفاده کرد.
چهار چوب آموزش بر اساس برنامه نویسی C و در محیط برنامه نویسی ATMEL STUDIO است، به این دلیل که شرکت ATMEL آن را به صورت رایگان در اختیار برنامه نویسان قرار داده است و از شماره های جدید نیز پشتیبانی میکند و دیگر نیازی به استفاده از نرم افزار های کرک شده نیست.
سخت افزار مورد آموزش، برد آموزشی است که در سایت www.knowledgeplus.ir قرار گرفته است و میتوان PCB و مدار آن را ساخت.
پروگرامر اصلی AVR ASPMK2 است که به دلیل پشتیبانی شرکت ATMEL و قابلیت update در نسخه های بالاتر میتواند گزینه مناسبی باشد.
در حال حاضر هیچگونه کتاب و منبع مرجعی در مورد آموزش XMEGA به جز دیتاشیت ها و manualها وجود ندارد. سعی داریم با این مقالات بتوانیم اطلاعات مفیدی در اختیار کسانی که مایل به آموزش XMEGA هستند قرار دهیم.
برای شروع در مورد خانواده XMEGA ،شماره های این IC را مورد بررسی قرار میدهیم:
در ابتدای تمام IC های XMEGA ،ATXMEGA و در مرحله بعد ظرفیت فلش بر حسب کیلوبایت نوشته شده است.
برای مثال ATMEGA 32 به این معنا است که 32 کیلوبایت حافظه فلش دارد. در حال حاظر ظرفیت موجود برای این فلش از 8 کیلوبایت تا 384 کیلوبایت است. (َATXMEGA 8 الی ATXMEGA 384).
زیر خانواده های این IC شامل A,B,C,D,E,AU هستند که در ادامه ظرفیت فلش می آید و در ادامه آن اعداد 1,3 ,4,5 که نشان دهنده تعداد پین های IC است. برای نمونه به مثال زیر توجه کنید:
ATXMEGA 128 A 1
اگر بعد عدد،کلمه U قرار بگیرد یعنی IC از سری AU است برای مثال:
ATXMEGA 128 A 1 U
تعداد پین ها بر اساس عدد قرار گرفته به صورت زیر است:
1=100
3=64
4=44
5=32
البته باید توجه داشته باشیم که برای همه این ترکیبات IC وجود ندارد. برای اطلاع از موجود بودن این ترکیبات باید به سایت ATMEL مراجعه نمود و از فهرست تمام IC های موجود مطلع شد.
دو شماره استثنایی به صورت زیر وجود دارد:
ATXMEGA256A3B که از سری A هست ولی از ورژنی هست که یک پین مخصوص برای باطری BACK UP و فعال بودن RTC در صورت قطع بودن تغذیه دارد.
ATXMEGA256A3BU که از سری AU هست و دارای 256KB حافظه فلش ،64 پین و همچنین باطری BACK UP است.
در ادامه ممکن است حروفی وجود داشته باشد که نشان دهنده نوع پکیج IC باشد. مثل –AU زیرا همه شماره های XMEGA از نوع TQFP نیستند. لازم به ذکر هست که همه شماره ها و همه سری های XMEGA به صورت SMD هستند و از نوع DIP وجود ندارند.
مبنای کار در این آموزش ATMEGA64 A3 است، که در برد آموزشی نامبرده از آن استفاده شده است و البته قابل تعویض با ATMEGA64 A3U ،ATMEGA128 A1 و ATMEGA128 A1U نیز هست. ولی به دلیل راحتی و فاصله پایه کافی مبای کار را ATMEGA 64 A3 قرار میدهیم.
- آموزش میکروکنترلر XMEGA – قسمت دوم – مقدمه
- آموزش میکروکنترلر XMEGA – قسمت سوم – رجیسترهای پورت
- آموزش میکروکنترلر XMEGA – قسمت چهارم – نحوه ایجاد پروژه و کامپایل و پروگرام کردن آن در AtmelStudio + دو مثال
- آموزش میکروکنترلر XMEGA – قسمت پنجم – مدهای ورودی و خروجی پورتها
- آموزش میکروکنترلر XMEGA – قسمت ششم – رجیستر های پورت
در قسمت دوم آموزش میکروکنترلر XMEGA یکسری مباحث کلی در مورد این خانواده را بیان خواهیم کرد. با سیسوگ همراه باشید.
سلام برای شروع چه هدربرد یا مدل خاصی از این میکرو را تهیه کنیم؟
امم هدر برد که هرکدوم رو دوست داشتید میتونید استفاده کنید ولی در مورد مدل خاص میکرو اجباری وجود نداره
هر کدوم در دسترس هست میتونید تهیه کنید. تقاوت در میزان حافظه و البته لیست پرفرال ها است که چندان مهم نیست.
ممنون سایت شما راحت قابل دسترسی است مطلبی را هم که توضیح میدهید عالیه متشکرم
ممنون از حمایت های شما
عالی بود. ادامه بدید
خواهش میکنم دوست عزیز
باید از اقای کی نژاد برای این مطالب عالی تشکر کرد
لطفا اگر میشه مقایسه ای بین قابلیت های ایکس مگا و میکرو های سری آرم انجام دهید
و اینکه آیا درسته که تولید ایکس مگا قراره متوقف بشه و سری های جدید ازش تولید نشده؟
در مورد این که میکروی Xmega قراره متوقف بشه یا نه اطلاع دقیقی ندارم ولی به نظر بعد میآد ؛ همچنان میکروکنترلر 8051 در حال تولید هست به نظر بعیده که این میکروکنترلر با چنین قابلیت هایی تولیدش متوقف بشه
در مورد مقایسه فکر میکنم مقایسه منصفانه ای نباشه چون سری xmega 8 بیتی است و آرم 32 بیتی ! ولی بی شک سری xmega به لحاظ پرفال موجود توی میکروکنترلرها کم نظیر هست