| מחבר | הודעה |
|---|
winit_a
הצטרפות: 16 נובמבר 2003 הודעות: 17
| 15 פברואר 2004 5:42 כיצד ליצור UART עם תוכנה (לא נעשה שימוש SBUF) ב 8051 | | |
|
| כיצד ליצור UART עם התוכנה? הפרוייקט שלי היה בשימוש 3 UART (בדרך כלל יש 1 UART עם חומרה P3.0 ו P3.1)
8051 MCU@11.0592MHz כיצד ליצור UART בשימוש P2 או P1 להתממשקות RS-232 |
|
| לראש הדף | |
 |
pisoiu
הצטרפות: 31 דצמבר 2002 הודעות: 723 עזר: 24 מיקום: רומניה
| 15 פברואר 2004 11:58 Re: כיצד ליצור UART עם תוכנה (לא נעשה שימוש SBUF) ב 8051 | | |
|
| הי, לדעתי: זה קשה לעזאזל. אתה חייב לעשות זאת באמצעות interrupts, אבל 8051 הוא יחסית איטי Controller, הביצועים שלה נשאר תחת 1mips ב 11,0592 קלאסית MHz השעון עבור גירסאות 8051 (1instruction מחזור 12 = מחזור השעון). למעלה טורית מיושם ב התוכנה מעבד לאכול כמעט כל הזמן, במיוחד אם אתה רוצה ללכת עד 115200bps עם יציאות אלה, או אם אתה מעוניין ליישם את כל הפרמטרים האפשריים (6/7/8 נתונים BITS selecteble, 1 / 2 עצור BITS, שווי זוגי / אפילו / מארק / שטח / ללא בקרת זרימה לבחירה xon-xoff/hard/none). Sugestion שלי היא להשתמש לשנות אדריכלות 8051 מ ברוש, או להשתמש scenix microcontroller (www.ubicom.com). לקבלת scenix Controller אני יכול לספק הקוד עבור 8 uarts בו זמנית. זה אם אתה רוצה תוכנות יישום. אם החומרה yau רוצה, אתה יכול להשתמש max3100 (Maxim).
הטוב ביותר, |
|
| לראש הדף | |
 |
אג 'יי
הצטרפות: 29 פברואר 2004 הודעות: 31
| 01 מרץ 2004 0:10 Re: כיצד ליצור UART עם תוכנה (לא נעשה שימוש SBUF) ב 8051 | | |
|
| אתה יכול ליצור אחד UART (בנוסף באמצעות SBUF) באמצעות הזמן המוקדש וכתיבת קוד מאוד מהר כדי לסובב מעט. על הצד הנכנס (RXD), עליך להשתמש PIN להפריע. מתי את באה להפריע, להפעיל את timers ולקרוא את מצב PIN לתוך לשאת, לסובב וליצור את נכנסת בתים. עובד גם upto 9600 Baud (אני השתמשתי בה).
עם זאת, ביצירת עוד שני באותו הזמן? שכח מזה. גם אם אתה משתמש בשני מוקדש timers, שגרות להפוך את ההפרעה כל כך גדול, כי אתה מתגעגע BITS.
אם אתם מחפשים איטי UARTs (1200 Baud או איטית יותר), אחר כך זה עובד בטכניקה upto 2 של UART. זכור כי תוכל לתת את כל שלוש timers (אחד המשמשים baud הדולר gen עבור SBUF, אחת יציאה אחת 1 ו 2 עבור יציאת תזמון) וכן הן interrupts.
לכן, עדיף להשתמש העיצוב של הצ 'יפ עם שני היד של UART (אני יצרתי 2 פרטים UARTs בשעה 19200 Baud עם היד) או להשתמש ראביט Controller או כ דבר כזה.
אג 'יי |
|
| לראש הדף | |
 |
beuch
הצטרפות: 06 יוני 2001 הודעות: 65 מיקום: צרפת
| 03 מרץ 2004 14:45 Re: כיצד ליצור UART עם תוכנה (לא נעשה שימוש SBUF) ב 8051 | | |
|
| הי,
צריך לראות את הקובץ המצורף, פיליפס ה אינטרנט.
AN446
להתראות |
|
| לראש הדף | |
 |
Google AdSense

| 03 מרץ 2004 14:45 מודעות | | |
|
|
|
|
| לראש הדף | |
 |
crazytnt
הצטרפות: 02 פברואר 2004 הודעות: 8
| 03 מרץ 2004 17:43 Re: כיצד ליצור UART עם תוכנה (לא נעשה שימוש SBUF) ב 8051 | | |
|
| זה מאוד קשה. ממליצים על שימוש בחומרה. |
|
| לראש הדף | |
 |
J_expoler2
הצטרפות: 10 מאי 2003 הודעות: 179 עזר: 19
| 03 מרץ 2004 18:00 Re: כיצד ליצור UART עם תוכנה (לא נעשה שימוש SBUF) ב 8051 | | |
|
| הי יש לי רעיון UART אלא רק לשלוח נתונים באמצעות הטיימר 0 מעט T232 כפי TxD MOV TMOD, # 22H MOV TH0, # 70H MOV TL0, # 70H SETB EA SETB ET0 SETB TR1 ; ; ; ; פונקציה שלח נתונים: CLR T232; START Bit SETB TR0 MOV R7, # 8
TX_LOOP: RRC א JNB TF0, $ MOV T232, C CLR TF0 DJNZ R7, TX_LOOP JNB TF0, $ SETB T232; העצירה Bit CLR TF0 JNB TF0, $ Ret זה אולי לעזור U BR. |
|
| לראש הדף | |
 |
fireplus
הצטרפות: 31 אוקטובר 2003 הודעות: 195 עזרו: 5
| 04 מרץ 2004 3:29 Re: כיצד ליצור UART עם תוכנה (לא נעשה שימוש SBUF) ב 8051 | | |
|
| נסה את זה
[שעה: 5c6e3c7296] אש על חוט: sm2:
|
|
| לראש הדף | |
 |
אג 'יי
הצטרפות: 29 פברואר 2004 הודעות: 31
| 08 מרץ 2004 12:28 Re: כיצד ליצור UART עם תוכנה (לא נעשה שימוש SBUF) ב 8051 | | |
|
| | J_expoler2 כתב: | הי יש לי רעיון UART אלא רק לשלוח נתונים באמצעות הטיימר 0 מעט T232 כפי TxD MOV TMOD, # 22H MOV TH0, # 70H MOV TL0, # 70H SETB EA SETB ET0 SETB TR1 ; ; ; ; פונקציה שלח נתונים: CLR T232; START Bit SETB TR0 MOV R7, # 8
TX_LOOP: RRC א JNB TF0, $ MOV T232, C CLR TF0 DJNZ R7, TX_LOOP JNB TF0, $ SETB T232; העצירה Bit CLR TF0 JNB TF0, $ Ret זה אולי לעזור U BR. |
זהו רק טוב עבור שידור. הבעיה מגיעה כאשר אתה מנסה לקבל גם כן. קודם כל, זה לעולם לא שיטת עבודה מלאות דופלקס מבצע אלא אם אתה משתמש בשני timers שונים.
בנוסף, לקבלת, תצטרך להשתמש בחומרת ההפרעה אשר יהיה בדיוק הזמן להתחיל בשעה הנכון ואז יעזרו המשמרת את הנתונים. שוב, שיטה זו היא רק טוב כמו חצי דופלקס תקשורת.
מורכבות נוספת בא מן העובדה כי ההפרעה בשגרות להיות ארוכה יגרום בעיות ע"י חסר BITS. זכור כי השגיאה יהיה לצבור במשך הזמן!
הדרך הטובה ביותר היא באמצעות צ 'יפס שיש לו יותר יציאות סדרתי (הזרוע, uPSD מ ST וכו')
אג 'יי |
|
| לראש הדף | |
 |