Forum: Mikrocontroller und Digitale Elektronik XMEGA UART Library


von Matthias T. (matthias_199)


Angehängte Dateien:

Lesenswert?

Hallo alle zusammen,

da ich neu mit dem Xmega angefangen habe wollte ich auch gleich eine 
neue UART Library die ein paar dinge korrigiert die mich genervt haben.

Das mein Ringpuffer nur zweier Potenzen unterstützte.
Das mann die Port Adressen immer Abändern musste wenn mann einen anderen 
UART benutzte.

Kritik und Anregungen sind erwünscht aber auch Lob :)
Ist noch eine Vorabversion soll später auch auf github veröffentlicht 
werden

MFG
Matthias

von Au Weia (Gast)


Lesenswert?

Matthias T. schrieb:
> Kritik und Anregungen sind erwünscht aber auch Lob :)

Variablen tut man nicht in Header-Dateien definieren tun.
Nein das tut man nicht!

Vernünftiger Zeilenumbruch in mässiger Zeilenlänge für die
Leute die keine zwei Bildschirme haben wäre sinnvoll bzw
wünschenswert. Es gibt Leute die haben mehr als nur das
Editor-Fenster gleichzeitig im Blick.

Stell dir auch vor du würdest Zeitung lesen (müssen) und
ein Artikel würde mit seinen Zeilen über die ganze Seiten-
breite gehen ....


Matthias T. schrieb:
> Das mein Ringpuffer

Matthias T. schrieb:
> Das mann die Port Adressen

--> zweimal "dass" statt "das".

Sonst wäre "mein" und "mann" ein Substantiv, und "mann" müsste
"der Mann" sein.

von M. K. (sylaina)


Lesenswert?

Au Weia schrieb:
> Variablen tut man nicht in Header-Dateien definieren tun.
> Nein das tut man nicht!

Und wie machst du in C auch anderen Klassen Variablen bekannt wenn nicht 
über den Header?

Au Weia schrieb:
> Vernünftiger Zeilenumbruch in mässiger Zeilenlänge für die
> Leute die keine zwei Bildschirme haben wäre sinnvoll bzw
> wünschenswert. Es gibt Leute die haben mehr als nur das
> Editor-Fenster gleichzeitig im Blick.

Willkommen im Jetzt. Inzwischen sind ja so 16/9 Bildschirme üblich, 4/3 
ist so 2000 ... ;)

von Sven K. (quotschmacher)


Lesenswert?

M. K. schrieb:
> Inzwischen sind ja so 16/9 Bildschirme üblich, 4/3
> ist so 2000 ... ;)

auch auf meinem 16:9 bildschirm bekomme ich keine 189 in der ide 
dargestellt, wenn da noch zusätzlich projektstruktur und weitere fenster 
zu sehen sind.

von Dr. Sommer (Gast)


Lesenswert?

M. K. schrieb:
> Und wie machst du in C auch anderen Klassen Variablen bekannt wenn nicht
> über den Header?

Variablen wenn schon mit "extern". Sonst gibt's Linker Errors. Ist aber 
ziemlich unsauber, weil so externer Code direkt auf die internen Daten 
der Library zugreifen kann, und die Library beim Zugriff keine 
Überprüfungen o.ä. machen kann.

Das "extern" an Funktionsdeklarationen ist hingegen komplett 
überflüssig. Es heißt "receive" und nicht "recive". Warum haben manche 
Variablen einen Unterstrich am Ende und andere nicht?

von A. (Gast)


Lesenswert?

M. K. schrieb:
> Und wie machst du in C auch anderen Klassen Variablen bekannt wenn nicht
> über den Header?

C kennt keine Klassen!

von M. K. (sylaina)


Lesenswert?

Sven A. schrieb:
> auch auf meinem 16:9 bildschirm bekomme ich keine 189 in der ide
> dargestellt, wenn da noch zusätzlich projektstruktur und weitere fenster
> zu sehen sind.

Hm, automatischer Zeilenumbruch sollte heute eigentlich jede IDE 
beherrschen...aber ja, man könnte es etwas schöner strukturieren.

Dr. Sommer schrieb:
> Variablen wenn schon mit "extern".

In den Code selbst hatte ich nicht reingeschaut.

A. schrieb:
> C kennt keine Klassen!

Stimmt, das war ne blöde Wortwahl von mir.

von Timmo H. (masterfx)


Lesenswert?

Au Weia schrieb:
> Matthias T. schrieb:
>> Das mein Ringpuffer
>
> Matthias T. schrieb:
>> Das mann die Port Adressen
>
> --> zweimal "dass" statt "das".
>
> Sonst wäre "mein" und "mann" ein Substantiv, und "mann" müsste
> "der Mann" sein.

Für jemanden der sich traut so einen Satz zu schreiben:

Au Weia schrieb:
> Variablen tut man nicht in Header-Dateien definieren tun.

machst du den Mund aber ganz schön weit auf ;-)

von Dr. Sommer (Gast)


Lesenswert?

PS: Include-Guards in C(++) Source Files sind überflüssig:
1
#ifndef UART_C_
2
#define UART_C_

Beitrag #5511541 wurde von einem Moderator gelöscht.
von Matthias T. (matthias_199)


Lesenswert?

Danke für die hilfreichen Tipps, sie sind schon umgesetzt worden :)

EDIT: Vlt programmiere ich eine SPI lib nach dem gleichen Schema

MFG
Matthias

Beitrag #5512526 wurde von einem Moderator gelöscht.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.