صفحه 1:
USART
ارتباط سریال
صفحه 2:
ارتباط سریال:
در ارتباط سریال, اطلاعات به صورت بيت به بيت ارسال مى شود يعنى در از سال 8 بيت
اطلاعات: هر بيت بايك كلاك يللس ارسال مى شود. اما در ارتباط موازی, اطلاعات در یک کلاک
يالس ارسال مى شود. يس سرعت ارتباط موازى از ارتباط سريال بيشتر است.
در ارتباط سریال, براى ارسال به دو سيم احتياج داريم:
866۵۱۷6 0۵1۵)661( تفايرد-١
۲-ارسال(۲(61) 0312 ۲۲۵۳5۳0/6
صفحه 3:
ارتباط سريال:
در ارتباط موازی به ازای هر بیت. از یک سیم استفاده می شود, لذا در ارتباط موازى حجم و هزينه افزايش بيدا
می کند.
ارتباط سریال
Serial گیرنده
ارتباط موازی
Parallel گیرنده
صفحه 4:
ارتباط سریال:
Usart elgil
۱53۲۲ 2-5۳۴۱ 3-۲۷۷۱
انواع ارتباط سریال:
۱-ارتباط ۲۲۱016۱ |9(یک طرفه): فرستنده فقط ارسال و گیرنده دریافت می کند.
۲-رتباط 0166 لم](دو طرفه): هر دستگاه هم می تواند فرستنده و هم گیرنده باشد.
۲2۵ -۲۱۵۱۲: ایسا و دریافتهم مان صورتف میگبرد.
۴۱0-0۱۵06 ایسللم دریافتبه صورتهم زمانمیت_ولند صورتب كيرد.
میکروکنترلر های ۸٩۷٩ دارای ارتباط سریال از نوع 016 0۷1]-| لا هستند.
Micro A Micro B (OR
1 RX
Transmi 8 2 Receive
t RX 1X
Receive .سس - Transmi
t
صفحه 5:
ارتباط سریال:
ارتباط سریال به دو صورت سنکرون (15/۵/۹7ا) و آسنکرون(۲ ۸۴( انجام می شود. در روش سنکرون در هر
بلوک می تولند تعدادی دادهلیک بلیت) و یا کاراکتر ارسال کرد. اما در روش آسنکرون در هر ارسال یک داده(یک
بایت) یا کاراکتر ارسال می شود.
برای ارسال هر داده یا کاراکتر. یک بلوک 81061(یا ۳۲2۲06) داده ارسال می شود که به صورت زیر است:
i الل
Vin)
coe | sf} فنع لمم مدر زه
AMA
St Start bit always low.
(n) Data bits (0 to 8).
P Parity bit. Can be odd or even,
Sp Stop bit always high.
IDLE No transfers on the communication line (PxD or TxD). An IDLE line must be
high,
صفحه 6:
ارتباط سریال:
ابیت شروع(01 pho Oy op! aS (Start در نظر گرفته می شود.(خط ارسال صفر می (og
۲-بیت های داده(15/ا 2313]) بعد از شروع دارد ارسال می شود. ارسال داده ها از بیت کم ارزش(8ها) تا
بیت پر ارزش(8 ۷15 به ترتیب انجام می شود.
بیت توازن(010 ۳۵۲۱۲۷) در آشکار سازی خطا حین ارسال کمک می کند. استفاده از این بیت اجباری
۴بیت پایان([0 6100) که این بیت مع ay تم 7 بت
های پایان می تواند ۱ يا ۲ بیت باشد.
foot tsp2h (St/ IDLE) ۳ | ۱8 |۱۱۲۱ + |[ 3 | 2 ۰1۰۱ / ۱ عاها)
St Start bit always low.
(n) Data bits (0 to 8).
P Parity bit. Can be odd or even,
Sp Stop bit always high.
IDLE No transfers on the communication line (FxD of TxD). An IDLE line must be
high.
صفحه 7:
ارتباط سریال:
* اتصال دو میکرو:
* برای ارسال اطلاعات. از معیار ۵6 88۱00 (سرعت ارسال اطلاعات) یا نرخ ارسال جهت تعیین سرعت
استفاده می شود که بر حسب 005 بیان می شود که بیانگر تعداد بیت های ارسالی در هر ثانیه است.
* بایستی نرخ ارسال در فرستنده و گیرنده به صورت مساوی تنظیم شود. در غیر این صورت اطلاعات به درست
منتقل نمی شود.
Micro 1 Micro 2
TX -———> RX
غ8 دس RX
صفحه 8:
ارتباط سریال در میکرو های AVR
ارتباط سریال در میکروکنترلر های ۸۵۷ از نوع 15/۲ است.
Universal synchronous and A synchronous serial reviser and
transmitter
این پروتکل(] ]5/۸ لا) برای ارسال از میکرو به کامپیوتر و بالعکس تعریف شده است و دارای خواص زیر است:
۱-ارتباط دو طرفه به صورت ۱0۱6 اابا۴
۲رتباط سنکرون و آسنکرون
۴-ارسال داده به صورت ۵ ۶ ۷ ۸و ٩ بیتی.
۴-تولید و ارسال بیت توازن(/۳8۲12) به صورت زوج یا فرد.(برای تشخیص خطا)
۵ارسال بیت پایان(یک يا دو بیت)
#-ارسال وقفه به ميكروكنترلر در هنكام ارسال يا دريافت.
صفحه 9:
ارتباط سریال در میکرو های ۸۷۲:
برای برقراری ارتباط سریال ميان میکروکنترلر و کامپیوتر از استاندارد 85232 استفاده می شود.
در کامپیوتر کانکتوری ٩ پین(089]) وجود دارد که با منطق 5232 کار می کند.
در استاندارد 35232 صفر منطقی معادل 25۷ 3-9 و یک منطقی معادل -۳ 25۷- «< است(در کامپیوتر
۰ به صورت -13۷ و مقدار۱ به صورت +۱۳ ولت است.)
صفحه 10:
ارتباط سریال در میکرو های ۸۷۲:
در کانکتور 089 پایه شماره ۲ برای 26۲0 و پایه شماره ۳ برای ۲260 و پایه 26621 برای کلاک های
سنکرون است.
در میکروکنترلر پایه ۴105 مربوط به دریافت(0]() و پایه ۳01 مربوط به ارسال(۲(6]0) است.
به علت یکسان نبودن منطق 5232و ۲1 آ(متفاوت بودن سطح ولتاز) برای اتصال میکروکنترلر به کامپیوتر
بایستی از تراشه واسط که عمل تبدیل ولتاژ را انجام می دهد. استفاده کرد.
صفحه 11:
ارتباط سریال در میکرو های AVR
بلوک دیاگرام ارتباط سریال دارای ۴ بخش اصلی زیر است:
۱-پالس ساعت که مشخص کننده سرعث ارسال و دریافت است.
۲-قسمت گیرنده((6)
۳-قسمت فرستنده(۲()12)
۳ ۳
عم | ۰۶ Feet ههام زیم
mo (۰۶۸ /طاصاحاع[ه] med ek
صفحه 12:
رجیستو های پورت سریال:
پورت سریال دارای رجیستر های زیر است:
UDR-1 برای ارسال و دریافت داده
۱۲
۱۳
UCSRC-¥
سه رجیستر بالا بیان کننده مشخصات ارتباط سریال هستند.
8۲۳-۵ ا: مشخص کننده سرعت ارسال است.
صفحه 13:
رجیستو های پورت سریال:
چگونگی ارسال در ارتباط سریال:
برای ارسال داده ۸ بیتی, ابتدا در رجیستر ٩1لا نوشته می شود. يقت دهنده انتقال پیدا
مى كند و داده به صورت بيت به بيت تبديل مى شود و از طریق بايه 1013 ارال می شود
الل هيب سامخ
Receiv \ s/o] [ener Transm
it
e
صفحه 14:
نحوه ی دریافت در ارتباط سریال:
در كيرنده. اطلاعات به صورت
داده, اطلاعات در رجیستر 28
به بیت در رجیستر شیفت دهنده دریفت شده و پس از دريافت کامل فریم
Te ود
۱سرجیستر ورودی-خروجی داده( 0 لا):
Universal I/O Data Register
این رجیستر برای ارسال و دریافت داده استفاده می شود. این رجیستر دارای دو بافر ۹268و ۲265 است.
اطلاعات دریافتی ذخیره می شود. RXB در
در 7268 اطلاعات ارسالی نوشته می شود.
Be 7 0 5 4 3 2 1 °
oR (reas)
و Fr cry
Readwite RW ا FAY
inital Value 0 3 9 9 0 3 0 0
صفحه 15:
نحوه ی دریافت در ارتباط سریال:
به محض اینکه اطلاعات در ثبات ما لا نوشته شد. در صورتی که قسمت فرستنده ۱15/۵۴۲ فعال شد.
اطلاعات مذکور به ثبات شیفت دهنده ارسال. منتقل می شود و از طریق پایه ۲260 به صورت سری(یک بیت
یک بیت) ارسال می گردد.
ددع
مسج جهن
ue (wt)
Readwite RWW A ۳۷ ۳۷۷ 7۷ 77۷ FWY
Initial Valse. 3 0 3 0 0
صفحه 16:
نحوه ی دریافت در ارتباط سریال:
۲-رجیسترهای کنترل وضیت 058۵۰۱16588 لاو ۱0658:
USART Control and Statuse Register X
لين ثبات ها برای کنترل و مشخص نمودن طرز کار با پورت سری به کار برده می شود. مثلابا لین ثبات ها می
توان 15/۲ را در حللت سنکرون» آسنکرون قرار داد. تعداد بیت های تبادل اطلاعات را مشخص کرد وقفه را
فعال یا غیرفعال کرد و.-
صفحه 17:
۲-رجیسترهای کنترل وضعیت 5۵۰۱6558 لاو 58 ۱:
* ۱-۲-رجیستر کنترل وضعیت 25۳۵ لا:
USART Control and Status Register X +
* این ثبات شامل بیت های پرچم دریافت و ارسال و بیت های پرچم وقوع خطاست.
Bit 7 6 5 4 3 2 1 °
LAC Te ما ات
ReadWote ۳ 5۷ ۳ ۳ ۳ ۳ 0000 RW
Initial Value 0 0 1 0 0. 3 0. 0
صفحه 18:
۲-رجیستر کنترل وضعیت 25۳۸۵ ا:
بیت 8۱66
بيت يرجم دريافت كامل 25115 (USART Receiver complete)
زملنی که اطلاعات سری به بافر دریافت ثبات ٩1لا رسیده و در آن قرار گرفت. آن وقت بیت پرچم دریافت
اطلاعات کامل یک کاراکتر برابر ۱ می شود. یک شدن 22661]به معنای حاضر بودن اطلاعات دریافتی UDR jo
است. اگر اطلاعات UDR ots jo نباشد. بيت يرجم RXC برابر صفر است.
بيت TXC
بیت پرچم پایان ارسال کامل کاراکتر(60۳0۵۱616 ۲۲۵۴6۳1۲ 15۸۵۴۲
هنگامی که یک کاراکتر در ثبات بافر الا از طریق پایه 1260 ارسال شد. آنگاه بیت پرچم ارسال TXC
برابر با یک می شود(1 :)۲26 که نمایانگر پایان ارسال کاراکتر است.
0 0 2 3 4 5 6 2
عع ۱ امم | [re ee
RAW ۳ 5 5 AW RW ت00
0 0 0 0 0 1 0 ه Wiel Vee
Bit
صفحه 19:
۲-رجیستر کنترل وضعیت 25۳۸۵ ا:
بيت هللا
بيت يرجم خالى بودن ثبات داده(/ا 110/1 1ع156 و85 0388 817مولنا)
زملنى كه بيت 2] لا برابر یک شود نشلنه این است که ثبات بافر ارسال *]2](ا خللی است و آماده دریافت
اطلاعات جدید است.
FE cu
(Frame Erroryie> پرچم
موقعی که بیت پایان در انتهای کاراکتر برابر ۰ باشد. یعنی اطلاعات یک بلیت تکمیل نشده لذا بیت خطای ۴۶
برابر یک می شود.(1 <۳۶) زملنی که اطلاعاتی در ثبات 1125۳ نوشته می شود. لین بین صفر نوشته می
شود.
5 2 جه هو هم ره 4 0
لت [wore [Fe] bon] Fe] ar] ron] ucsna
۲۷۰ 5۲۳۳-۳۳۲۳۹۲۲
8 ان[
صفحه 20:
۲-رجیستر کنترل وضعیت 25۳۸۵ ا:
DOR بيت
زملني که بافر دریافت پر باشد و کاراکتر جدیدی بخواهد ارسال شود.(یعنی بیت شروع صفر شود) Saye coal y9
DOR=1 4 خطای ۳۲ 0۷6۲ 2312 داده می شود. موقعی که اطلاعات در ثبات angi UCSRA
می شود. اين بيت صفر نوشته مى شود.
PE co
(Parity Error). 5) cles يرجم
اگر بیت توازن دریافتی اشتباه باشد. ۳ برابر یک می شود. در موقع نوشتن sal Ly cae gal Jade UCSRA
ضفر نوشت:
ea
Read Write
Initial Value
صفحه 21:
۲-رجیستر کنترل وضعیت 25۳۸۵ ا:
U2X بيت
(Double The USART Transmission Speed) Jl) ce a» g2,5 ply 99 oe
با يك كردن اين بيت سرعت ارسال؛ ۴ برابر می گردد. در حالت سنکرون اين بیت صفر است.
MPCM 2.
(Mulit-Proccessor Communication mode) jy.05. ye حالت
وقتی اين بيت يك شود یعنی حالت مولتی پروسسور استفاده می شود. اتصال چند میکروکنترلر به صورت سریال
این مد کاربرد قارف
صفحه 22:
۲-رجیستر کنترل وضعیت 25۳۳5 ا:
رجیستر کنترل وضعیت 5۴ لا:
این ثبات برای فعال کردن وقفه و de کردن فرستنده و گیرنده است:
2
I
ucsAs
ReadWite AW AW RW ۷ 7
ماهلا نها 0 0 0 0 0 0 °
IRXCIE cw
(RX Complete Interrupt Enableyest ,» 4885 50,5 بيت فعال
با يك كردن اين بيتء در صورتی که بیت پرچم دریافت :۹(66] در ثبات eS ay woh & ply UCSRA
فعال شده باشد. آن وقت وقفه دریافت اطلاعات فعال می شود.
صفحه 23:
۲-رجیستر کنترل وضعیت 25۳۳5 ا:
TXCIE cn
(TX Complete Interrupt Enable) ju. بیت فعال کردن وقفه
با يك كردن اين بيتء در صورتی که بیت پرچم ارسال :۲266 در ثبات 15۳۹/۸ برابر یک باشد. وقفه کلی
فعال شده باشد. آن وقت وقفه ارسال اطلاعات فعال می شود.
بیت ۱۱98۱۴:
بیت فعال کردن وقفه در حالت خالی بودن ثبات داده 2٩۱۶ لا:
با یک کردن این بیت اگر بیت پرچم خالی بودن ثبات داده 218۴ (ا) در ثبات 5۹لا برابر یک باشد و وقفه
کلی فعال شده باشد. آنگاه وقفه خالی بودن ثبات داده فعال است.
it
هومن سس ۲
ReadWrte 7 aw RWW
Inia مهن 0 0 0 0 0 0 3 6
صفحه 24:
۲-رجیستر کنترل وضعیت 25۳۳5 ا:
بيت RXEN
بیت فعال کردن گیرنده(۳۵0۱6 (RX
برای فعال کردن قسمت گیرنده پورت سری 115/۱۲ بایستی بیت ۵262 را برابر یک کرد. در این حالت پایه
۳۵612 آماده دریافت اطلاعات می وشد.
TXEN cy
بيت فعال كردن ارسال Transmit Enables
برای فعال کردن قسمت فرستنده پورت سرى 5181لا بايستى بيت 126110 را برابر يك كرد. در اين حالت
يايه TXD آماده ارسال اطلاعات می شود.
it 7 6 5 4 3 2 1 0
۹
RW AW RW RW RWW ۳ mw تهج
Inia Valve 0 0 0 0 0 0 ۰ 0
صفحه 25:
۲-رجیستر کنترل وضعیت 25۳۳5 ا:
UCSZ2 =.
تعداد بیت های یک کاراکتر(5126 0۳3۲۵616۲
بيت 6522لا در رجیستر 658۹8 لا, بیت های ۱0521 و 6520لا در ثبات 05186 لا تعداد بیت های کای
کاراکتر را مشخص می کنند.
بیت 82688: (نهمین بیت دریافت)
هنگامی که تبادل اطلاعات ٩ بیتی انتخاب شود. در این صورت بيت 11088 نهمين بيت كاراكتر دريافتى خواهد بود.
بیت 2488 ۲: (نهمین بیت ارسال)
اگر تبادل اطلاعات ٩ بیتی باشد. ۲2688 نهمین بیت کاراکتر ارسال خواهد بود.
it
ReadWrite
Inia! Value 0 0 0 0 0 0 6.
صفحه 26:
۴۲-رجیستر کنترل وضعیت) 5 لا:
رجیستر کنترل وضعیت ۱050
با اين ثبات. سنکرون يا آسنکرون بودن, تعداد بیت ارسالی و فعال بودن بیت توازن را مشخص می کنیم.
Bit 7
¢ 5 4 موی هو هو
] 7۳:۳ [7 1 orm_] urmo_] uses] uceri | vest | vcroL] vcsne
لاس۲۳ سد
٩ تسه و « fm تس Wm تن
بیت URSEL
(USART Mode Selectysts انتخاب
را برابر یک قرار می دهیم. Ce cal gos cee WS UCSRC ets b oS Gl;
صفحه 27:
۲-رجیستر کنترل وضعیت )25۳ ا:
JUMSEL بیت
انتخاب حالت سنکرون یا آسنکرون( اگر این بیت صفر باشد حالت آسنکرون انتخاب می شود و اگر ۱ با
سنکرون است.)
بیت های ۳1 لاو 1/10 : (انتخاب حالت بیت توازن)
اكر اين بیث فعال شود فرستنده به صورت اتوماتیک این بیت را همراه با کاراکتر ها ارسال می کند. گیرنده
بررسی می کند. در صورت ارسال اشتباه پرچم PE در رجیستر SI, UCSRA 2 کند.
uPMo Parity Mode امنا
Disabled 0 0
Reserved 1 0
Enabled, Even Parity 0 1
Enabled, Odd Parity 1 1
صفحه 28:
۴۲-رجیستر کنترل وضعیت) 5 لا:
بيت USBS
انتخاب تعداد بیت های پایان(56۱66 (USART Stop bits
اگر اين بيت ٠ باشد دو بيت به عنوان بيت يايان در نظر كرفته مى شود و اكر اين بيت ٠ باشد يك بيت به عنوان
بیت پایان در نظر گرفته می شود.
5 Stop Bit(s)
0 1-01
1 2-bit
Bit 2
[orser_[uwser[ vem] orm] uses] veer! | ucem [ucror]} ucsne
a ب اس ب
Initial Value 1 0 0 0 ۰ 1 1 9
صفحه 29:
۲-رجیستر کنترل وضعیت 05 ا:
بيت های ۱0521 و0520 لا
اين بیت ها تعیین کننده تعداد بیت های کاراکتر فریم داده است.
ucsz2, ucsz1 ucsz0 Charactor Siz0
0 0 0 5
0 0 1 لد
0 1 0 Tt
0 1 1 eb
1 0 0 Reserved
1 0 1 Reserved
1 1 0 Reserved
1 1 1 و
Bit
] ۳5۳7 [uwset_[ vem] uw] uses] veer! | ucem [ucror] ucsne
Paws سس لسلسم سس
titi! Valu 1 0 0 0 0 1 0.
صفحه 30:
۲-رجیستر کنترل وضعیت )25۳ ا:
۱06۴0۵۱ بيت
Clock Polarity انتخاب پلاریته پالس در حالت سنکرون
غر با aby این بیت در حالت سنکرون استفاده می شود. در حالت آسنکرون
‘Tranemitied Data Changed (Output of _] Received Data Sampled (input on
UCPOL | TxD Pin) RxD Pin)
0 _| Rising XCK Eage Falling XCK Edge
1 Falling XCK Edge Rising XCK Edge
Bit
[orset_[owset_[ vem] orm] uses] veer! | ucem) [vert] ucsne
a ۳۲۳۳۳۲۳۲۳۳۲۳ 5
Initial Valus 1 0 31 0 3 1 3
صفحه 31:
۳-رجیستر تعیین سرعت يورت سرى 8115 لا:
ثبات ١ بيتى 81418 لاء داراى يك بايت كم ارزش 814141 لا و يك بايت ير ارزش 818141 لا است. مطابق با
جدول مربوطه با مقدار دهى ثبات (1316 8.10)03100 .8114لا ارسال مشخص مى شود.
Ba 15 en 0 . 8
Ca ee UBAALTT 6 UBRRH
نت1 ۱
0 5 1 5 7 1 ۳
ReadWrte 8 00 ا RW RW RW
aw RW RW RW RW RW RW
intial Vee 6 0 0 0 0 0 0 °
0 0 ۰ 0 ° ۰ 0 0
بیت(اع 95لا بیت انتخاب ثبات(56۱61 /8©0156]6)
با این بیت می توان ثبات 8۳لا یا تلا را انتخاب نمود.
وقتی که اطلاعات از ثبات (8٩۳۱ خوانده می شود. این بیت برابر صفر است.
وقتی که اطلاعات در ثبات 18٩۳۳! نوشته می شود. این بیت برابر صفر است.
صفحه 32:
۳-رجیستر تعیین سرعت يورت سرى 8115 لا:
بیت های ۱۴ الی ۱۲ بیت های رزرو هستند.
بيت هاى ١١ الى :٠ بيت هاى سرعت يورت سرى
بيت هاى ٠-١١ يك ثبات ۱۲ بیتی است که مشخص کننده ۵6 Jus UBRRH ots cu! Baud ¥
بيت بر ارزش در ثبات ۱81 شامل ۸ بیت کم ارزش است. مثلا اگر 5۷۳۶<یم و 80
Rates=9600 باشد. مطابق جدول بایستی 8۳۳۴<51ا یا 02633 انتخاب شود که در ۳ حالت
Se, UBRRH=0X00
Equation for
Equation forCalculating | Calculating 0888
Operating Mode Baud Rate!") Value
Asynchronous Neral Mego 2 1
: ور fait _| ppp fos
TEAR BAUD = 161888 +1 UBER 1624 0
‘eynchronous Double Speed Mode i ۳
۳ _ tose | ppp تک
اک SAUD = BUBRR+1) UBRE 8BAUD
Synchronous Master Mods 2 1
03 = fose
2۸« - وود ۳۳ 2BAUD ۳
Note: 1. The baud rate is defined to be the transfar rate in bit per socond (bps)
صفحه 33:
مثال:
‘AVR
کنترلر
ید هن زگ
نامه ای بتویسب
بو