Regeln | Neue Beiträge | Thema RSS | Suche | Registrieren | Log-in

So erstellen Sie mit Software-UART (nicht verwendet SBUF) auf 8051

Post new topic Reply to topic EDAboard.com Foren-Übersicht -> Microcontrollers -> Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051
Arabische Fassung Bulgarische Version Katalanischen Version Tschechische Version Dänische Fassung Deutsch Version Griechische Fassung Englisch Version Spanische Version Finnische Fassung Französische Version Hindi-Version Kroatische Version Indonesisch-Version Italienische Version Hebräisch-Version Japanische Version German Version Litauische Fassung Lettische Fassung Niederländische Fassung Norwegische Version Polnische Fassung Portugiesische Version Romanian version Russische Version Slowakische Fassung Slowenisch-Version Serbisch-Version Schwedische Version Tagalog Version Ukrainisch Version Vietnamesisch-Version Chinesische Version
Autor Nachricht
winit_a



Beitritt: 16. Nov 2003
Beiträge: 17


Post 15 Feb 2004 5:42 So erstellen Sie mit Software-UART (nicht verwendet SBUF) auf 8051

So erstellen Sie UART mit Software?
Mein Projekt Gebraucht 3 UART (normal ist 1 UART mit Hardware P3.0 und P3.1)

8051 MCU@11.0592MHz
So erstellen Sie UART verwendet P1 oder P2 zu Schnittstelle RS-232
Zurück zum Anfang
View user's profile
pisoiu



Beitritt: 31. Dezember 2002
Beiträge: 902
Geholfen: 24
Ort: Rumänien


Post 15 Feb 2004 11:58 Re: Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051

Hi,
Meine Meinung: Es ist verdammt hart. Sie werden zu tun haben, es mit Interrupts, aber 8051 ist ein relativ langsam Controller, seine Leistung bleibt unter 1mips auf 11,0592 MHz Takt für klassische 8051-Versionen (1instruction Zyklus = 12 Taktzyklus). Mehr als eine serielle Schnittstelle in Software implementiert werden essen fast alle Prozessor-Zeit, vor allem, wenn Sie wollen bis zu 115200bps mit den Ports, oder wenn Sie wollen, alle möglichen Parameter (6/7/8 Datenbits selecteble, 1 / 2 Stopbits, Parität Ungerade / Gerade / Marke / space / "none", "Flow Control xon-xoff/hard/none wählbar). Mein sugestion ist die Verwendung eines modifizierten Architektur 8051 von Zypressen, oder die Verwendung eines scenix Mikrocontroller (www.ubicom.com). Für scenix-Controller kann ich die Codes für 8 UARTs gleichzeitig. Dies, wenn Sie möchten, dass eine Software-Implementierung. Wenn Yau Hardware wollen, können Sie max3100 (Maxim).

Bester,
Zurück zum Anfang
View user's profile
Ajay



Beitritt: 29. Feb 2004
Beiträge: 31


Post 01. März 2004 0:10 Re: Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051

Sie könnten ein UART (zusätzlich zu den von der SBUF) durch die Verwendung einer speziellen Timer und Schreiben sehr schnell zu drehen Bit-Code. Auf der Eingangsseite (RXD), müssen Sie einen Interrupt Pin. Wenn der Interrupt kommt, starten Sie den Timer und lesen Sie die PIN-Status zu tragen, drehen und erstellen Sie Ihre eingehenden Bytes. Funktioniert gut, bis zu 9600 Baud (Ich habe es).

Jedoch, die Schaffung von zwei weiteren in der gleichen Zeit? Vergessen Sie es. Selbst wenn Sie zwei spezielle Timer, den Interrupt-Routinen so groß, dass Sie auf Bits.

Wenn Sie langsam UARTs (1200 Baud oder langsamer), dann wird diese Technik funktioniert für bis zu 2 UART's. Beachten Sie, dass Sie wird alle drei Zähler (einer für die Baudrate Gen für SBUF, eine für Port 1 und Port 2 für Timing), sowie die Interrupts.

Also, besser ist die Verwendung eines ARM-Chip mit zwei UART's (Ich habe 2 zusätzliche UARTs auf 19200 Baud mit einem ARM) oder nutzen Sie die Kaninchen-Controller oder so was.

Ajay
Zurück zum Anfang
View user's profile
beuch



Joined: 06 Jun 2001
Beiträge: 65
Ort: Frankreich


Post 03. März 2004 14:45 Re: Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051

Hi,

Werfen Sie einen Blick auf die angehängte Datei von Philips Web AN.

AN446

Tschüss


Es tut uns leid, aber Sie müssen zum Login, um die Anlage

Zurück zum Anfang
View user's profile
crazytnt



Joined: 02 Feb 2004
Beiträge: 8


Post 03. März 2004 17:43 Re: Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051

Es ist sehr schwierig.
Vorschläge mit Hardware.
Zurück zum Anfang
View user's profile
Google
AdSense





Post 03. März 2004 17:43 Anzeigen



Zurück zum Anfang
J_expoler2



Beitritt: 10. Mai 2003
Beiträge: 179
Geholfen: 19


Post 03. März 2004 18:00 Re: Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051

Hi
Ich habe eine Idee, UART, aber die Daten nur mit Timer 0
Bit-T232 als TxD
MOV TMOD, # 22H
MOV TH0, # 70h
MOV TL0, # 70h
Setb EA
Setb ET0
Setb TR1
;
;
;
;
Funktion Daten senden:
CLR T232; Startbit
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
es vielleicht helfen, u
BR.
Zurück zum Anfang
View user's profile
fireplus



Joined: 31 Oct 2003
Beiträge: 195
Geholfen: 5


Post 04. März 2004 3:29 Re: Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051

versuchen, dass

[hr: 5c6e3c7296]
Fire in the Wire: SM2:


Es tut uns leid, aber Sie müssen zum Login, um die Anlage

Zurück zum Anfang
View user's profile
Ajay



Beitritt: 29. Feb 2004
Beiträge: 31


Post 08. März 2004 12:28 Re: Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051

J_expoler2 schrieb:
Hi
Ich habe eine Idee, UART, aber die Daten nur mit Timer 0
Bit-T232 als TxD
MOV TMOD, # 22H
MOV TH0, # 70h
MOV TL0, # 70h
Setb EA
Setb ET0
Setb TR1
;
;
;
;
Funktion Daten senden:
CLR T232; Startbit
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
es vielleicht helfen, u
BR.


Dies ist nur gut für die Übertragung. Problem ist, wenn Sie versuchen, erhalten werden. Zuerst von allen, ist diese Methode nicht funktionieren für Full-Duplex Betrieb, wenn Sie zwei verschiedene Timer.

Darüber hinaus erhalten, benötigen Sie eine Hardware-Interrupts, die genau den Timer zum richtigen Zeitpunkt und dann Unterstützung der Verlagerung der Daten. Auch diese Methode ist nur gut wie ein Halb-Duplex-Kommunikation.

Eine weitere Komplexität ergibt sich aus dem Umstand, dass die Interrupt-Routinen zu lang und führt dazu, dass Probleme durch fehlende Bits. Beachten Sie, dass die Fehler häufen sich über einen längeren Zeitraum!

Der beste Weg ist, ein Chip, der hat mehr serielle Schnittstellen (ARM, uPSD aus ST etc.)

Ajay
Zurück zum Anfang
View user's profile
Post new topic Reply to topic EDAboard.com Foren-Übersicht -> Microcontrollers -> Wie erstellt man mit Software-UART (nicht verwendet SBUF) auf 8051
Seite 1 von 1 Alle Zeiten sind GMT 2 Stunden


Missbrauch | | Administrator | | Moderatoren | | Unterstützen Sie uns | | sitemap
Thema RSS