Serielle Schnittstelle beim MSP430

Gast #5795632
Lesenswert?
• ▲
▼
Hallo,

ich muss mich gerade auf eine Mikrorechner-Klausur vorbereiten. Beim 
Thema "Serielle Schnittstelle" gibt es ein paar Fragen im Fragenkatalog, 
mit denen ich leider gar nichts anfangen kann (die Vorlesungsunterlagen 
geben da nichts her):

1. Was passiert, wenn Sie während UTXIFG=0 das Register U1TXBUF 
beschreiben (zwei Fälle unterscheiden!)?

2. Was passiert, wenn Sie bei U1RXBUF zu spät lesen? Welchen Wert lesen 
Sie aus U1RXBUF, bevor URXIFG1 gesetzt wurde?

3. Interrupt-gesteuerte serielle Übertragung: Sie möchten nach 
Sendepause eine neue Ausgabe einleiten, UTXIFG1 in IFG2 ist gelöscht. 
Welche Bedingung muß erfüllt sein, damit U1TXBUF sicher beschrieben 
werden darf?

Ich verstehe leider nur Bahnhof. Kennt vielleicht sogar jemand eine 
Website, wo die Hintergründe beschrieben sind?

Grüße
Frank
Persönliche Seite #5795665
Lesenswert?
• ▲
▼
Frank2402 schrieb:
> die Vorlesungsunterlagen geben da nichts her

Von der ungenannten MSP430-Variante gibt es bei TI ausführliche 
Dokumentation, der passende "Family User's Guide" ist hier zu Rate zu 
ziehen.


Passend muss er sein, weil sich die Peripheriemodule zwischen 
verschiedenen Varianten durchaus unterscheiden können.

Also: Bestimme den genauen Typ, um den es geht, und besorge Dir dann den 
dazu passenden "Family User's Guide".
#5795748
Lesenswert?
• ▲
▼
Frank2402 schrieb:
> 1. Was passiert, wenn Sie während UTXIFG=0 das Register U1TXBUF
> beschreiben (zwei Fälle unterscheiden!)?

Abschnitt 13.2.5 des User's Guide sagt:
> ... data should not be written to UxTXBUF unless it is ready for new
> data indicated by UTXIFGx = 1. Violation can result in an erroneous
> transmission if data in UxTXBUF is modified as it is being moved into
> the TX shift register.

Frank2402 schrieb:
> 2. Was passiert, wenn Sie bei U1RXBUF zu spät lesen?

Abschnitt 13.2.3 sagt:
> An overrun error occurs when a character is loaded into UxRXBUF before
> the prior character has been read. When an overrun occurs, the OE bit
> is set.

Frank2402 schrieb:
> Welchen Wert lesen Sie aus U1RXBUF, bevor URXIFG1 gesetzt wurde?

Abschnitt 13.3 sagt:
> The receive-data buffer is user accessible and contains the last
> received character from the receive shift register.

Vor dem ersten empfangenen Zeichen ist der Wert nicht definiert.

Frank2402 schrieb:
> Welche Bedingung muß erfüllt sein, damit U1TXBUF sicher beschrieben
> werden darf?

Warten, bis TXIFG gesetzt ist. Das geht am besten mit einem Interrupt 
(siehe Abschnitt 13.2.7).

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.