گیتی الکترونیک مبتکر ایرانیان (گاما)

طراحی و ساخت انواع پروژه های الکترونیکی صنعتی و دانشجویی 09137291125

گیتی الکترونیک مبتکر ایرانیان (گاما)

طراحی و ساخت انواع پروژه های الکترونیکی صنعتی و دانشجویی 09137291125

آموزش جامع میکروکنترلر AVR جلسه4

به نام خدا

آموزش جامع میکروکنترلر AVR جلسه4

موضوع این جلسه : تبادل اطلاعات به صورت سریال و موازی

این جلسه و احتمالا دو سه جلسه بعد مربوط به  یه موضوع جالب و شیرین! با عنوان انتقال اطلاعات هستش ، حالا تبادل اطلاعات بین دو (یا چند) میکروکنترلر با هم یا ارتباط میکروکنترلر با PC

آموزش جامع میکروکنترلر AVR جلسه4


 

  


انواع تبادل اطلاعات

ارسال و دریافت اطلاعات به دو روش کلی انجام می شود:

1) موازی  ( parallel)
۲) سری (serial)

در روش موازی اطلاعات n بیتی در n خط (پایه) انتقال داده می شود اما در روش سریال اطلاعات می تواند در یک خط یا دو خط ارسال گردد.

پس می توان نتیجه گرفت تبادل اطلاعات به صورت موازی با سرعت بیشتری نسبت به حالت سریال صورت می گیرد اما در فواصل طولانی تر تبادل اطلاعات به صورت موازی هزینه بر است و از طرفی نویز پذیری را بالا می برد و در ضمن یک رشته سیم موازی کنار هم در فواصل طولانی باعث ایجاد یک خازن مجازی شده و مقاومت خود سیم ها نیز بر کیفیت دیتا اثر خواهد داشت و البته پارامترهای دیگری نیز وجود دارد که از ضعف های تبادل اطلاعات به صورت موازی است اما روش سریال انتخاب مناسبی در صرفه جویی در تکنولوژی ساخت تراشه ها و کم کردن خطوط انتقال است.

تبادل (اطلاعات به صورت) موازی :

من خودم تا الان از این روش استفاده نکردم و علتش هم معلومه. pardon
ولی همون طور که در بالا بیان شد (  n بیتی در خط (پایه)   )   میشه نتیجه گرفت که تو این روش مثلا برا تبادل اطلاعات دو میکروکنترلر avr با هم همانند عکس زیر این دو رو به هم وصل میکنیم
و میکروکنترلر 1 (فرستنده) که مثلا قرار است اطلاعات بفرستد ، PORTC (الزامی ندارد که حتما PORTC باشد ) آن را به صورت خروجی تعریف میکنیم.( چون قرار است اطلاعات ارسال کند.)
و میکروکنترلر 2 (گیرنده) که مثلا قرار است اطلاعات بگیرد ، PORTC (الزامی ندارد که حتما PORTC باشد ) آن را به صورت ورودی تعریف میکنیم.( چون قرار است اطلاعات دریافت کند.)

حالا اگه مثلا  در میکروکنترلر 1  ، PORTC.0=1 شود آنگاه در میکروکنترلر 2 هم  PORTC.0=1 میشود.

میکروکنترلر avr

انواع تبادل سریال

از آنجایی که ارتباط سریال مزایای خوبی دارد انواع مختلفی از پروتکل های سریال ارائه شده است ، لذا می توان به صورت کلی خود تبادل سریال را نیز به دو قسمت تقسیم کرد:

۱) ارسال و دریافت اطلاعات سریال به صورت سنکرون( USRT )

در این روش دیتای مورد نظر بر روی یک خط همراه با یک خط کلاک همزمان کننده ارسال می شود و گیرنده نیز می تواند دیتا را بر روی یک خط توسط کلاک همزمان کننده که از طرف فرستنده ارسال می شود ، دریافت نماید. به طور مثال اطلاعاتی که Keyboard یا Mouse کامپیوتر به خروجی ارسال می کنند به همین روش می باشد.

میکرو کنترلرهای AVR در روش سنکرون می توانند به صورت چند پردازنده ای به شکل Master و Slave  (منظور همون فرستنده گیرنده هستش) کار نمایند.

این ویژگی فقط در بعضی از میکرو کنترلر های AVR حمایت شده است که البته ATmega16 قابلیت تبادل سریال در مد سنکرون را دارد.

2)  ارسال و دریافت اطلاعات سریال به صورت آسنکرون(  UART )

در این روش دیتای مورد نظر بر روی یک خط ارسال ( TXD ) یا یک خط دریافت( RXD ) منتقل می شود و به همراه دیتا کلاکی ارسال نمی گردد بنابراین به اصطلاح می گوییم فرستنده و گیرنده غیر همزمان عمل می کنند.

پس در چنین روشی باید دیتای مورد نظر با قالب بندی خاصی به صورت بیت به بیت با فواصل زمانی تعریف شده برای فرستنده و گیرنده منتقل شود ، که به این فواصل زمانی در این نوع ارتباط نرخ انتقال داده یا Baud rate گفته می شود.

از کاربردهای مهم این روش می توان به تبادل اطلاعات با کامپیوتر و میکروکنترلر های دیگر و یا تراشه های دیگر اشاره نمود.

به طور مثال می توان ارتباط با ماژول GSM ، ماژول GPS ، ماژول فرستده و گیرنده RF و… را از کاربردهای مهم این روش برشمرد.

3) ارتباط جانبی سریال ( SPI )

4) ارتباط سریال دو سیمه ( TWI )

دو روش بالا رو من تا حالا باهاشون کار نکردم و …. mosking

“دو روش بالا+ روش سنکرون” رو هم ما زیاد باهاش کاری نداریم و مطالب آینده مربوط به “ارسال و دریافت اطلاعات سریال به صورت آسنکرون” هستش.
البته یادشون بگیرید بد نیست ولی چون من فعلا قصد ندارم در پروژه هام از “این دو روش + روش سنکرون” استفاده کنم.
لذا توضیحشون هم نمیدم.(البته اگه خواستید میتونید به کتاب ” میکروکنترلر های AVR ، نوشته جابر الوندی” مراجعه کنید.)


سایر منابع : سایت دمرچیلو

نظرات 0 + ارسال نظر
برای نمایش آواتار خود در این وبلاگ در سایت Gravatar.com ثبت نام کنید. (راهنما)
ایمیل شما بعد از ثبت نمایش داده نخواهد شد