آشنایی با Xmega

saalek110

Well-Known Member
Spi


در مورد مزیت های واحد SPI در خانواده XMEGA نسبت به AVR های معمولی می توان به مواردی اشاره کرد. از جمله تعداد SPI های موجود که حداکثر آن در XMEGA سری A1 به تعداد 4 عدد SPI سخت افزاری روی پورت های C و D و E و F وجود دارند و هر یک بصورت مستقل می توانند عمل کنند. Bit Rate قابل تعریف در 8 مقدار مختلف می تواند قرار داده شود و این در حالی است که در سری mega64 و mega128 این عدد 7 مقدار مختلف است. ارتباط با DMA هم از مزیت های بارز SPI در XMEGA است که امکان یک ارتباط سریع و با حجم بالا با حافظه را برای ارسال و دریافت اطلاعات و بدون دخالت CPU فراهم می کند. واحد SPI تنها در مد Slave با DMA ارتباط برقرار می کند، اما برای ارتباط با DMA در مد Master می توان از قابلیت عملکرد USART به عنوان یک SPI در مد Master استفاده کرد و در این صورت ارتباط با DMA در این مد هم میسر خواهد بود.

TWI

از نظر تعداد تا 4 واحد TWI سخت افزاری در سری A1 وجود دارند که روی پورت های C و D و E و F قابل فعال سازی هستند. از نظر عملکرد هم مزیت هایی در خانواده XMEGA وجود دارد که از جمله مهمترین آن پشتیبانی از SMBus علاوه بر پشتیبانی از I2C است. SMBus یا System Management Bus، یک استاندارد ارتباطی است که علیرغم شباهت هایی که با I2C دارد، اما تفاوت هایی هم مانند محدوده ولتاژها، جریان کشی، محدوده فرکانس و پارامتر های زمان بندی بین ایندو استاندارد ارتباطی وجود دارد. در این آدرس توضیحاتی در مورد SMBus و تفاوتهای آن با I2C ارائه شده است.

در خانواده XMEGA با تنظیم رجیسترهای داخلی،هر دو استاندارد I2C و SMBus برای ارتباط پشتیبانی می شوند.

مزایای XMEGA

دو منحني مفيد براي درك بهتر مزاياي XMEGA از سايت atmel آورده شده است. در منحني اول نشان داده شده كه وجود DMA باعث مي شود عليرغم افزايش حجم مبادله اطلاعات، CPU از نظر بار پردازشي بسيار ديرتر به مرزهاي حداكثر خود نزديك شود. اين مسئله به اين دليل است كه وظيفه تبادل اطلاعات از دوش CPU برداشته مي شود و به عهده DMA گذاشته مي شود و بنابراين براي CPU اين فرصت بوجود مي آيد كه به انجام امور ديگر بپردازد.

منحني دوم تاثير وجود Event system را نشان مي دهد كه به علت ارتباط مستقيمي كه بين اجزاي مختلف و بدون دخالت CPU ايجاد مي شود و عليرغم پيچيده تر شدن عمليات انجام شده، زمان انجام آن مي تواند افزايش نيابد و بوسيله اين امكان سخت افزاري جبران سازي شود. اين امكان چيزي فراتر از بالاتر بردن كلاك است و افزايش سرعتي را كه در انجام عمليات ايجاد مي كند به مراتب مهم تر از افزايش كلاك سيستم است.



محدوده تغذیه

مقدار Vcc مجاز برای XMEGA بین 1.6ولت تا 3.6ولت است. اما فرکانس کلاک 32 مگاهرتز تنها از تغذیه 2.7ولت به بالا قابل دستیابی است. در محدوده1.8 ولت تا 2.7ولت حداکثر فرکانس کلاک مجاز بصورت خطی کاهش می یابد و در مقدار Vcc=1.8v این عدد به حداکثر 12MHz می رسد.در محدوده بین 1.6ولت تا 1.8 ولت هم مقدار حداکثر همان 12MHz باقی می ماند. به دلیل کمتر بودن Vcc از مقدار معمول 5 ولت، محدودیت هایی در مقادیر پورت ها در وضعیت های ورودی و خروجی بوجود می آید. در وضعیت ورودی، حداکثر مقدار مجاز برای اعمال به عنوان ورودی نباید بیشتر از Vcc+0.5v باشد. بنابراین اگر از یک رگولاتور 3.3 ولتی برای تغذیه IC استفاده شود، حداکثر مقدار مجاز برابر 3.8 ولت است و متصل کردن یک خروجی با مقدار 5 ولت به ورودی XMEGA، می تواند منجر به آسیب وارد شدن به آن شود. ساده ترین راه برای حل این مشکل استفاده از یک تقسیم مقاومتی و یا در شرایط پیشرفته تر استفاده از IC های Level converter است.

در وضعیت خروجی هم مطابق منحنی های ارائه شده برای XMEGA از طرف کارخانه سازنده و در صورتی که جریانی از خروجی کشیده نشود، مقدار high خروجی پورت برابر Vcc و مقدار Low آن برابر صفر خواهد بود. در صورت جریان کشی هم مقدار high کمتر از Vcc ومقدار Low بیشتر از صفر خواهد شد(مطابق منحنی های ارائه شده ). کمتر بودن مقدار خروجی high از 5 ولت در اتصال به IC های جانبی، در صورتی که از تغذیه ای مانند 3.3 ولت استفاده شود، در اکثر موارد مشکلی بوجود نمی آورد. زیرا اکثر IC هایی که با تغذیه 5 ولت کار می کنند، 3.3 ولت را به عنوان high می شناسند. اما در غیر این صورت و همچنین در صورت استفاده از مقادیر پائین تر Vcc، استفاده از Level conveter اجتناب ناپذیر است.

منبع:

 

جدیدترین ارسال ها

بالا