UART sofort deaktivieren

Im Unterforum Microcontroller - Beschreibung: Hardware - Software - Ideen - Projekte

Elektronik Forum Nicht eingeloggt       Einloggen       Registrieren




[Registrieren]      --     [FAQ]      --     [ Einen Link auf Ihrer Homepage zum Forum]      --     [ Themen kostenlos per RSS in ihre Homepage einbauen]      --     [Einloggen]

Suchen


Serverzeit: 29 12 2025  00:11:19      TV   VCR Aufnahme   TFT   CRT-Monitor   Netzteile   LED-FAQ   Oszilloskop-Schirmbilder            


Elektronik- und Elektroforum Forum Index   >>   Microcontroller        Microcontroller : Hardware - Software - Ideen - Projekte


Autor
UART sofort deaktivieren

    







BID = 647718

RaPe

Gelegenheitsposter



Beiträge: 56
Wohnort: Radebeul
 

  


Hallo Leute,

ich sitzte gerade hinter einem Atmega8 und lasse Daten über den UART ausgeben. Wenn es zu Problemen kommt, möchte ich die Kommnikation beim UART sofort beenden. Kein einziges BIT (nicht Byte sondern BIT) soll den UART mehr verlassen. Der UART lässt sich leider nur ausschalten, wenn die Übertragung beendet wurde, nicht eher. (siehe unten Datenblatt)
Weiß jemand einen Trick, wie ich den UART sofort zum Schweigen bekommen kann?
Es sind keine weiteren PIN frei, um die Abschaltung extern zu machen.

Datenblatt:
The disabling of the Transmitter will not become effective until ongoing and pending transmissions are completed (i.e., when the Transmit Shift Register and Transmit Buffer Register do not contain data to be transmitted).

Danke für eure Hilfe

BID = 647736

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach

 

  

Eine etwas seltsame Forderung. Ich kenne sogar Systeme, die auf ein XOFF erst reagieren, nachdem sie die 256 Bytes des DMA Puffers komplett gesendet haben.
Vermutlich reicht es hier aber, wenn du TxC setzt und dann mit /TxE abschaltest.


BID = 647786

RaPe

Gelegenheitsposter



Beiträge: 56
Wohnort: Radebeul

Coole Idee!

Habe es gleich ausprobiert, aber dem UART ist das auch egal. Er schiebt trotzdem erst den ganzen Speicher raus und deaktiviert sich erst danach.

Also?

BID = 647788

RaPe

Gelegenheitsposter



Beiträge: 56
Wohnort: Radebeul

--- DoPo entsorgt ---
mfg Don

[ Diese Nachricht wurde geändert von: DonComi am 14 Nov 2009 16:47 ]

BID = 647796

DonComi

Inventar



Beiträge: 8604
Wohnort: Amerika

Keinen einzigen IO-Pin mehr frei?
Dann könnte man mit einer kleinen Logik (ein Gatter) den UART hardwaremäßig abschalten.

Aber wozu der Aufwand? Implementiere doch eine Fehlererkennung o.ä., um sowas softwaremäßig zu lösen. Einfach den Datenstrom abbrechen ist eher die rustikale Methode...

_________________

BID = 647799

Harald73

Schreibmaschine


Falsches Format
*.gif oder *.jpg
verwenden!
Beiträge: 1016

Hi,

(Lösungsansatz aufgrund des Datenblatts, nicht probiert):

Baudratenregister zyklisch mit einem hohen Wert für eine langsame Datenrate neu schreiben

Zitat :

• Bit 11:0 – UBRR11:0: USART Baud Rate Register
This is a 12-bit register which contains the USART baud rate. The UBRRH contains the four
most significant bits, and the UBRRL contains the eight least significant bits of the USART baud
rate. Ongoing transmissions by the Transmitter and Receiver will be corrupted if the baud rate is
changed. Writing UBRRL will trigger an immediate update of the baud rate prescaler.


Damit sollten keine Clocks mehr an die Transmitlogik geschickt werden, der Ausgang ist quasi eingefroren.
Dann:
Fehleranalyse
Daten/Fehler im EEPROMspeichern
µC per WDT neu starten

Gruß
Harald


_________________
*..da waren sie wieder, meine 3 Probleme: 1)keiner 2)versteht 3)mich
* Immer die gültigen Vorschriften beachten und sich keinesfalls auf meine Aussagen verlassen!

BID = 647821

DonComi

Inventar



Beiträge: 8604
Wohnort: Amerika

Bin ich mir nicht sicher.

Es könnte auch sein, dass die Daten ab dem Update des Registers mit höherer Frequenz ausgetaktet werden.

Ich verstehe das Problem dennoch nicht...


_________________

BID = 647826

perl

Ehrenmitglied



Beiträge: 11110,1
Wohnort: Rheinbach

Das sehe ich auch so.
Wahrscheinlich gerät dabei lediglich das Timing des Baudrategenerators durcheinander. Corrupted heisst ja nicht aborted.


[ Diese Nachricht wurde geändert von: perl am 14 Nov 2009 18:31 ]


Zurück zur Seite 1 im Unterforum          Vorheriges Thema Nächstes Thema 


Zum Ersatzteileshop


Bezeichnungen von Produkten, Abbildungen und Logos , die in diesem Forum oder im Shop verwendet werden, sind Eigentum des entsprechenden Herstellers oder Besitzers. Diese dienen lediglich zur Identifikation!
Impressum       Datenschutz       Copyright © Baldur Brock Fernsehtechnik und Versand Ersatzteile in Heilbronn Deutschland       

gerechnet auf die letzten 30 Tage haben wir 17 Beiträge im Durchschnitt pro Tag       heute wurden bisher 0 Beiträge verfasst
© x sparkkelsputz        Besucher : 187996075   Heute : 85    Gestern : 15227    Online : 438        29.12.2025    0:11
5 Besucher in den letzten 60 Sekunden        alle 12.00 Sekunden ein neuer Besucher ---- logout ----viewtopic ---- logout ----
xcvb ycvb
0.0963568687439