Forum: Compiler & IDEs UART Header Frage


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
von Ismir (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Guten Abend,

Ich saß bei meinem Prof. heute im Labor und wollte mir Werte von meinem 
Mikrocontroller per UART ausgeben lassen. Das Problem war, dass ich 
keine Verbindung zu Realterm herstellen konnte. Der TxD Pin des 
Mikrocontrollers arbeitete jedoch zuverlässig (Sinalerzeugung mittels 
Ossi geprüft). Nun ist mir hier zuhause aufgefallen, dass ich vergessen 
hatte die Funktionsprototypen sowie den Header des extra Moduls 
einzubinden. Könnte es möglich sein, dass der Mikrocontroller das 
Ausgabesignal erzeugt jedoch dann nichts Empfangen kann (Was macht der 
Compiler)?

von A. S. (achs)


Bewertung
0 lesenswert
nicht lesenswert
Ismir schrieb:
> Der TxD Pin des Mikrocontrollers arbeitete jedoch zuverlässig (Sinalerzeugung 
mittels Ossi geprüft)

Die Prüfung sollte auch mit einem PC-Programm erfolgen, ob es bei den 
gewünschten Schnittstellenparametern auch richtig empfängt. Schließlich 
kann man da viel falsch machen (Baudrate, Parity, Datenfluss, ...)

. Nun ist mir hier zuhause aufgefallen, dass ich vergessen
> hatte die Funktionsprototypen sowie den Header des extra Moduls
> einzubinden.
Das ist nicht der primäre Fehler. Das eigentliche Problem ist, dass Du 
die Warnungen entweder ausgeschaltet hast, oder ignorierst. Beides macht 
eine Fehlerspekulation überflüssig.

> Könnte es möglich sein, dass der Mikrocontroller das Ausgabesignal erzeugt 
jedoch dann nichts Empfangen kann (Was macht der Compiler)?

Den Compiler zu verstehen braucht etwas mehr Zeit. Oder ganz kurz: Ja, 
kann sein. Der Compiler weiss manchmal nicht, wieviel Bytes auf den 
Stack sind/müssen. Hochprior ist erstmal die Analyse, ob der 
TX-Datenstrom wie erwartet ist und Compilerwarnungen an.

: Bearbeitet durch User
von Wolfgang H. (Firma: AknF) (wolfgang_horn)


Bewertung
0 lesenswert
nicht lesenswert
Hi, Ismir,

Verständnis der Sprache ist noch lange nicht garantiert, wenn man sieht, 
wie eine Person ihre Lippen bewegt.

Zur Sendung über UART müssen die Baudrate eingestellt werden, das Format 
und manches andere. Mit einiger Wahrscheinlichkeit finden sich in den 
Header-Dateien, von denen Du schreibst, genau diese Informationen.

Dann hast Du einen ersten Schritt erfolgreich getan - Dein UART sendet - 
aber weitere müssen folgen, damit Realterm dann auch versteht.

Ciao
Wolfgang Horn

von Wolfgang (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Ismir schrieb:
> Könnte es möglich sein, dass der Mikrocontroller das
> Ausgabesignal erzeugt jedoch dann nichts Empfangen kann (Was macht der
> Compiler)?

Dafür reicht schon, dass die Polarität des Signals falsch ist. Ein PC 
kann mit dem Ausgangssignal des µC normalerweise direkt nichts anfangen. 
Realterm ist nur eine Software. Bevor die etwas mit dem Signal vom µC 
anfangen kann, muss noch irgendeine geeignete Hardware zwischen µC und 
PC sitzen.

von W.S. (Gast)


Bewertung
0 lesenswert
nicht lesenswert
Wolfgang schrieb:
> Ein PC
> kann mit dem Ausgangssignal des µC normalerweise direkt nichts anfangen.

Drück dich doch etwas klarer aus!

Also:
Im PC oder in einem USB->V24-Adapter sitzen Pegelwandler, die die 
Signale von den geräteinternen Pegeln in normgereichte Pegel für die V24 
umsetzen - und genau solche Pegelwandler muß Ismir auch auf seiner 
Leiterplatte haben, sonst wird das nichts - es sei denn, er hat einen 
USB->Seriell (nicht V24) Adapter, der TTL-Signale liefert.

W.S.

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
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.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.