Regles | Enviaments recents | tema RSS | Cerca | Registre | Iniciar sessió

Com crear UART amb Programari (no s'utilitza SBUF) en 8051

Post new topic Reply to topic EDAboard.com Índex Fòrum -> Microcontroladors -> Com crear UART amb Programari (no s'utilitza SBUF) en 8051
Versió en àrab Búlgar versió Versió en català Versió txeca Versió danesa Versió alemanya Versió grega Versió Anglès Versió en espanyol Versió finlandesa Versió en francès Versió Hindi Versió croat Indonesi versió Versió italiana Versió hebrea Versió en japonès Versió coreana Versió lituana Versió letona Versió neerlandesa Noruec versió Versió polonesa Versió en portuguès Versió romanesa Versió en rus Versió eslovaca Versió eslovena Serbi versió Versió Sueca Tagàlog versió Ucraïnès versió Versió Vietnamita Versió en xinès
Autor Missatge
winit_a



Antiguitat: 16 de novembre 2003
Llocs: 17


Post 15 febrer 2004 5:42 Com crear UART amb Programari (no s'utilitza SBUF) en 8051

Com crear UART Amb Software?
El meu projecte Usat 3 UART (normals tenen 1 UART amb el maquinari P3.0 i P3.1)

8051 MCU@11.0592MHz
Com crear UART P1 o P2 utilitzat per la interfície RS-232
Tornar amunt
View user's profile
pisoiu



Antiguitat: 31 de desembre 2002
Llocs: 723
Ajudar: 24
Ubicació: Romania


Post 15 de febrer 2004 11:58 Re: Com crear UART amb Programari (no s'utilitza SBUF) en 8051

Hola,
La meva opinió: és difícil maleït. Vostè haurà de fer ús de les interrupcions, però 8051 és un controlador relativament lent, el seu rendiment es manté sota 1mips en 11,0592 mhz rellotge clàssic per a les versions 8051 (1instruction cicle de cicle de rellotge = 12). Més d'un port sèrie al programari aplicat a menjar gairebé tots els temps de processador, especialment si voleu anar fins 115200bps amb els ports, o si voleu aplicar a tots els possibles paràmetres (6/7/8 bits de dades selecteble, 1 / 2 bit de parada, la paritat parell / senar / marca / espai / cap, el control del flux xon-xoff/hard/none seleccionable). El meu suggeriment és utilitzar una arquitectura de 8051 modificat de xiprer, o utilitzar un microcontrolador scenix (www.ubicom.com). Scenix controlador per tal que pugui proporcionar el codi per al 8 de UARTs simultàniament. Això si voleu una implementació de programari. Si voleu Yau maquinari, pot utilitzar max3100 (màxima).

Millor,
Tornar amunt
View user's profile
Ajay



Antiguitat: 29 de febrer 2004
Llocs: 31


Post 01 de març 2004 0:10 Re: Com crear UART amb Programari (no s'utilitza SBUF) en 8051

Vostè podria crear una UART (més de la utilització de SBUF) per mitjà d'un escrit i dedicat de temps molt ràpid el codi per girar poc. En la propera part (RXD), ha d'utilitzar una interrupció pins. Quan la interrupció ve, iniciar el temps i llegir l'estat de la clavilla a transportar, rotar i crear el teu els bytes. Funciona bé fins 9600 bauds (he fet servir).

Tanmateix, la creació de dues més al alhora? Oblida'l. Fins i tot si utilitza dedicat dos temporitzadors, interrompre la rutina és tan gran que ha de perdre bits.

Si està buscant UARTs lent (1200 bauds o més lent), aleshores aquesta tècnica fins a 2 obres per a la UART. Tingueu en compte que vostè renunciï a tots els temporitzadors dels tres (que s'utilitza per generació de bauds SBUF, un per al port 1 i port 2 d'un calendari), així com la interrupció.

Per tant, millor disseny és l'ús d'un xip ARM amb dues de la UART (he creat 2 nous UARTs a 19.200 bauds amb un ARM) o utilitzeu el controlador de conill o de tal cosa.

Ajay
Tornar amunt
View user's profile
Google
AdSense





Post 01 de març 2004 0:10 anuncis



Tornar amunt
beuch



Antiguitat: 06 de juny 2001
Llocs: 65
Lloc: França


Post 03 de març 2004 14:45 Re: Com crear UART amb Programari (no s'utilitza SBUF) en 8051

Hola,

fer una ullada a l'arxiu adjunt d'una web de Philips.

AN446

adéu


Ho sentim, però necessita accés per veure aquest arxiu adjunt

Tornar amunt
View user's profile
crazytnt



Antiguitat: 02 de febrer 2004
Llocs: 8


Post 03 de març 2004 17:43 Re: Com crear UART amb Programari (no s'utilitza SBUF) en 8051

És molt difícil.
Recomanem l'ús del maquinari.
Tornar amunt
View user's profile
J_expoler2



Antiguitat: 10 de maig de 2003
Llocs: 179
Ajudar: 19


Post 03 de març 2004 18:00 Re: Com crear UART amb Programari (no s'utilitza SBUF) en 8051

Hola
Tinc una idea però UART enviar dades només mitjançant temporitzador 0
T232 mica com TxD
MOV TMOD, # 22H
MOV TH0, # 70h
MOV TL0, # 70h
SETB EA
SETB ET0
SETB TR1
;
;
;
;
la funció d'enviament de dades:
CLR T232; bit d'arrencada
SETB TR0
MOV R7, # 8

TX_LOOP: RRC A
JNB TF0, $
MOV T232, C
CLR TF0
DJNZ R7, TX_LOOP
JNB TF0, $
SETB T232; STOP BIT
CLR TF0
JNB TF0, $
RET
que potser ajudar o
BR.
Tornar amunt
View user's profile
fireplus



Antiguitat: 31 d'octubre 2003
Llocs: 195
Ajudar a: 5


Post 04 de març 2004 3:29 Re: Com crear UART amb Programari (no s'utilitza SBUF) en 8051

intentar que

[hr: 5c6e3c7296]
Foc al filferro: SM2:


Ho sentim, però necessita accés per veure aquest arxiu adjunt

Tornar amunt
View user's profile
Ajay



Antiguitat: 29 de febrer 2004
Llocs: 31


Post 08 de març 2004 12:28 Re: Com crear UART amb Programari (no s'utilitza SBUF) en 8051

J_expoler2 va escriure:
Hola
Tinc una idea però UART enviar dades només mitjançant temporitzador 0
T232 mica com TxD
MOV TMOD, # 22H
MOV TH0, # 70h
MOV TL0, # 70h
SETB EA
SETB ET0
SETB TR1
;
;
;
;
la funció d'enviament de dades:
CLR T232; bit d'arrencada
SETB TR0
MOV R7, # 8

TX_LOOP: RRC A
JNB TF0, $
MOV T232, C
CLR TF0
DJNZ R7, TX_LOOP
JNB TF0, $
SETB T232; STOP BIT
CLR TF0
JNB TF0, $
RET
que potser ajudar o
BR.


Això només és bona per a la transmissió. Problema ve quan intenta rebre també. En primer lloc, aquest mètode de treball per MAI operació dúplex completa a menys que useu dos temporitzadors.

A més, per a la recepció, haurà d'utilitzar una interrupció de maquinari que precisament iniciar el temporitzador en el moment adequat i, a continuació, ajudaran a passar les dades. Una vegada més, aquest mètode només és bo com un mitjà de comunicació dúplex.

Una altra complexitat ve del fet que la interrupció de rutines es converteixen en llargs i causarà problemes per desapareguts bits. Tingueu en compte que l'error s'acumulen al llarg d'un període de temps!

La millor manera és fer servir un xip que té més ports sèrie (ARM, etc uPSD de ST)

Ajay
Tornar amunt
View user's profile
Post new topic Reply to topic EDAboard.com Índex Fòrum -> Microcontroladors -> Com crear UART amb Programari (no s'utilitza SBUF) en 8051
Pàgina 1 de 1 Totes les hores són GMT 2 Hores


Abús | | Administrador | | Moderadors | | Ajuda | | Mapa del lloc
RSS tema