Kommunikation Zwischen AT90S8515 und Terminal

OP #236321
Lesenswert?
• ▲
▼
Im Anhang könnt ihr sehen wie ich etwas über den µC auf dem Terminal
ausgeben.
Jetzt möcht ich im Terminal z.B. ein Wort eingeben, mit Enter
bestätigen, dann soll es an den µC geschickt werden und wieder auf dem
Terminal ausgegeben werden.

Leider weis ich nicht wie ich vom Terminal aus and den µC etwas
Schicken kann.

Bauche ich dafür spezielle Befehle innerhalb des Terminals und wenn ja
welche?
Angehängte Dateien:
Gast #236324
Lesenswert?
• ▲
▼
Normalerweise werden doch die Zeichen, die du im Terminal eingibst,
automatisch über die serielle Schnittstelle an den µC gesendet. Die
Enter-Taste repräsentiert dabei auch nur ein spezielles Zeichen,
welches du im µC auswerten mußt.

Auf dem µC schreibst du am besten eine Interrupt-Routine, die bei
Empfang eines Zeichens angesprungen wird (automatisch). In dieser
Routine mußt du dann nur das empfangene Zeichen wieder in das
Datenregister (UDR beim AVR) des UARTs schreiben, und es wird
automatisch zurück an das Terminal gesendet.


Jens
#236328
Lesenswert?
• ▲
▼
> Zum Senden muss ich ja das TXEN aktivieren, beim Empfangen das RXEN.
> Wann weis ich jetzt wann das Senden vorbei ist, damit ich das RXEN
> aktivieren kann?

UART ist voll duplex, kann also quasi gleichzeitig senden und
empfangen. Beides geschieht im Hintergrund per Hardware.

Um (vom AVR aus) zu senden, schreibst du (nach Überprüfen der
Sendebereitschaft) das zu sendfende Datenbyte ins UDR-Register.

Wurde (im AVR) ein Byte empfangen, so wird das zugehörige Flag (siehe
Datenblatt, UART-Register) gesetzt und ggf ein Interrupt ausgelöst. In
der zugehörigen ISR liest man dann das empfangene Byte aus UDR aus.

Das Thema U(S)ART wurde in den letzten Tagen hier im Forum ausgiebig
diskutiert (auch mit Codebeispielen), blättere doch mal etwas zurück.

...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

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.