mikrocontroller.net

Forum: Compiler & IDEs UART-Library von Peter Fleury für 2 UARTs verwenden


Autor: Beninho (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

als blutiger C-Anfänger fällt es mir etwas schwer, die Lib von Peter 
Fleury zu verstehen. Ich verwende einen ATMega162, wegen der 2 USARTs 
und würde gerne auch den 2.UART mithilfe der Lib ansprechen. Weiß einer 
von Euch, ob und wie das möglich ist? Im Online-Manual steht dazu leider 
nichts.

Dank und Grüße aus München,
Ben

Autor: Karl Heinz (kbuchegg) (Moderator)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Beninho wrote:
> Hallo,
>
> als blutiger C-Anfänger fällt es mir etwas schwer, die Lib von Peter
> Fleury zu verstehen. Ich verwende einen ATMega162, wegen der 2 USARTs
> und würde gerne auch den 2.UART mithilfe der Lib ansprechen. Weiß einer
> von Euch, ob und wie das möglich ist? Im Online-Manual steht dazu leider
> nichts.
>

Soweit ich weiss, ist der Code nur für eine UART ausgelegt.

Du könntest aber ganz einfach den Code duplizieren und für
die Verwendung auf UART Nummer 2 anpassen. Sollte relativ einfach
möglich sein, da sich die beiden UARTs ja logisch gleich verhalten
und nur die Register und Bitnamen anders sind.

Also Datenblatt zum Prozessor raus, ein Testprogramm schreiben,
welche die UART benutzt und im UART Code (einer Kopie vom Original)
mal alles umbenennen was nach UART0 riecht. Anschliessend die
Funktionen umbenennen, so dass UART1 einen eigenen Satz von Funktionen
hat und dann sollte es gehen.

Im Endeffekt hast du dann 2 UART Libraries, eine für UART0 und
eine für UART1. Je nachdem welche UART du verwenden willst, bindest
du dann entweder die eine oder die andere oder überhaupt beide ein.

Autor: Beninho (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Habe trotz miserabelster C-Kenntnisse gerade rausgefunden, wie es 
funktioniert. Einfacher gehts nicht mehr:

statt uart einfach uart1 verwenden:
also z.B. statt
uart_putc ( (unsigned char)c );  einfach
uart1_putc( (unsigned char)c );  verwenden.

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]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [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.