Regels | Recent posts | onderwerp RSS | Zoeken | Registreren | Aanmelden

How to Create UART met software (niet gebruikt SBUF) over 8051

Post new topic Reply to topic EDAboard.com Forum Index -> Microcontrollers -> How to Create UART met software (niet gebruikt SBUF) over 8051
Arabische versie Bulgaarse versie Catalaanse versie Tsjechische versie Deense versie Duitse versie Griekse versie Engels versie Spaanse versie Finse versie Franse versie Hindi versie Kroatische versie Indonesische versie Italiaanse versie Hebreeuwse versie Japanse versie Koreaanse versie Litouwse versie Letse versie Nederlandse versie Noorse versie Poolse versie Portugese versie Roemeense versie Russische versie Slowaakse versie Sloveense versie Servische versie Zweedse versie Tagalog versie Oekraïense versie Vietnamese versie Chinese versie
Auteur Bericht
winit_a



Lid geworden: 16 november 2003
Posts: 17


Post 15 feb 2004 5:42 How to Create UART met software (niet gebruikt SBUF) over 8051

How to Create UART Met software?
Mijn project Gebruikt 3 UART (normaal hebben 1 UART met hardware P3.0 en P3.1)

8051 MCU@11.0592MHz
How to Create UART gebruikt P1 naar P2 of interface RS-232
Terug naar boven
View user's profile
pisoiu



Lid geworden: 31 december 2002
Posts: 723
Geholpen: 24
Locatie: Roemenië


Post 15 feb 2004 11:58 Re: How to Create UART met software (niet gebruikt SBUF) over 8051

Hoi,
Mijn advies: het is verdomd moeilijk. U moet dit doen met behulp van interrupts, maar 8051 is een relatief traag controller, de prestatie blijft onder 1mips op 11,0592 MHz klok voor klassieke 8051 versies (1instruction cyclus = 12 klok cyclus). Meer dan een seriële poort geïmplementeerd in software zal eten bijna alle processor tijd, vooral als je wilt gaan tot 115200bps met de havens, of als u wilt implementeren van alle mogelijke parameters (6/7/8 databits selecteble, 1 / 2 stopbits, pariteit oneven / zelfs / merk / ruimte / geen, flow control selecteerbaar xon-xoff/hard/none). Mijn sugestion is het gebruik van een gemodificeerde architectuur 8051 van cipres, of gebruik te maken van een microcontroller scenix (www.ubicom.com). Voor scenix controller ik kan code voor 8 uarts tegelijk. Dit als u een software-implementatie. Als Yau willen hardware, kunt u gebruik maken van max3100 (Maxim).

Beste,
Terug naar boven
View user's profile
Google
AdSense





Post 15 feb 2004 11:58 advertenties



Terug naar boven
Ajay



Lid geworden: 29 februari 2004
Posts: 31


Post 01 maart 2004 0:10 Re: How to Create UART met software (niet gebruikt SBUF) over 8051

Je kunt maken een UART (in aanvulling op het gebruik van de SBUF) door middel van een timer en schrijven zeer snel code te draaien beetje. Aan de inkomende kant (RXD), moet u een interrupt pin. Wanneer de onderbreking komt, begin je timers en lees de pin-status in voeren, draaien en het maken van uw inkomende bytes. Werkt goed tot 9600 Baud (ik heb gebruikt).

Echter, twee meer op hetzelfde moment? Vergeet het maar. Zelfs als u twee speciale timers, interrupt routines zo groot dat je mist bits.

Als u op zoek bent voor langzaam UARTs (1200 Baud of minder), dan wordt deze techniek werkt voor maximaal 2 UART's. Houd er rekening mee dat u zal geven alle drie timers (een gebruikt voor baudrate gen voor SBUF, een voor poort 1 en een voor de haven 2 timing), alsmede de interrupts.

Dus, beter ontwerp is het gebruik van een ARM chip met twee UART's (Ik heb 2 extra UARTs op 19200 Baud met een ARM) of gebruik de Rabbit-controller of een dergelijke zaak.

Ajay
Terug naar boven
View user's profile
beuch



Lid geworden: 06 juni 2001
Posts: 65
Locatie: Frankrijk


Post 03 maart 2004 14:45 Re: How to Create UART met software (niet gebruikt SBUF) over 8051

Hoi,

eens kijken naar de bijgevoegde bestand van Philips web AN.

AN446

dag


Sorry, maar je moet inloggen om dit onderdeel te bekijken koppelingseisen

Terug naar boven
View user's profile
crazytnt



Lid geworden: 02 februari 2004
Posten: 8


Post 03 maart 2004 17:43 Re: How to Create UART met software (niet gebruikt SBUF) over 8051

Het is erg moeilijk.
Wijzen op het gebruik van hardware.
Terug naar boven
View user's profile
J_expoler2



Lid geworden: 10 mei 2003
Posts: 179
Geholpen: 19


Post 03 maart 2004 18:00 Re: How to Create UART met software (niet gebruikt SBUF) over 8051

Hoi
Ik heb een idee UART maar u gegevens slechts met behulp van de timer 0
bits T232 als TxD
MOV TMOD, # 22h
MOV TH0, # 70H
MOV TL0, # 70H
SETB EA
SETB ET0
SETB TR1
;
;
;
;
functie stuurt gegevens:
CLR T232; START-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; stopbit
CLR TF0
JNB TF0, $
RET
zij misschien helpen u
BR.
Terug naar boven
View user's profile
fireplus



Lid geworden: 31 oktober 2003
Posts: 195
Geholpen: 5


Post 04 maart 2004 3:29 Re: How to Create UART met software (niet gebruikt SBUF) over 8051

Probeer dat

[hr: 5c6e3c7296]
Brand in de Wire: SM2:


Sorry, maar je moet inloggen om dit onderdeel te bekijken koppelingseisen

Terug naar boven
View user's profile
Ajay



Lid geworden: 29 februari 2004
Posts: 31


Post 08 maart 2004 12:28 Re: How to Create UART met software (niet gebruikt SBUF) over 8051

J_expoler2 schreef:
Hoi
Ik heb een idee UART maar u gegevens slechts met behulp van de timer 0
bits T232 als TxD
MOV TMOD, # 22h
MOV TH0, # 70H
MOV TL0, # 70H
SETB EA
SETB ET0
SETB TR1
;
;
;
;
functie stuurt gegevens:
CLR T232; START-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; stopbit
CLR TF0
JNB TF0,$
RET
zij misschien helpen u
BR.


Dat is alleen goed voor het doorgeven. Probleem komt wanneer u probeert te ontvangen zijn. Ten eerste, deze methode zal nooit werken voor full duplex operatie, tenzij u twee VERSCHILLENDE timers.

Bovendien is voor het ontvangen, moet u gebruik maken van een hardware-interrupt die precies start de timer op het juiste moment en zal dan helpen verschuiving van de gegevens. Nogmaals, deze methode is alleen goed als een half duplex communicatie.

Een andere complexiteit komt voort uit het feit dat de interrupt routines geworden lang en zal problemen veroorzaken bij de ontbrekende stukjes. Houd er rekening mee dat de fout zal accumuleren gedurende een periode van tijd!

De beste manier is gebruik te maken van een chip die meer seriële poorten (ARM, uPSD uit ST enz.)

Ajay
Terug naar boven
View user's profile
Post new topic Reply to topic EDAboard.com Forum Index -> Microcontrollers -> How to Create UART met software (niet gebruikt SBUF) over 8051
Pagina 1 van 1 Alle tijden zijn GMT 2 Hours


Misbruik | | Administrator | | Moderatoren | | Steun ons | | sitemap
onderwerp RSS