Правила | Останні повідомлення | теми RSS | Пошук | Реєстрація | Увійти

Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051



Post new topic Reply to topic EDAboard.com форумів -> Мікроконтролери -> Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051
Арабська версія Болгарський варіант Каталонська версія Чеська версія Датская версія Німецька версія Грецька версія Англійський варіант Іспанська версія Фінська варіант Французька версія Hindi версія Хорватська варіант Індонезійська версія Італійська версія Версія на івриті Японська версія Корейська версія Литовська версія Латвійська версія Голландська варіант Норвезька версія Польська версія Португальська варіант Румунська версія Російська версія Словацька версія Словенська версія Сербська версія Шведський варіант Тагальська версія Українська версія Вьетнамская версія Китайською мовою
Автор Повідомлення
winit_a



Зареєстровано: 16 листопада 2003
Повідомлень: 17


Post 15 лютого 2004 5:42 Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051
Теги: UART 8051 з програмним забезпеченням UART 8051 8051 MCU з 3 UART UART 8051 p3.1

Як створити UART з програмним забезпеченням?
Мій проект б 3 UART (нормальний мати 1 UART з апаратної P3.0 та P3.1)

8051 MCU@11.0592MHz
Як створити UART використовується P2 або P1 для інтерфейсу RS-232
Повернутися до початку
pisoiu



Зареєстровано: 31 грудня 2002
Повідомлень: 895
Допомагали: 24
Місце проведення: Румунія


Post 15 лютого 2004 11:58 Re: Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051
Теги: UART для здійснення в 8051 з XON XOFF 8051 UART З 8051 ПО 8051 UART UART виконати програму 8051 8051 XON XOFF реалізації 8051 UART з паритет з

Привіт,
Моя думка: це чертовски важко. Вам доведеться робити це за допомогою переривання, а 8051 є відносно повільний контролер, її ефективність залишається під 1mips на 11,0592 МГц годинники для класичних 8051 версії (1instruction циклу = 12 годин циклу). Більше одного послідовного порту здійснюється в програмному забезпеченні буде присутній майже весь час процесора, особливо якщо ви хочете йти до 115200 біт / с портів, або якщо ви хочете здійснити всі можливі параметри (6/7/8 біт даних selecteble, 1 / 2 зупинка битами, непарна / ще / марка / Космос / ні, контролю потоку вибирається xon-xoff/hard/none). Моя sugestion це використовувати зміна архітектури 8051 з кипариса, або використовувати scenix мікроконтролера (www.ubicom.com). Для scenix контролер я можу надати код для 8 uarts одночасно. Це якщо ви хочете, щоб програмне забезпечення здійснення. Якщо хочете ЯУ обладнання, ви можете використовувати max3100 (Максим).

Кращий,
Повернутися до початку
Аджай



Зареєстровано: 29 лютого 2004
Повідомлень: 31


Post 01 березня 2004 0:10 Re: Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051

Можна створити один UART (на додаток до використання SBUF) за допомогою спеціального таймера і написання коду дуже швидко обертатися біт. На вхідної стороні (RXD), ви повинні використовувати один перервати PIN. Коли відбувається переривання, запустити таймер і прочитати Сцепляющій статус в нести, обертати і створювати вхідні байти. Добре працює до 9600 бод (я використав його).

Разом з тим, що створює ще два в той же час? Забудьте про них. Навіть якщо ви використовуєте дві присвячені таймери, то переривання стала настільки великий, що ви пропустіть біт.

Якщо ви шукаєте повільно UARTs (1200 бод або повільніше), то цей метод працює на до 2 UART's. Майте на увазі, що вам дадуть всі три таймера (один використовується для швидкості ген для SBUF, по одному для порту 1 і порту 2 часу), а також як переривання.

Так що, краще дизайну полягає в тому, щоб використовувати ARM чіпа з двома UART's (Я створив 2 додаткових UARTs на 19200 бод з ARM), або використовувати Кролик контролер или что-то подобное справу.

Аджай
Повернутися до початку
beuch



Зареєстровано: 06 червня 2001
Повідомлень: 65
Місцезнаходження: Франція


Post 03 березня 2004 14:45 Re: Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051

Привіт,

, Подивіться на прикріплений файл з веб Philips АН СРСР.

AN446

поки


Вибачте, але вам необхідно увійти в акаунт це вкладення

Повернутися до початку
crazytnt



Зареєстровано: 02 лютого 2004
Повідомлень: 8


Post 03 березня 2004 17:43 Re: Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051

Це дуже важко.
Запропонувати використання апаратного забезпечення.
Повернутися до початку
J_expoler2



Зареєстровано: 10 травня 2003 року
Повідомлень: 179
Допомагали: 19


Post 03 березня 2004 18:00 Re: Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051

Привет
У мене є ідея, але UART передавати дані тільки за допомогою таймера 0
розрядних T232 як TxD
MOV TMOD, # 22H
MOV TH0, # 70H
MOV TL0, # 70H
SETB Е.А.
SETB ET0
SETB TR1
;
;
;
;
Функція передачі даних:
CLR T232; СНВ-BIT
SETB TR0
MOV R7, # 8

TX_LOOP: RRC A
JNB TF0, $
MOV T232, C
CLR TF0
DJNZ R7, TX_LOOP
JNB TF0, $
SETB T232; стоповий біт
CLR TF0
JNB TF0, $
RET
вона може допомогти U
BR.
Повернутися до початку
fireplus



Зареєстровано: 31 жовтня 2003
Повідомлень: 195
Допомагали: 5


Post 04 березня 2004 3:29 Re: Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051

спробувати що

[HR: 5c6e3c7296]
Пожежа в Wire: SM2:


Вибачте, але вам необхідно увійти в акаунт це вкладення

Повернутися до початку
Аджай



Зареєстровано: 29 лютого 2004
Повідомлень: 31


Post 08 березня 2004 12:28 Re: Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051

J_expoler2 писав:
Привет
У мене є ідея, але UART передавати дані тільки за допомогою таймера 0
розрядних T232 як TxD
MOV TMOD, # 22H
MOV TH0, # 70H
MOV TL0, # 70H
SETB Е.А.
SETB ET0
SETB TR1
;
;
;
;
Функція передачі даних:
CLR T232; СНВ-BIT
SETB TR0
MOV R7, # 8

TX_LOOP: RRC A
JNB TF0, $
MOV T232, C
CLR TF0
DJNZ R7, TX_LOOP
JNB TF0, $
SETB T232; стоповий біт
CLR TF0
JNB TF0, $
RET
вона може допомогти U
BR.


Це тільки хороші передачі. Проблема відбувається, коли ви намагаєтеся отримати також. Перш за все, цей метод буде працювати NEVER повного дуплексу операцію, якщо ви використовуєте два РІЗНИХ таймери.

Крім того, для отримання вам необхідно використовувати апаратне переривання, який буде точно запустити таймер на потрібний час, а потім буде сприяти перехід даних. Знову ж таки, цей метод добрий, як тільки одна половина дуплексной зв'язку.

Ще одна складність виникає з-за того, що переривання стати довгим і викличе проблеми зниклих біт. Майте на увазі, що помилка буде накопичуватися протягом певного періоду часу!

Кращим способом є використання чіпа, який має більш послідовні порти (ARM, uPSD із Санкт т.д.)

Аджай
Повернутися до початку
Post new topic Reply to topic EDAboard.com форумів -> Мікроконтролери -> Як створити UART з програмним забезпеченням (не використовується SBUF) на 8051
Сторінка 1 з 1 Часовий пояс: GMT 2 Години


Поскаржитися | | Адміністратор | | Модератори | | Підтримайте нас | | карта сайту
Тема RSS